diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
new file mode 100644
index 0000000..61df5c0
--- /dev/null
+++ b/.github/CONTRIBUTING.md
@@ -0,0 +1,33 @@
+## Issues and Contributing to vm-console-client-ruby
+
+Please note the majority of this repository's contents are auto generated based on the latest Rapid7 InsightVM/Nexpose
+Console Swagger file. No product related bugs or enhancements to InsightVM/Nexpose will be addressed here. Any issues
+related to the swagger file contents or product related bugs will need to be addressed with Rapid7 Support in order
+for the product changes to be made.
+
+If your bug/enhancement is related to this repository or any build/helper files, please reference the information below.
+Any contributions will routinely result in a new version of the rapid7_vm_console Ruby gem and
+[release](https://github.com/rapid7/vm-console-client-ruby/releases).
+
+#### Contributing to vm-console-client-ruby
+
+The users and maintainers of vm-console-client-ruby would greatly appreciate any contributions you can make to the project.
+These contributions typically come in the form of filed bugs/issues or pull requests (PRs). Once approved and merged,
+contributions will be included with tagged releases and the associated Ruby gem.
+
+#### Contributing Issues / Bug Reports
+
+If you encounter any bugs or problems, please file them
+[here](https://github.com/rapid7/vm-console-client-ruby/issues/new), providing as much detail as possible. If the bug is
+simple and you feel comfortable making the fix, feel free making a Pull Request to help contribute to the community.
+
+#### Contributing Enhancements
+
+When contributing enhancements to the repository, please ensure the PR template is filled out fully with details of how
+the changes were tested, the reasoning for the changes, and environment details. While we encourage community
+contributions, not all PRs will be merged as they may not fit the holistic purpose of this project. If you intend to
+ extend the functionality for your own purposes, feel free to fork the repository and work with it as you please.
+
+When contributing, please leverage your own fork of the repo, create a
+[pull request](https://github.com/rapid7/vm-console-client-ruby/pulls) with the change, and then a
+maintainer will review the changes prior to merging and building a new image.
\ No newline at end of file
diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md
new file mode 100644
index 0000000..b167e77
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE.md
@@ -0,0 +1,37 @@
+## Issues and Contributing
+
+
+
+
+### Expected Behavior
+
+
+
+### Actual Behavior
+
+
+
+### Possible Solution
+
+
+
+### Steps to Reproduce (for bugs)
+
+
+
+Ruby code that reproduces the issue:
+```ruby
+puts "this is only an example Ruby code block"
+```
+
+### Your Environment
+* Gem version or repository branch:
+* Ruby version:
+* Operating System and version:
+* Nexpose product version:
+
+### Other relevant information
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..e138326
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,31 @@
+
+
+### Description
+
+
+
+### Motivation and Context
+
+
+
+
+### How Has This Been Tested?
+
+
+
+### Types of changes
+
+- Bug fix (non-breaking change which fixes an issue)
+- New feature (non-breaking change which adds functionality)
+- Breaking change (fix or feature that would cause existing functionality to change)
+
+
+### Checklist:
+
+
+- [ ] I have updated the documentation accordingly (if changes are required).
+- [ ] I have tested the changes locally.
+
+
+### Miscellaneous Details:
+
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..dc37d11
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,44 @@
+# Generated by: https://github.com/swagger-api/swagger-codegen.git
+#
+
+*.gem
+*.rbc
+/.config
+/coverage/
+/InstalledFiles
+/pkg/
+/spec/reports/
+/spec/examples.txt
+/test/tmp/
+/test/version_tmp/
+/tmp/
+
+## Specific to RubyMotion:
+.dat*
+.repl_history
+build/
+
+## Documentation cache and generated files:
+/.yardoc/
+/_yardoc/
+/doc/
+/rdoc/
+
+## Environment normalization:
+/.bundle/
+/vendor/bundle
+/lib/bundler/man/
+
+# for a library or gem, you might want to ignore these files since the code is
+# intended to run in multiple environments; otherwise, check them in:
+# Gemfile.lock
+# .ruby-version
+# .ruby-gemset
+
+# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
+.rvmrc
+
+# Added manually
+setup_workspace/swagger-codegen-cli-2.3.0.jar
+.idea
+Gemfile.lock
diff --git a/.rspec b/.rspec
new file mode 100644
index 0000000..83e16f8
--- /dev/null
+++ b/.rspec
@@ -0,0 +1,2 @@
+--color
+--require spec_helper
diff --git a/.swagger-codegen-ignore b/.swagger-codegen-ignore
new file mode 100644
index 0000000..bfe7263
--- /dev/null
+++ b/.swagger-codegen-ignore
@@ -0,0 +1,9 @@
+# Swagger Codegen Ignore
+# Generated by swagger-codegen https://github.com/swagger-api/swagger-codegen
+
+# Use this file to prevent files from being overwritten by the generator.
+# The patterns follow closely to .gitignore or .dockerignore.
+
+README.md
+.gitignore
+LICENSE
\ No newline at end of file
diff --git a/.swagger-codegen/VERSION b/.swagger-codegen/VERSION
new file mode 100644
index 0000000..cc6612c
--- /dev/null
+++ b/.swagger-codegen/VERSION
@@ -0,0 +1 @@
+2.3.0
\ No newline at end of file
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000..d255a3a
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,7 @@
+source 'https://rubygems.org'
+
+gemspec
+
+group :development, :test do
+ gem 'rake', '~> 12.0.0'
+end
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..db62fa8
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2018 Rapid7, Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..e876854
--- /dev/null
+++ b/README.md
@@ -0,0 +1,827 @@
+# rapid7_vm_console
+
+Rapid7VmConsole - the __UNOFFICIAL__ (but useful) Ruby gem for the Rapid7 InsightVM/Nexpose RESTful API
+
+DISCLAIMER: the resulting Ruby gem and the files found in this repository are meant for community use and are leveraged
+by internal Rapid7 team(s). They are NOT officially supported artifacts and are not supported by Rapid7 Support. Best
+effort is used to keep this repository and resulting Ruby gem up to date and resolve reported issues/bugs.
+
+If any issues are experienced, any user can leverage the Swagger file at `https://localhost:3780/api/html/json` of their
+Console to create their own library or interact with the API as needed. By auto-generating this repository and
+artifacts, users can begin interacting with the Rapid7 InsightVM/Nexpose API with Ruby by simply requiring the
+`rapid7_vm_console` gem.
+
+Once pushed to rubygems.org, the gem can be installed with: `gem install rapid7_vm_console`
+
+# Auto-generated README Below
+## Overview
+This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS.
+## Versioning
+Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`.
+### Specification
+An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
+### Authentication
+Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`.
+#### 2FA
+This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API.
+### Resources
+#### Naming
+Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` |
+##### Collections
+A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ```
+##### Instances
+An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` |
+#### Common Operations
+##### OPTIONS
+All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status.
+#### Collection Resources
+Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations.
+##### GET
+The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information.
+##### POST
+The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued.
+##### PUT
+The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed.
+##### DELETE
+The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed.
+#### Instance Resources
+Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations.
+##### GET
+Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type.
+##### PUT
+Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource.
+##### POST
+Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint.
+##### PATCH
+The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed.
+##### DELETE
+Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`.
+### Requests
+Unless otherwise indicated, the default request body media type is `application/json`.
+#### Headers
+Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) |
+#### Dates & Times
+Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | |
+#### Timezones
+Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`.
+#### Paging
+Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500.
+#### Sorting
+Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order.
+### Responses
+The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. |
+#### Security
+The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` |
+#### Headers
+Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. |
+#### Format
+When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses.
+##### Dates & Times
+Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z |
+##### Content
+In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document.
+##### Paging
+The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection.
+##### Property Views
+The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ```
+##### Error
+Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\": , \"links\" : [ { \"rel\" : \"...\", \"href\" : \"...\" } ] } ``` The `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message property is a localized message in the request client's locale (if applicable) that articulates the nature of the error. The last property is the `links` property. This may contain additional [hypermedia links](#section/Overview/Authentication) to troubleshoot.
+##### Search Criteria
+ Multiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The operator is a type and property-specific operating performed on the filtered property. The valid values for fields and operators are outlined in the table below. Every filter also defines one or more values that are supplied to the operator. The valid values vary by operator and are outlined below.
+###### Fields
+The following table outlines the search criteria fields and the available operators: | Field | Operators | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | `alternate-address-type` | `in` | | `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` | | `container-status` | `is` ` is not` | | `containers` | `are` | | `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` | | `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `cve` | `is` ` is not` ` contains` ` does not contain` | | `cvss-access-complexity` | `is` ` is not` | | `cvss-authentication-required` | `is` ` is not` | | `cvss-access-vector` | `is` ` is not` | | `cvss-availability-impact` | `is` ` is not` | | `cvss-confidentiality-impact` | `is` ` is not` | | `cvss-integrity-impact` | `is` ` is not` | | `cvss-v3-confidentiality-impact` | `is` ` is not` | | `cvss-v3-integrity-impact` | `is` ` is not` | | `cvss-v3-availability-impact` | `is` ` is not` | | `cvss-v3-attack-vector` | `is` ` is not` | | `cvss-v3-attack-complexity` | `is` ` is not` | | `cvss-v3-user-interaction` | `is` ` is not` | | `cvss-v3-privileges-required` | `is` ` is not` | | `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` | | `host-type` | `in` ` not in` | | `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` | | `ip-address-type` | `in` ` not in` | | `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` | | `open-ports` | `is` ` is not` ` in range` | | `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` | | `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `pci-compliance` | `is` | | `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` | | `service-name` | `contains` ` does not contain` | | `site-id` | `in` ` not in` | | `software` | `contains` ` does not contain` | | `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-datacenter` | `is` ` is not` | | `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-power-state` | `in` ` not in` | | `vAsset-resource-pool-path` | `contains` ` does not contain` | | `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` | | `vulnerability-cvss-v3-score` | `is` ` is not` | | `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` | | `vulnerability-exposures` | `includes` ` does not include` | | `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` | | `vulnerability-validated-status` | `are` |
+###### Enumerated Properties
+The following fields have enumerated values: | Field | Acceptable Values | | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `alternate-address-type` | 0=IPv4, 1=IPv6 | | `containers` | 0=present, 1=not present | | `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` | | `cvss-access-complexity` | L
= LowM
= MediumH
= High
| | `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
| | `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
| | `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-availability-impact` | | | `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
| | `cvss-v3-attack-complexity` | | | `cvss-v3-user-interaction` | | | `cvss-v3-privileges-required` | | | `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | `ip-address-type` | 0=IPv4, 1=IPv6 | | `pci-compliance` | 0=fail, 1=pass | | `vulnerability-validated-status` | 0=present, 1=not present |
+###### Operator Properties
+ The following table outlines which properties are required for each operator and the appropriate data type(s): | Operator | `value` | `lower` | `upper` | | ----------------------|-----------------------|-----------------------|-----------------------| | `are` | `string` | | | | `contains` | `string` | | | | `does-not-contain` | `string` | | | | `ends with` | `string` | | | | `in` | `Array[ string ]` | | | | `in-range` | | `numeric` | `numeric` | | `includes` | `Array[ string ]` | | | | `is` | `string` | | | | `is-applied` | | | | | `is-between` | | `numeric` | `numeric` | | `is-earlier-than` | `numeric` | | | | `is-empty` | | | | | `is-greater-than` | `numeric` | | | | `is-on-or-after` | `string` (yyyy-MM-dd) | | | | `is-on-or-before` | `string` (yyyy-MM-dd) | | | | `is-not` | `string` | | | | `is-not-applied` | | | | | `is-not-empty` | | | | | `is-within-the-last` | `string` | | | | `less-than` | `string` | | | | `like` | `string` | | | | `not-contains` | `string` | | | | `not-in` | `Array[ string ]` | | | | `not-in-range` | | `numeric` | `numeric` | | `not-like` | `string` | | | | `starts-with` | `string` | | |
+##### Discovery Connection Search Criteria
+ Dynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The list of supported fields vary depending on the type of discovery connection configured for the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating performed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the type of connection. Every filter also defines one or more values that are supplied to the operator. See Search Criteria Operator Properties for more information on the valid values for each operator.
+###### Fields (ActiveSync)
+This section documents search criteria information for ActiveSync discovery connections. The discovery connections must be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. The following table outlines the search criteria fields and the available operators for ActiveSync connections: | Field | Operators | | --------------------------------- | ------------------------------------------------------------- | | `last-sync-time` | `is-within-the-last` ` is-earlier-than` | | `operating-system` | `contains` ` does-not-contain` | | `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |
+###### Fields (AWS)
+This section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. The following table outlines the search criteria fields and the available operators for AWS connections: | Field | Operators | | ----------------------- | ------------------------------------------------------------- | | `availability-zone` | `contains` ` does-not-contain` | | `guest-os-family` | `contains` ` does-not-contain` | | `instance-id` | `contains` ` does-not-contain` | | `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `instance-state` | `in` ` not-in` | | `instance-type` | `in` ` not-in` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `region` | `in` ` not-in` | | `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |
+###### Fields (DHCP)
+This section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. The following table outlines the search criteria fields and the available operators for DHCP connections: | Field | Operators | | --------------- | ------------------------------------------------------------- | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |
+###### Fields (Sonar)
+This section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. The following table outlines the search criteria fields and the available operators for Sonar connections: | Field | Operators | | ------------------- | -------------------- | | `search-domain` | `contains` ` is` | | `ip-address` | `in-range` ` is` | | `sonar-scan-date` | `is-within-the-last` |
+###### Fields (vSphere)
+This section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. The following table outlines the search criteria fields and the available operators for vSphere connections: | Field | Operators | | -------------------- | ------------------------------------------------------------------------------------------ | | `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `data-center` | `is` ` is-not` | | `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `guest-os-family` | `contains` ` does-not-contain` | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `power-state` | `in` ` not-in` | | `resource-pool-path` | `contains` ` does-not-contain` | | `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |
+###### Enumerated Properties
+(vSphere) The following fields have enumerated values: | Field | Acceptable Values | | ------------- | ------------------------------------ | | `power-state` | `poweredOn` `poweredOff` `suspended` |
+### HATEOAS
+This API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. Hyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to the corresponding resource. The format of the hypermedia link adheres to both the {json:api} v1 \"Link Object\" and JSON Hyper-Schema \"Link Description Object\" formats. For example: ```json \"links\": [{ \"rel\": \"\", \"href\": \"\" ... }] ``` Where appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc. See the [Root](#tag/Root) resources for the entry points into API discovery.
+
+This SDK is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:
+
+- API version: 3
+- Package version: 0.0.1-6.5.1
+- Build package: io.swagger.codegen.languages.RubyClientCodegen
+
+### Installation
+
+#### Build a gem
+
+To build the Ruby code into a gem:
+
+```shell
+gem build rapid7_vm_console.gemspec
+```
+
+Then either install the gem locally:
+
+```shell
+gem install ./rapid7_vm_console-0.0.1-6.5.1.gem
+```
+(for development, run `gem install --dev ./rapid7_vm_console-0.0.1-6.5.1.gem` to install the development dependencies)
+
+or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
+
+Finally add this to the Gemfile:
+
+ gem 'rapid7_vm_console', '~> 0.0.1-6.5.1'
+
+#### Install from Git
+
+If the Ruby gem is hosted at a git repository: https://github.com/rapid7/vm-console-client-ruby, then add the following in the Gemfile:
+
+ gem 'rapid7_vm_console', :git => 'https://github.com/rapid7/vm-console-client-ruby.git'
+
+#### Include the Ruby code directly
+
+Include the Ruby code directly using `-I` as follows:
+
+```shell
+ruby -Ilib script.rb
+```
+
+### Getting Started
+
+Please follow the [installation](#installation) procedure and then run the following code:
+```ruby
+# Load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AdministrationApi.new
+
+opts = {
+ license: File.new("/path/to/file.txt"), # File | The contents of a license (.lic) file.
+ key: "key_example" # String | A license activation key.
+}
+
+begin
+ #License
+ result = api_instance.activate_license(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AdministrationApi->activate_license: #{e}"
+end
+
+```
+
+### Documentation for API Endpoints
+
+All URIs are relative to *https://localhost:3780*
+
+Class | Method | HTTP request | Description
+------------ | ------------- | ------------- | -------------
+*Rapid7VmConsole::AdministrationApi* | [**activate_license**](docs/AdministrationApi.md#activate_license) | **POST** /api/3/administration/license | License
+*Rapid7VmConsole::AdministrationApi* | [**execute_command**](docs/AdministrationApi.md#execute_command) | **POST** /api/3/administration/commands | Console Commands
+*Rapid7VmConsole::AdministrationApi* | [**get_info**](docs/AdministrationApi.md#get_info) | **GET** /api/3/administration/info | Information
+*Rapid7VmConsole::AdministrationApi* | [**get_license**](docs/AdministrationApi.md#get_license) | **GET** /api/3/administration/license | License
+*Rapid7VmConsole::AdministrationApi* | [**get_properties**](docs/AdministrationApi.md#get_properties) | **GET** /api/3/administration/properties | Properties
+*Rapid7VmConsole::AdministrationApi* | [**get_settings**](docs/AdministrationApi.md#get_settings) | **GET** /api/3/administration/settings | Settings
+*Rapid7VmConsole::AssetApi* | [**add_asset_tag**](docs/AssetApi.md#add_asset_tag) | **PUT** /api/3/assets/{id}/tags/{tagId} | Asset Tag
+*Rapid7VmConsole::AssetApi* | [**create_asset**](docs/AssetApi.md#create_asset) | **POST** /api/3/sites/{id}/assets | Assets
+*Rapid7VmConsole::AssetApi* | [**delete_asset**](docs/AssetApi.md#delete_asset) | **DELETE** /api/3/assets/{id} | Asset
+*Rapid7VmConsole::AssetApi* | [**find_assets**](docs/AssetApi.md#find_assets) | **POST** /api/3/assets/search | Asset Search
+*Rapid7VmConsole::AssetApi* | [**get_asset**](docs/AssetApi.md#get_asset) | **GET** /api/3/assets/{id} | Asset
+*Rapid7VmConsole::AssetApi* | [**get_asset_databases**](docs/AssetApi.md#get_asset_databases) | **GET** /api/3/assets/{id}/databases | Asset Databases
+*Rapid7VmConsole::AssetApi* | [**get_asset_files**](docs/AssetApi.md#get_asset_files) | **GET** /api/3/assets/{id}/files | Asset Files
+*Rapid7VmConsole::AssetApi* | [**get_asset_service**](docs/AssetApi.md#get_asset_service) | **GET** /api/3/assets/{id}/services/{protocol}/{port} | Asset Service
+*Rapid7VmConsole::AssetApi* | [**get_asset_service_configurations**](docs/AssetApi.md#get_asset_service_configurations) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/configurations | Asset Service Configurations
+*Rapid7VmConsole::AssetApi* | [**get_asset_service_databases**](docs/AssetApi.md#get_asset_service_databases) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/databases | Asset Service Databases
+*Rapid7VmConsole::AssetApi* | [**get_asset_service_user_groups**](docs/AssetApi.md#get_asset_service_user_groups) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/user_groups | Asset Service User Groups
+*Rapid7VmConsole::AssetApi* | [**get_asset_service_users**](docs/AssetApi.md#get_asset_service_users) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/users | Asset Service Users
+*Rapid7VmConsole::AssetApi* | [**get_asset_service_web_application**](docs/AssetApi.md#get_asset_service_web_application) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/web_applications/{webApplicationId} | Asset Service Web Application
+*Rapid7VmConsole::AssetApi* | [**get_asset_service_web_applications**](docs/AssetApi.md#get_asset_service_web_applications) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/web_applications | Asset Service Web Applications
+*Rapid7VmConsole::AssetApi* | [**get_asset_services**](docs/AssetApi.md#get_asset_services) | **GET** /api/3/assets/{id}/services | Asset Services
+*Rapid7VmConsole::AssetApi* | [**get_asset_software**](docs/AssetApi.md#get_asset_software) | **GET** /api/3/assets/{id}/software | Asset Software
+*Rapid7VmConsole::AssetApi* | [**get_asset_tags**](docs/AssetApi.md#get_asset_tags) | **GET** /api/3/assets/{id}/tags | Asset Tags
+*Rapid7VmConsole::AssetApi* | [**get_asset_user_groups**](docs/AssetApi.md#get_asset_user_groups) | **GET** /api/3/assets/{id}/user_groups | Asset User Groups
+*Rapid7VmConsole::AssetApi* | [**get_asset_users**](docs/AssetApi.md#get_asset_users) | **GET** /api/3/assets/{id}/users | Asset Users
+*Rapid7VmConsole::AssetApi* | [**get_assets**](docs/AssetApi.md#get_assets) | **GET** /api/3/assets | Assets
+*Rapid7VmConsole::AssetApi* | [**get_operating_system**](docs/AssetApi.md#get_operating_system) | **GET** /api/3/operating_systems/{id} | Operating System
+*Rapid7VmConsole::AssetApi* | [**get_operating_systems**](docs/AssetApi.md#get_operating_systems) | **GET** /api/3/operating_systems | Operating Systems
+*Rapid7VmConsole::AssetApi* | [**get_software**](docs/AssetApi.md#get_software) | **GET** /api/3/software/{id} | Software
+*Rapid7VmConsole::AssetApi* | [**get_softwares**](docs/AssetApi.md#get_softwares) | **GET** /api/3/software | Software
+*Rapid7VmConsole::AssetApi* | [**remove_asset_tag**](docs/AssetApi.md#remove_asset_tag) | **DELETE** /api/3/assets/{id}/tags/{tagId} | Asset Tag
+*Rapid7VmConsole::AssetDiscoveryApi* | [**create_sonar_query**](docs/AssetDiscoveryApi.md#create_sonar_query) | **POST** /api/3/sonar_queries | Sonar Queries
+*Rapid7VmConsole::AssetDiscoveryApi* | [**delete_sonar_query**](docs/AssetDiscoveryApi.md#delete_sonar_query) | **DELETE** /api/3/sonar_queries/{id} | Sonar Query
+*Rapid7VmConsole::AssetDiscoveryApi* | [**get_discovery_connection**](docs/AssetDiscoveryApi.md#get_discovery_connection) | **GET** /api/3/discovery_connections/{id} | Discovery Connection
+*Rapid7VmConsole::AssetDiscoveryApi* | [**get_discovery_connections**](docs/AssetDiscoveryApi.md#get_discovery_connections) | **GET** /api/3/discovery_connections | Discovery Connections
+*Rapid7VmConsole::AssetDiscoveryApi* | [**get_sonar_queries**](docs/AssetDiscoveryApi.md#get_sonar_queries) | **GET** /api/3/sonar_queries | Sonar Queries
+*Rapid7VmConsole::AssetDiscoveryApi* | [**get_sonar_query**](docs/AssetDiscoveryApi.md#get_sonar_query) | **GET** /api/3/sonar_queries/{id} | Sonar Query
+*Rapid7VmConsole::AssetDiscoveryApi* | [**get_sonar_query_assets**](docs/AssetDiscoveryApi.md#get_sonar_query_assets) | **GET** /api/3/sonar_queries/{id}/assets | Sonar Query Assets
+*Rapid7VmConsole::AssetDiscoveryApi* | [**reconnect_discovery_connection**](docs/AssetDiscoveryApi.md#reconnect_discovery_connection) | **POST** /api/3/discovery_connections/{id}/connect | Discovery Connection Reconnect
+*Rapid7VmConsole::AssetDiscoveryApi* | [**sonar_query_search**](docs/AssetDiscoveryApi.md#sonar_query_search) | **POST** /api/3/sonar_queries/search | Sonar Query Search
+*Rapid7VmConsole::AssetDiscoveryApi* | [**update_sonar_query**](docs/AssetDiscoveryApi.md#update_sonar_query) | **PUT** /api/3/sonar_queries/{id} | Sonar Query
+*Rapid7VmConsole::AssetGroupApi* | [**add_asset_group_tag**](docs/AssetGroupApi.md#add_asset_group_tag) | **PUT** /api/3/asset_groups/{id}/tags/{tagId} | Asset Group Tag
+*Rapid7VmConsole::AssetGroupApi* | [**add_asset_group_user**](docs/AssetGroupApi.md#add_asset_group_user) | **PUT** /api/3/asset_groups/{id}/users/{userId} | Asset Group User
+*Rapid7VmConsole::AssetGroupApi* | [**add_asset_to_asset_group**](docs/AssetGroupApi.md#add_asset_to_asset_group) | **PUT** /api/3/asset_groups/{id}/assets/{assetId} | Asset Group Asset
+*Rapid7VmConsole::AssetGroupApi* | [**create_asset_group**](docs/AssetGroupApi.md#create_asset_group) | **POST** /api/3/asset_groups | Asset Groups
+*Rapid7VmConsole::AssetGroupApi* | [**delete_asset_group**](docs/AssetGroupApi.md#delete_asset_group) | **DELETE** /api/3/asset_groups/{id} | Asset Group
+*Rapid7VmConsole::AssetGroupApi* | [**get_asset_group**](docs/AssetGroupApi.md#get_asset_group) | **GET** /api/3/asset_groups/{id} | Asset Group
+*Rapid7VmConsole::AssetGroupApi* | [**get_asset_group_assets**](docs/AssetGroupApi.md#get_asset_group_assets) | **GET** /api/3/asset_groups/{id}/assets | Asset Group Assets
+*Rapid7VmConsole::AssetGroupApi* | [**get_asset_group_search_criteria**](docs/AssetGroupApi.md#get_asset_group_search_criteria) | **GET** /api/3/asset_groups/{id}/search_criteria | Asset Group Search Criteria
+*Rapid7VmConsole::AssetGroupApi* | [**get_asset_group_tags**](docs/AssetGroupApi.md#get_asset_group_tags) | **GET** /api/3/asset_groups/{id}/tags | Asset Group Tags
+*Rapid7VmConsole::AssetGroupApi* | [**get_asset_group_users**](docs/AssetGroupApi.md#get_asset_group_users) | **GET** /api/3/asset_groups/{id}/users | Asset Group Users
+*Rapid7VmConsole::AssetGroupApi* | [**get_asset_groups**](docs/AssetGroupApi.md#get_asset_groups) | **GET** /api/3/asset_groups | Asset Groups
+*Rapid7VmConsole::AssetGroupApi* | [**remove_all_asset_group_tags**](docs/AssetGroupApi.md#remove_all_asset_group_tags) | **DELETE** /api/3/asset_groups/{id}/tags | Asset Group Tags
+*Rapid7VmConsole::AssetGroupApi* | [**remove_all_assets_from_asset_group**](docs/AssetGroupApi.md#remove_all_assets_from_asset_group) | **DELETE** /api/3/asset_groups/{id}/assets | Asset Group Assets
+*Rapid7VmConsole::AssetGroupApi* | [**remove_asset_from_asset_group**](docs/AssetGroupApi.md#remove_asset_from_asset_group) | **DELETE** /api/3/asset_groups/{id}/assets/{assetId} | Asset Group Asset
+*Rapid7VmConsole::AssetGroupApi* | [**remove_asset_group_tag**](docs/AssetGroupApi.md#remove_asset_group_tag) | **DELETE** /api/3/asset_groups/{id}/tags/{tagId} | Asset Group Tag
+*Rapid7VmConsole::AssetGroupApi* | [**remove_asset_group_user**](docs/AssetGroupApi.md#remove_asset_group_user) | **DELETE** /api/3/asset_groups/{id}/users/{userId} | Asset Group User
+*Rapid7VmConsole::AssetGroupApi* | [**set_asset_group_search_criteria**](docs/AssetGroupApi.md#set_asset_group_search_criteria) | **PUT** /api/3/asset_groups/{id}/search_criteria | Asset Group Search Criteria
+*Rapid7VmConsole::AssetGroupApi* | [**set_asset_group_tags**](docs/AssetGroupApi.md#set_asset_group_tags) | **PUT** /api/3/asset_groups/{id}/tags | Asset Group Tags
+*Rapid7VmConsole::AssetGroupApi* | [**set_asset_group_users**](docs/AssetGroupApi.md#set_asset_group_users) | **PUT** /api/3/asset_groups/{id}/users | Asset Group Users
+*Rapid7VmConsole::AssetGroupApi* | [**update_asset_group**](docs/AssetGroupApi.md#update_asset_group) | **PUT** /api/3/asset_groups/{id} | Asset Group
+*Rapid7VmConsole::AssetGroupApi* | [**update_asset_group_assets**](docs/AssetGroupApi.md#update_asset_group_assets) | **PUT** /api/3/asset_groups/{id}/assets | Asset Group Assets
+*Rapid7VmConsole::CredentialApi* | [**create_shared_credential**](docs/CredentialApi.md#create_shared_credential) | **POST** /api/3/shared_credentials | Shared Credentials
+*Rapid7VmConsole::CredentialApi* | [**delete_all_shared_credentials**](docs/CredentialApi.md#delete_all_shared_credentials) | **DELETE** /api/3/shared_credentials | Shared Credentials
+*Rapid7VmConsole::CredentialApi* | [**delete_shared_credential**](docs/CredentialApi.md#delete_shared_credential) | **DELETE** /api/3/shared_credentials/{id} | Shared Credential
+*Rapid7VmConsole::CredentialApi* | [**get_shared_credential**](docs/CredentialApi.md#get_shared_credential) | **GET** /api/3/shared_credentials/{id} | Shared Credential
+*Rapid7VmConsole::CredentialApi* | [**get_shared_credentials**](docs/CredentialApi.md#get_shared_credentials) | **GET** /api/3/shared_credentials | Shared Credentials
+*Rapid7VmConsole::CredentialApi* | [**update_shared_credential**](docs/CredentialApi.md#update_shared_credential) | **PUT** /api/3/shared_credentials/{id} | Shared Credential
+*Rapid7VmConsole::PolicyApi* | [**get_asset_policy_children**](docs/PolicyApi.md#get_asset_policy_children) | **GET** /api/3/assets/{assetId}/policies/{policyId}/children | Policy Rules or Groups Directly Under Policy For Asset
+*Rapid7VmConsole::PolicyApi* | [**get_asset_policy_group_children**](docs/PolicyApi.md#get_asset_policy_group_children) | **GET** /api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/children | Policy Rules or Groups Directly Under Policy Group For Asset
+*Rapid7VmConsole::PolicyApi* | [**get_asset_policy_rules_summary**](docs/PolicyApi.md#get_asset_policy_rules_summary) | **GET** /api/3/assets/{assetId}/policies/{policyId}/rules | Policy Rules For Asset
+*Rapid7VmConsole::PolicyApi* | [**get_descendant_policy_rules**](docs/PolicyApi.md#get_descendant_policy_rules) | **GET** /api/3/policies/{policyId}/groups/{groupId}/rules | Policy Rules Under Policy Group
+*Rapid7VmConsole::PolicyApi* | [**get_disabled_policy_rules**](docs/PolicyApi.md#get_disabled_policy_rules) | **GET** /api/3/policies/{policyId}/rules/disabled | Disabled Policy Rules
+*Rapid7VmConsole::PolicyApi* | [**get_policies**](docs/PolicyApi.md#get_policies) | **GET** /api/3/policies | Policies
+*Rapid7VmConsole::PolicyApi* | [**get_policies_for_asset**](docs/PolicyApi.md#get_policies_for_asset) | **GET** /api/3/assets/{assetId}/policies | Policies For Asset
+*Rapid7VmConsole::PolicyApi* | [**get_policy**](docs/PolicyApi.md#get_policy) | **GET** /api/3/policies/{policyId} | Policy
+*Rapid7VmConsole::PolicyApi* | [**get_policy_asset_result**](docs/PolicyApi.md#get_policy_asset_result) | **GET** /api/3/policies/{policyId}/assets/{assetId} | Policy Asset Result
+*Rapid7VmConsole::PolicyApi* | [**get_policy_asset_results**](docs/PolicyApi.md#get_policy_asset_results) | **GET** /api/3/policies/{policyId}/assets | Policy Asset Results
+*Rapid7VmConsole::PolicyApi* | [**get_policy_children**](docs/PolicyApi.md#get_policy_children) | **GET** /api/3/policies/{id}/children | Policy Rules or Groups Directly Under Policy
+*Rapid7VmConsole::PolicyApi* | [**get_policy_group**](docs/PolicyApi.md#get_policy_group) | **GET** /api/3/policies/{policyId}/groups/{groupId} | Policy Group
+*Rapid7VmConsole::PolicyApi* | [**get_policy_group_asset_result**](docs/PolicyApi.md#get_policy_group_asset_result) | **GET** /api/3/policies/{policyId}/groups/{groupId}/assets/{assetId} | Asset Compliance For Policy Rules Under Policy Group
+*Rapid7VmConsole::PolicyApi* | [**get_policy_group_asset_results**](docs/PolicyApi.md#get_policy_group_asset_results) | **GET** /api/3/policies/{policyId}/groups/{groupId}/assets | Assets Compliance For Policy Rules Under Policy Group
+*Rapid7VmConsole::PolicyApi* | [**get_policy_group_children**](docs/PolicyApi.md#get_policy_group_children) | **GET** /api/3/policies/{policyId}/groups/{groupId}/children | Policy Rules or Groups Directly Under Policy Group
+*Rapid7VmConsole::PolicyApi* | [**get_policy_group_rules_with_asset_assessment**](docs/PolicyApi.md#get_policy_group_rules_with_asset_assessment) | **GET** /api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/rules | Policy Rules Under Policy Group For Asset
+*Rapid7VmConsole::PolicyApi* | [**get_policy_groups**](docs/PolicyApi.md#get_policy_groups) | **GET** /api/3/policies/{policyId}/groups | Policy Groups
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rule**](docs/PolicyApi.md#get_policy_rule) | **GET** /api/3/policies/{policyId}/rules/{ruleId} | Policy Rule
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rule_asset_result**](docs/PolicyApi.md#get_policy_rule_asset_result) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId} | Asset Compliance For Policy Rule
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rule_asset_result_proof**](docs/PolicyApi.md#get_policy_rule_asset_result_proof) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId}/proof | Policy Rule Proof For Asset
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rule_asset_results**](docs/PolicyApi.md#get_policy_rule_asset_results) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/assets | Assets Compliance For Policy Rule
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rule_controls**](docs/PolicyApi.md#get_policy_rule_controls) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/controls | Policy Rule Controls
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rule_rationale**](docs/PolicyApi.md#get_policy_rule_rationale) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/rationale | Policy Rule Rationale
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rule_remediation**](docs/PolicyApi.md#get_policy_rule_remediation) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/remediation | Policy Rule Remediation
+*Rapid7VmConsole::PolicyApi* | [**get_policy_rules**](docs/PolicyApi.md#get_policy_rules) | **GET** /api/3/policies/{policyId}/rules | Policy Rules
+*Rapid7VmConsole::PolicyApi* | [**get_policy_summary**](docs/PolicyApi.md#get_policy_summary) | **GET** /api/3/policy/summary | Policy Compliance Summaries
+*Rapid7VmConsole::PolicyOverrideApi* | [**create_policy_override**](docs/PolicyOverrideApi.md#create_policy_override) | **POST** /api/3/policy_overrides | Policy Overrides
+*Rapid7VmConsole::PolicyOverrideApi* | [**delete_policy_override**](docs/PolicyOverrideApi.md#delete_policy_override) | **DELETE** /api/3/policy_overrides/{id} | Policy Override
+*Rapid7VmConsole::PolicyOverrideApi* | [**get_asset_policy_overrides**](docs/PolicyOverrideApi.md#get_asset_policy_overrides) | **GET** /api/3/assets/{id}/policy_overrides | Asset Policy Overrides
+*Rapid7VmConsole::PolicyOverrideApi* | [**get_policy_override**](docs/PolicyOverrideApi.md#get_policy_override) | **GET** /api/3/policy_overrides/{id} | Policy Override
+*Rapid7VmConsole::PolicyOverrideApi* | [**get_policy_override_expiration**](docs/PolicyOverrideApi.md#get_policy_override_expiration) | **GET** /api/3/policy_overrides/{id}/expires | Policy Override Expiration
+*Rapid7VmConsole::PolicyOverrideApi* | [**get_policy_overrides**](docs/PolicyOverrideApi.md#get_policy_overrides) | **GET** /api/3/policy_overrides | Policy Overrides
+*Rapid7VmConsole::PolicyOverrideApi* | [**set_policy_override_expiration**](docs/PolicyOverrideApi.md#set_policy_override_expiration) | **PUT** /api/3/policy_overrides/{id}/expires | Policy Override Expiration
+*Rapid7VmConsole::PolicyOverrideApi* | [**set_policy_override_status**](docs/PolicyOverrideApi.md#set_policy_override_status) | **POST** /api/3/policy_overrides/{id}/{status} | Policy Override Status
+*Rapid7VmConsole::RemediationApi* | [**get_asset_vulnerability_solutions**](docs/RemediationApi.md#get_asset_vulnerability_solutions) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/solution | Asset Vulnerability Solution
+*Rapid7VmConsole::ReportApi* | [**create_report**](docs/ReportApi.md#create_report) | **POST** /api/3/reports | Reports
+*Rapid7VmConsole::ReportApi* | [**delete_report**](docs/ReportApi.md#delete_report) | **DELETE** /api/3/reports/{id} | Report
+*Rapid7VmConsole::ReportApi* | [**delete_report_instance**](docs/ReportApi.md#delete_report_instance) | **DELETE** /api/3/reports/{id}/history/{instance} | Report History
+*Rapid7VmConsole::ReportApi* | [**download_report**](docs/ReportApi.md#download_report) | **GET** /api/3/reports/{id}/history/{instance}/output | Report Download
+*Rapid7VmConsole::ReportApi* | [**generate_report**](docs/ReportApi.md#generate_report) | **POST** /api/3/reports/{id}/generate | Report Generation
+*Rapid7VmConsole::ReportApi* | [**get_report**](docs/ReportApi.md#get_report) | **GET** /api/3/reports/{id} | Report
+*Rapid7VmConsole::ReportApi* | [**get_report_formats**](docs/ReportApi.md#get_report_formats) | **GET** /api/3/report_formats | Report Formats
+*Rapid7VmConsole::ReportApi* | [**get_report_instance**](docs/ReportApi.md#get_report_instance) | **GET** /api/3/reports/{id}/history/{instance} | Report History
+*Rapid7VmConsole::ReportApi* | [**get_report_instances**](docs/ReportApi.md#get_report_instances) | **GET** /api/3/reports/{id}/history | Report Histories
+*Rapid7VmConsole::ReportApi* | [**get_report_template**](docs/ReportApi.md#get_report_template) | **GET** /api/3/report_templates/{id} | Report Template
+*Rapid7VmConsole::ReportApi* | [**get_report_templates**](docs/ReportApi.md#get_report_templates) | **GET** /api/3/report_templates | Report Templates
+*Rapid7VmConsole::ReportApi* | [**get_reports**](docs/ReportApi.md#get_reports) | **GET** /api/3/reports | Reports
+*Rapid7VmConsole::ReportApi* | [**update_report**](docs/ReportApi.md#update_report) | **PUT** /api/3/reports/{id} | Report
+*Rapid7VmConsole::RootApi* | [**resources**](docs/RootApi.md#resources) | **GET** /api/3 | Resources
+*Rapid7VmConsole::ScanApi* | [**get_scan**](docs/ScanApi.md#get_scan) | **GET** /api/3/scans/{id} | Scan
+*Rapid7VmConsole::ScanApi* | [**get_scans**](docs/ScanApi.md#get_scans) | **GET** /api/3/scans | Scans
+*Rapid7VmConsole::ScanApi* | [**get_site_scans**](docs/ScanApi.md#get_site_scans) | **GET** /api/3/sites/{id}/scans | Site Scans
+*Rapid7VmConsole::ScanApi* | [**set_scan_status**](docs/ScanApi.md#set_scan_status) | **POST** /api/3/scans/{id}/{status} | Scan Status
+*Rapid7VmConsole::ScanApi* | [**start_scan**](docs/ScanApi.md#start_scan) | **POST** /api/3/sites/{id}/scans | Site Scans
+*Rapid7VmConsole::ScanEngineApi* | [**add_scan_engine_pool_scan_engine**](docs/ScanEngineApi.md#add_scan_engine_pool_scan_engine) | **PUT** /api/3/scan_engine_pools/{id}/engines/{engineId} | Engine Pool Engines
+*Rapid7VmConsole::ScanEngineApi* | [**create_scan_engine**](docs/ScanEngineApi.md#create_scan_engine) | **POST** /api/3/scan_engines | Scan Engines
+*Rapid7VmConsole::ScanEngineApi* | [**create_scan_engine_pool**](docs/ScanEngineApi.md#create_scan_engine_pool) | **POST** /api/3/scan_engine_pools | Engine Pools
+*Rapid7VmConsole::ScanEngineApi* | [**delete_scan_engine**](docs/ScanEngineApi.md#delete_scan_engine) | **DELETE** /api/3/scan_engines/{id} | Scan Engine
+*Rapid7VmConsole::ScanEngineApi* | [**get_assigned_engine_pools**](docs/ScanEngineApi.md#get_assigned_engine_pools) | **GET** /api/3/scan_engines/{id}/scan_engine_pools | Assigned Engine Pools
+*Rapid7VmConsole::ScanEngineApi* | [**get_engine_pool**](docs/ScanEngineApi.md#get_engine_pool) | **GET** /api/3/scan_engine_pools/{id} | Engine Pool
+*Rapid7VmConsole::ScanEngineApi* | [**get_scan_engine**](docs/ScanEngineApi.md#get_scan_engine) | **GET** /api/3/scan_engines/{id} | Scan Engine
+*Rapid7VmConsole::ScanEngineApi* | [**get_scan_engine_pool_scan_engines**](docs/ScanEngineApi.md#get_scan_engine_pool_scan_engines) | **GET** /api/3/scan_engine_pools/{id}/engines | Engine Pool Engines
+*Rapid7VmConsole::ScanEngineApi* | [**get_scan_engine_pool_sites**](docs/ScanEngineApi.md#get_scan_engine_pool_sites) | **GET** /api/3/scan_engine_pools/{id}/sites | Engine Pool Sites
+*Rapid7VmConsole::ScanEngineApi* | [**get_scan_engine_pools**](docs/ScanEngineApi.md#get_scan_engine_pools) | **GET** /api/3/scan_engine_pools | Engine Pools
+*Rapid7VmConsole::ScanEngineApi* | [**get_scan_engine_scans**](docs/ScanEngineApi.md#get_scan_engine_scans) | **GET** /api/3/scan_engines/{id}/scans | Scan Engine Scans
+*Rapid7VmConsole::ScanEngineApi* | [**get_scan_engine_sites**](docs/ScanEngineApi.md#get_scan_engine_sites) | **GET** /api/3/scan_engines/{id}/sites | Scan Engine Sites
+*Rapid7VmConsole::ScanEngineApi* | [**get_scan_engines**](docs/ScanEngineApi.md#get_scan_engines) | **GET** /api/3/scan_engines | Scan Engines
+*Rapid7VmConsole::ScanEngineApi* | [**remove_scan_engine_pool**](docs/ScanEngineApi.md#remove_scan_engine_pool) | **DELETE** /api/3/scan_engine_pools/{id} | Engine Pool
+*Rapid7VmConsole::ScanEngineApi* | [**remove_scan_engine_pool_scan_engine**](docs/ScanEngineApi.md#remove_scan_engine_pool_scan_engine) | **DELETE** /api/3/scan_engine_pools/{id}/engines/{engineId} | Engine Pool Engines
+*Rapid7VmConsole::ScanEngineApi* | [**set_scan_engine_pool_scan_engines**](docs/ScanEngineApi.md#set_scan_engine_pool_scan_engines) | **PUT** /api/3/scan_engine_pools/{id}/engines | Engine Pool Engines
+*Rapid7VmConsole::ScanEngineApi* | [**update_scan_engine**](docs/ScanEngineApi.md#update_scan_engine) | **PUT** /api/3/scan_engines/{id} | Scan Engine
+*Rapid7VmConsole::ScanEngineApi* | [**update_scan_engine_pool**](docs/ScanEngineApi.md#update_scan_engine_pool) | **PUT** /api/3/scan_engine_pools/{id} | Engine Pool
+*Rapid7VmConsole::ScanTemplateApi* | [**create_scan_template**](docs/ScanTemplateApi.md#create_scan_template) | **POST** /api/3/scan_templates | Scan Templates
+*Rapid7VmConsole::ScanTemplateApi* | [**delete_scan_template**](docs/ScanTemplateApi.md#delete_scan_template) | **DELETE** /api/3/scan_templates/{id} | Scan Template
+*Rapid7VmConsole::ScanTemplateApi* | [**get_scan_template**](docs/ScanTemplateApi.md#get_scan_template) | **GET** /api/3/scan_templates/{id} | Scan Template
+*Rapid7VmConsole::ScanTemplateApi* | [**get_scan_templates**](docs/ScanTemplateApi.md#get_scan_templates) | **GET** /api/3/scan_templates | Scan Templates
+*Rapid7VmConsole::ScanTemplateApi* | [**update_scan_template**](docs/ScanTemplateApi.md#update_scan_template) | **PUT** /api/3/scan_templates/{id} | Scan Template
+*Rapid7VmConsole::SiteApi* | [**add_site_tag**](docs/SiteApi.md#add_site_tag) | **PUT** /api/3/sites/{id}/tags/{tagId} | Site Tag
+*Rapid7VmConsole::SiteApi* | [**add_site_user**](docs/SiteApi.md#add_site_user) | **POST** /api/3/sites/{id}/users | Site Users Access
+*Rapid7VmConsole::SiteApi* | [**create_site**](docs/SiteApi.md#create_site) | **POST** /api/3/sites | Sites
+*Rapid7VmConsole::SiteApi* | [**create_site_credential**](docs/SiteApi.md#create_site_credential) | **POST** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+*Rapid7VmConsole::SiteApi* | [**create_site_scan_schedule**](docs/SiteApi.md#create_site_scan_schedule) | **POST** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+*Rapid7VmConsole::SiteApi* | [**create_site_smtp_alert**](docs/SiteApi.md#create_site_smtp_alert) | **POST** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+*Rapid7VmConsole::SiteApi* | [**create_site_snmp_alert**](docs/SiteApi.md#create_site_snmp_alert) | **POST** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+*Rapid7VmConsole::SiteApi* | [**create_site_syslog_alert**](docs/SiteApi.md#create_site_syslog_alert) | **POST** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+*Rapid7VmConsole::SiteApi* | [**delete_all_site_alerts**](docs/SiteApi.md#delete_all_site_alerts) | **DELETE** /api/3/sites/{id}/alerts | Site Alerts
+*Rapid7VmConsole::SiteApi* | [**delete_all_site_credentials**](docs/SiteApi.md#delete_all_site_credentials) | **DELETE** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+*Rapid7VmConsole::SiteApi* | [**delete_all_site_scan_schedules**](docs/SiteApi.md#delete_all_site_scan_schedules) | **DELETE** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+*Rapid7VmConsole::SiteApi* | [**delete_all_site_smtp_alerts**](docs/SiteApi.md#delete_all_site_smtp_alerts) | **DELETE** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+*Rapid7VmConsole::SiteApi* | [**delete_all_site_snmp_alerts**](docs/SiteApi.md#delete_all_site_snmp_alerts) | **DELETE** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+*Rapid7VmConsole::SiteApi* | [**delete_all_site_syslog_alerts**](docs/SiteApi.md#delete_all_site_syslog_alerts) | **DELETE** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+*Rapid7VmConsole::SiteApi* | [**delete_site**](docs/SiteApi.md#delete_site) | **DELETE** /api/3/sites/{id} | Site
+*Rapid7VmConsole::SiteApi* | [**delete_site_credential**](docs/SiteApi.md#delete_site_credential) | **DELETE** /api/3/sites/{id}/site_credentials/{credentialId} | Site Scan Credential
+*Rapid7VmConsole::SiteApi* | [**delete_site_scan_schedule**](docs/SiteApi.md#delete_site_scan_schedule) | **DELETE** /api/3/sites/{id}/scan_schedules/{scheduleId} | Site Scan Schedule
+*Rapid7VmConsole::SiteApi* | [**delete_site_smtp_alert**](docs/SiteApi.md#delete_site_smtp_alert) | **DELETE** /api/3/sites/{id}/alerts/smtp/{alertId} | Site SMTP Alert
+*Rapid7VmConsole::SiteApi* | [**delete_site_snmp_alert**](docs/SiteApi.md#delete_site_snmp_alert) | **DELETE** /api/3/sites/{id}/alerts/snmp/{alertId} | Site SNMP Alert
+*Rapid7VmConsole::SiteApi* | [**delete_site_syslog_alert**](docs/SiteApi.md#delete_site_syslog_alert) | **DELETE** /api/3/sites/{id}/alerts/syslog/{alertId} | Site Syslog Alert
+*Rapid7VmConsole::SiteApi* | [**enable_shared_credential_on_site**](docs/SiteApi.md#enable_shared_credential_on_site) | **PUT** /api/3/sites/{id}/shared_credentials/{credentialId}/enabled | Assigned Shared Credential Enablement
+*Rapid7VmConsole::SiteApi* | [**enable_site_credential**](docs/SiteApi.md#enable_site_credential) | **PUT** /api/3/sites/{id}/site_credentials/{credentialId}/enabled | Site Credential Enablement
+*Rapid7VmConsole::SiteApi* | [**get_excluded_asset_groups**](docs/SiteApi.md#get_excluded_asset_groups) | **GET** /api/3/sites/{id}/excluded_asset_groups | Site Excluded Asset Groups
+*Rapid7VmConsole::SiteApi* | [**get_excluded_targets**](docs/SiteApi.md#get_excluded_targets) | **GET** /api/3/sites/{id}/excluded_targets | Site Excluded Targets
+*Rapid7VmConsole::SiteApi* | [**get_included_asset_groups**](docs/SiteApi.md#get_included_asset_groups) | **GET** /api/3/sites/{id}/included_asset_groups | Site Included Asset Groups
+*Rapid7VmConsole::SiteApi* | [**get_included_targets**](docs/SiteApi.md#get_included_targets) | **GET** /api/3/sites/{id}/included_targets | Site Included Targets
+*Rapid7VmConsole::SiteApi* | [**get_site**](docs/SiteApi.md#get_site) | **GET** /api/3/sites/{id} | Site
+*Rapid7VmConsole::SiteApi* | [**get_site_alerts**](docs/SiteApi.md#get_site_alerts) | **GET** /api/3/sites/{id}/alerts | Site Alerts
+*Rapid7VmConsole::SiteApi* | [**get_site_assets**](docs/SiteApi.md#get_site_assets) | **GET** /api/3/sites/{id}/assets | Site Assets
+*Rapid7VmConsole::SiteApi* | [**get_site_credential**](docs/SiteApi.md#get_site_credential) | **GET** /api/3/sites/{id}/site_credentials/{credentialId} | Site Scan Credential
+*Rapid7VmConsole::SiteApi* | [**get_site_credentials**](docs/SiteApi.md#get_site_credentials) | **GET** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+*Rapid7VmConsole::SiteApi* | [**get_site_discovery_connection**](docs/SiteApi.md#get_site_discovery_connection) | **GET** /api/3/sites/{id}/discovery_connection | Site Discovery Connection
+*Rapid7VmConsole::SiteApi* | [**get_site_discovery_search_criteria**](docs/SiteApi.md#get_site_discovery_search_criteria) | **GET** /api/3/sites/{id}/discovery_search_criteria | Site Discovery Search Criteria
+*Rapid7VmConsole::SiteApi* | [**get_site_organization**](docs/SiteApi.md#get_site_organization) | **GET** /api/3/sites/{id}/organization | Site Organization Information
+*Rapid7VmConsole::SiteApi* | [**get_site_scan_engine**](docs/SiteApi.md#get_site_scan_engine) | **GET** /api/3/sites/{id}/scan_engine | Site Scan Engine
+*Rapid7VmConsole::SiteApi* | [**get_site_scan_schedule**](docs/SiteApi.md#get_site_scan_schedule) | **GET** /api/3/sites/{id}/scan_schedules/{scheduleId} | Site Scan Schedule
+*Rapid7VmConsole::SiteApi* | [**get_site_scan_schedules**](docs/SiteApi.md#get_site_scan_schedules) | **GET** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+*Rapid7VmConsole::SiteApi* | [**get_site_scan_template**](docs/SiteApi.md#get_site_scan_template) | **GET** /api/3/sites/{id}/scan_template | Site Scan Template
+*Rapid7VmConsole::SiteApi* | [**get_site_shared_credentials**](docs/SiteApi.md#get_site_shared_credentials) | **GET** /api/3/sites/{id}/shared_credentials | Assigned Shared Credentials
+*Rapid7VmConsole::SiteApi* | [**get_site_smtp_alert**](docs/SiteApi.md#get_site_smtp_alert) | **GET** /api/3/sites/{id}/alerts/smtp/{alertId} | Site SMTP Alert
+*Rapid7VmConsole::SiteApi* | [**get_site_smtp_alerts**](docs/SiteApi.md#get_site_smtp_alerts) | **GET** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+*Rapid7VmConsole::SiteApi* | [**get_site_snmp_alert**](docs/SiteApi.md#get_site_snmp_alert) | **GET** /api/3/sites/{id}/alerts/snmp/{alertId} | Site SNMP Alert
+*Rapid7VmConsole::SiteApi* | [**get_site_snmp_alerts**](docs/SiteApi.md#get_site_snmp_alerts) | **GET** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+*Rapid7VmConsole::SiteApi* | [**get_site_syslog_alert**](docs/SiteApi.md#get_site_syslog_alert) | **GET** /api/3/sites/{id}/alerts/syslog/{alertId} | Site Syslog Alert
+*Rapid7VmConsole::SiteApi* | [**get_site_syslog_alerts**](docs/SiteApi.md#get_site_syslog_alerts) | **GET** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+*Rapid7VmConsole::SiteApi* | [**get_site_tags**](docs/SiteApi.md#get_site_tags) | **GET** /api/3/sites/{id}/tags | Site Tags
+*Rapid7VmConsole::SiteApi* | [**get_site_users**](docs/SiteApi.md#get_site_users) | **GET** /api/3/sites/{id}/users | Site Users Access
+*Rapid7VmConsole::SiteApi* | [**get_sites**](docs/SiteApi.md#get_sites) | **GET** /api/3/sites | Sites
+*Rapid7VmConsole::SiteApi* | [**get_web_auth_html_forms**](docs/SiteApi.md#get_web_auth_html_forms) | **GET** /api/3/sites/{id}/web_authentication/html_forms | Web Authentication HTML Forms
+*Rapid7VmConsole::SiteApi* | [**get_web_auth_http_headers**](docs/SiteApi.md#get_web_auth_http_headers) | **GET** /api/3/sites/{id}/web_authentication/http_headers | Web Authentication HTTP Headers
+*Rapid7VmConsole::SiteApi* | [**remove_all_excluded_asset_groups**](docs/SiteApi.md#remove_all_excluded_asset_groups) | **DELETE** /api/3/sites/{id}/excluded_asset_groups | Site Excluded Asset Groups
+*Rapid7VmConsole::SiteApi* | [**remove_all_included_asset_groups**](docs/SiteApi.md#remove_all_included_asset_groups) | **DELETE** /api/3/sites/{id}/included_asset_groups | Site Included Asset Groups
+*Rapid7VmConsole::SiteApi* | [**remove_asset_from_site**](docs/SiteApi.md#remove_asset_from_site) | **DELETE** /api/3/sites/{id}/assets/{assetId} | Site Asset
+*Rapid7VmConsole::SiteApi* | [**remove_excluded_asset_group**](docs/SiteApi.md#remove_excluded_asset_group) | **DELETE** /api/3/sites/{id}/excluded_asset_groups/{assetGroupId} | Site Excluded Asset Group
+*Rapid7VmConsole::SiteApi* | [**remove_included_asset_group**](docs/SiteApi.md#remove_included_asset_group) | **DELETE** /api/3/sites/{id}/included_asset_groups/{assetGroupId} | Site Included Asset Group
+*Rapid7VmConsole::SiteApi* | [**remove_site_assets**](docs/SiteApi.md#remove_site_assets) | **DELETE** /api/3/sites/{id}/assets | Site Assets
+*Rapid7VmConsole::SiteApi* | [**remove_site_tag**](docs/SiteApi.md#remove_site_tag) | **DELETE** /api/3/sites/{id}/tags/{tagId} | Site Tag
+*Rapid7VmConsole::SiteApi* | [**remove_site_user**](docs/SiteApi.md#remove_site_user) | **DELETE** /api/3/sites/{id}/users/{userId} | Site User Access
+*Rapid7VmConsole::SiteApi* | [**set_site_credentials**](docs/SiteApi.md#set_site_credentials) | **PUT** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+*Rapid7VmConsole::SiteApi* | [**set_site_discovery_connection**](docs/SiteApi.md#set_site_discovery_connection) | **PUT** /api/3/sites/{id}/discovery_connection | Site Discovery Connection
+*Rapid7VmConsole::SiteApi* | [**set_site_discovery_search_criteria**](docs/SiteApi.md#set_site_discovery_search_criteria) | **PUT** /api/3/sites/{id}/discovery_search_criteria | Site Discovery Search Criteria
+*Rapid7VmConsole::SiteApi* | [**set_site_scan_engine**](docs/SiteApi.md#set_site_scan_engine) | **PUT** /api/3/sites/{id}/scan_engine | Site Scan Engine
+*Rapid7VmConsole::SiteApi* | [**set_site_scan_schedules**](docs/SiteApi.md#set_site_scan_schedules) | **PUT** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+*Rapid7VmConsole::SiteApi* | [**set_site_scan_template**](docs/SiteApi.md#set_site_scan_template) | **PUT** /api/3/sites/{id}/scan_template | Site Scan Template
+*Rapid7VmConsole::SiteApi* | [**set_site_smtp_alerts**](docs/SiteApi.md#set_site_smtp_alerts) | **PUT** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+*Rapid7VmConsole::SiteApi* | [**set_site_snmp_alerts**](docs/SiteApi.md#set_site_snmp_alerts) | **PUT** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+*Rapid7VmConsole::SiteApi* | [**set_site_syslog_alerts**](docs/SiteApi.md#set_site_syslog_alerts) | **PUT** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+*Rapid7VmConsole::SiteApi* | [**set_site_tags**](docs/SiteApi.md#set_site_tags) | **PUT** /api/3/sites/{id}/tags | Site Tags
+*Rapid7VmConsole::SiteApi* | [**set_site_users**](docs/SiteApi.md#set_site_users) | **PUT** /api/3/sites/{id}/users | Site Users Access
+*Rapid7VmConsole::SiteApi* | [**update_excluded_asset_groups**](docs/SiteApi.md#update_excluded_asset_groups) | **PUT** /api/3/sites/{id}/excluded_asset_groups | Site Excluded Asset Groups
+*Rapid7VmConsole::SiteApi* | [**update_excluded_targets**](docs/SiteApi.md#update_excluded_targets) | **PUT** /api/3/sites/{id}/excluded_targets | Site Excluded Targets
+*Rapid7VmConsole::SiteApi* | [**update_included_asset_groups**](docs/SiteApi.md#update_included_asset_groups) | **PUT** /api/3/sites/{id}/included_asset_groups | Site Included Asset Groups
+*Rapid7VmConsole::SiteApi* | [**update_included_targets**](docs/SiteApi.md#update_included_targets) | **PUT** /api/3/sites/{id}/included_targets | Site Included Targets
+*Rapid7VmConsole::SiteApi* | [**update_site**](docs/SiteApi.md#update_site) | **PUT** /api/3/sites/{id} | Site
+*Rapid7VmConsole::SiteApi* | [**update_site_credential**](docs/SiteApi.md#update_site_credential) | **PUT** /api/3/sites/{id}/site_credentials/{credentialId} | Site Scan Credential
+*Rapid7VmConsole::SiteApi* | [**update_site_organization**](docs/SiteApi.md#update_site_organization) | **PUT** /api/3/sites/{id}/organization | Site Organization Information
+*Rapid7VmConsole::SiteApi* | [**update_site_scan_schedule**](docs/SiteApi.md#update_site_scan_schedule) | **PUT** /api/3/sites/{id}/scan_schedules/{scheduleId} | Site Scan Schedule
+*Rapid7VmConsole::SiteApi* | [**update_site_smtp_alert**](docs/SiteApi.md#update_site_smtp_alert) | **PUT** /api/3/sites/{id}/alerts/smtp/{alertId} | Site SMTP Alert
+*Rapid7VmConsole::SiteApi* | [**update_site_snmp_alert**](docs/SiteApi.md#update_site_snmp_alert) | **PUT** /api/3/sites/{id}/alerts/snmp/{alertId} | Site SNMP Alert
+*Rapid7VmConsole::SiteApi* | [**update_site_syslog_alert**](docs/SiteApi.md#update_site_syslog_alert) | **PUT** /api/3/sites/{id}/alerts/syslog/{alertId} | Site Syslog Alert
+*Rapid7VmConsole::TagApi* | [**create_tag**](docs/TagApi.md#create_tag) | **POST** /api/3/tags | Tags
+*Rapid7VmConsole::TagApi* | [**delete_tag**](docs/TagApi.md#delete_tag) | **DELETE** /api/3/tags/{id} | Tag
+*Rapid7VmConsole::TagApi* | [**get_tag**](docs/TagApi.md#get_tag) | **GET** /api/3/tags/{id} | Tag
+*Rapid7VmConsole::TagApi* | [**get_tag_asset_groups**](docs/TagApi.md#get_tag_asset_groups) | **GET** /api/3/tags/{id}/asset_groups | Tag Asset Groups
+*Rapid7VmConsole::TagApi* | [**get_tag_search_criteria**](docs/TagApi.md#get_tag_search_criteria) | **GET** /api/3/tags/{id}/search_criteria | Tag Search Criteria
+*Rapid7VmConsole::TagApi* | [**get_tagged_assets**](docs/TagApi.md#get_tagged_assets) | **GET** /api/3/tags/{id}/assets | Tag Assets
+*Rapid7VmConsole::TagApi* | [**get_tagged_sites**](docs/TagApi.md#get_tagged_sites) | **GET** /api/3/tags/{id}/sites | Tag Sites
+*Rapid7VmConsole::TagApi* | [**get_tags**](docs/TagApi.md#get_tags) | **GET** /api/3/tags | Tags
+*Rapid7VmConsole::TagApi* | [**remove_tag_search_criteria**](docs/TagApi.md#remove_tag_search_criteria) | **DELETE** /api/3/tags/{id}/search_criteria | Tag Search Criteria
+*Rapid7VmConsole::TagApi* | [**remove_tagged_sites**](docs/TagApi.md#remove_tagged_sites) | **DELETE** /api/3/tags/{id}/sites | Tag Sites
+*Rapid7VmConsole::TagApi* | [**set_tagged_asset_groups**](docs/TagApi.md#set_tagged_asset_groups) | **PUT** /api/3/tags/{id}/asset_groups | Tag Asset Groups
+*Rapid7VmConsole::TagApi* | [**set_tagged_sites**](docs/TagApi.md#set_tagged_sites) | **PUT** /api/3/tags/{id}/sites | Tag Sites
+*Rapid7VmConsole::TagApi* | [**tag_asset**](docs/TagApi.md#tag_asset) | **PUT** /api/3/tags/{id}/assets/{assetId} | Tag Asset
+*Rapid7VmConsole::TagApi* | [**tag_asset_group**](docs/TagApi.md#tag_asset_group) | **PUT** /api/3/tags/{id}/asset_groups/{assetGroupId} | Tag Asset Group
+*Rapid7VmConsole::TagApi* | [**tag_site**](docs/TagApi.md#tag_site) | **PUT** /api/3/tags/{id}/sites/{siteId} | Tag Site
+*Rapid7VmConsole::TagApi* | [**untag_all_asset_groups**](docs/TagApi.md#untag_all_asset_groups) | **DELETE** /api/3/tags/{id}/asset_groups | Tag Asset Groups
+*Rapid7VmConsole::TagApi* | [**untag_asset**](docs/TagApi.md#untag_asset) | **DELETE** /api/3/tags/{id}/assets/{assetId} | Tag Asset
+*Rapid7VmConsole::TagApi* | [**untag_asset_group**](docs/TagApi.md#untag_asset_group) | **DELETE** /api/3/tags/{id}/asset_groups/{assetGroupId} | Tag Asset Group
+*Rapid7VmConsole::TagApi* | [**untag_site**](docs/TagApi.md#untag_site) | **DELETE** /api/3/tags/{id}/sites/{siteId} | Tag Site
+*Rapid7VmConsole::TagApi* | [**update_tag**](docs/TagApi.md#update_tag) | **PUT** /api/3/tags/{id} | Tag
+*Rapid7VmConsole::TagApi* | [**update_tag_search_criteria**](docs/TagApi.md#update_tag_search_criteria) | **PUT** /api/3/tags/{id}/search_criteria | Tag Search Criteria
+*Rapid7VmConsole::UserApi* | [**add_user_asset_group**](docs/UserApi.md#add_user_asset_group) | **PUT** /api/3/users/{id}/asset_groups/{assetGroupId} | Asset Group Access
+*Rapid7VmConsole::UserApi* | [**add_user_site**](docs/UserApi.md#add_user_site) | **PUT** /api/3/users/{id}/sites/{siteId} | Site Access
+*Rapid7VmConsole::UserApi* | [**create_user**](docs/UserApi.md#create_user) | **POST** /api/3/users | Users
+*Rapid7VmConsole::UserApi* | [**delete_role**](docs/UserApi.md#delete_role) | **DELETE** /api/3/roles/{id} | Role
+*Rapid7VmConsole::UserApi* | [**get_authentication_source**](docs/UserApi.md#get_authentication_source) | **GET** /api/3/authentication_sources/{id} | Authentication Source
+*Rapid7VmConsole::UserApi* | [**get_authentication_source_users**](docs/UserApi.md#get_authentication_source_users) | **GET** /api/3/authentication_sources/{id}/users | Authentication Source Users
+*Rapid7VmConsole::UserApi* | [**get_authentication_sources**](docs/UserApi.md#get_authentication_sources) | **GET** /api/3/authentication_sources | Authentication Sources
+*Rapid7VmConsole::UserApi* | [**get_privilege**](docs/UserApi.md#get_privilege) | **GET** /api/3/privileges/{id} | Privilege
+*Rapid7VmConsole::UserApi* | [**get_privileges**](docs/UserApi.md#get_privileges) | **GET** /api/3/privileges | Privileges
+*Rapid7VmConsole::UserApi* | [**get_role**](docs/UserApi.md#get_role) | **GET** /api/3/roles/{id} | Role
+*Rapid7VmConsole::UserApi* | [**get_role_users**](docs/UserApi.md#get_role_users) | **GET** /api/3/roles/{id}/users | Users With Role
+*Rapid7VmConsole::UserApi* | [**get_roles**](docs/UserApi.md#get_roles) | **GET** /api/3/roles | Roles
+*Rapid7VmConsole::UserApi* | [**get_two_factor_authentication_key**](docs/UserApi.md#get_two_factor_authentication_key) | **GET** /api/3/users/{id}/2FA | Two-Factor Authentication
+*Rapid7VmConsole::UserApi* | [**get_user**](docs/UserApi.md#get_user) | **GET** /api/3/users/{id} | User
+*Rapid7VmConsole::UserApi* | [**get_user_asset_groups**](docs/UserApi.md#get_user_asset_groups) | **GET** /api/3/users/{id}/asset_groups | Asset Groups Access
+*Rapid7VmConsole::UserApi* | [**get_user_privileges**](docs/UserApi.md#get_user_privileges) | **GET** /api/3/users/{id}/privileges | User Privileges
+*Rapid7VmConsole::UserApi* | [**get_user_sites**](docs/UserApi.md#get_user_sites) | **GET** /api/3/users/{id}/sites | Sites Access
+*Rapid7VmConsole::UserApi* | [**get_users**](docs/UserApi.md#get_users) | **GET** /api/3/users | Users
+*Rapid7VmConsole::UserApi* | [**get_users_with_privilege**](docs/UserApi.md#get_users_with_privilege) | **GET** /api/3/privileges/{id}/users | Users With Privilege
+*Rapid7VmConsole::UserApi* | [**regenerate_two_factor_authentication**](docs/UserApi.md#regenerate_two_factor_authentication) | **POST** /api/3/users/{id}/2FA | Two-Factor Authentication
+*Rapid7VmConsole::UserApi* | [**remove_all_user_asset_groups**](docs/UserApi.md#remove_all_user_asset_groups) | **DELETE** /api/3/users/{id}/asset_groups | Asset Groups Access
+*Rapid7VmConsole::UserApi* | [**remove_all_user_sites**](docs/UserApi.md#remove_all_user_sites) | **DELETE** /api/3/users/{id}/sites | Sites Access
+*Rapid7VmConsole::UserApi* | [**remove_user_asset_group**](docs/UserApi.md#remove_user_asset_group) | **DELETE** /api/3/users/{id}/asset_groups/{assetGroupId} | Asset Group Access
+*Rapid7VmConsole::UserApi* | [**remove_user_site**](docs/UserApi.md#remove_user_site) | **DELETE** /api/3/users/{id}/sites/{siteId} | Site Access
+*Rapid7VmConsole::UserApi* | [**reset_password**](docs/UserApi.md#reset_password) | **PUT** /api/3/users/{id}/password | Password Reset
+*Rapid7VmConsole::UserApi* | [**set_two_factor_authentication**](docs/UserApi.md#set_two_factor_authentication) | **PUT** /api/3/users/{id}/2FA | Two-Factor Authentication
+*Rapid7VmConsole::UserApi* | [**set_user_asset_groups**](docs/UserApi.md#set_user_asset_groups) | **PUT** /api/3/users/{id}/asset_groups | Asset Groups Access
+*Rapid7VmConsole::UserApi* | [**set_user_sites**](docs/UserApi.md#set_user_sites) | **PUT** /api/3/users/{id}/sites | Sites Access
+*Rapid7VmConsole::UserApi* | [**unlock_user**](docs/UserApi.md#unlock_user) | **DELETE** /api/3/users/{id}/lock | Unlock Account
+*Rapid7VmConsole::UserApi* | [**update_role**](docs/UserApi.md#update_role) | **PUT** /api/3/roles/{id} | Role
+*Rapid7VmConsole::UserApi* | [**update_user**](docs/UserApi.md#update_user) | **PUT** /api/3/users/{id} | User
+*Rapid7VmConsole::VulnerabilityApi* | [**get_affected_assets**](docs/VulnerabilityApi.md#get_affected_assets) | **GET** /api/3/vulnerabilities/{id}/assets | Vulnerability Affected Assets
+*Rapid7VmConsole::VulnerabilityApi* | [**get_exploit**](docs/VulnerabilityApi.md#get_exploit) | **GET** /api/3/exploits/{id} | Exploit
+*Rapid7VmConsole::VulnerabilityApi* | [**get_exploit_vulnerabilities**](docs/VulnerabilityApi.md#get_exploit_vulnerabilities) | **GET** /api/3/exploits/{id}/vulnerabilities | Exploitable Vulnerabilities
+*Rapid7VmConsole::VulnerabilityApi* | [**get_exploits**](docs/VulnerabilityApi.md#get_exploits) | **GET** /api/3/exploits | Exploits
+*Rapid7VmConsole::VulnerabilityApi* | [**get_malware_kit**](docs/VulnerabilityApi.md#get_malware_kit) | **GET** /api/3/malware_kits/{id} | Malware Kit
+*Rapid7VmConsole::VulnerabilityApi* | [**get_malware_kit_vulnerabilities**](docs/VulnerabilityApi.md#get_malware_kit_vulnerabilities) | **GET** /api/3/malware_kits/{id}/vulnerabilities | Malware Kit Vulnerabilities
+*Rapid7VmConsole::VulnerabilityApi* | [**get_malware_kits**](docs/VulnerabilityApi.md#get_malware_kits) | **GET** /api/3/malware_kits | Malware Kits
+*Rapid7VmConsole::VulnerabilityApi* | [**get_prerequisite_solutions**](docs/VulnerabilityApi.md#get_prerequisite_solutions) | **GET** /api/3/solutions/{id}/prerequisites | Solution Prerequisites
+*Rapid7VmConsole::VulnerabilityApi* | [**get_solution**](docs/VulnerabilityApi.md#get_solution) | **GET** /api/3/solutions/{id} | Solution
+*Rapid7VmConsole::VulnerabilityApi* | [**get_solutions**](docs/VulnerabilityApi.md#get_solutions) | **GET** /api/3/solutions | Solutions
+*Rapid7VmConsole::VulnerabilityApi* | [**get_superseded_solutions**](docs/VulnerabilityApi.md#get_superseded_solutions) | **GET** /api/3/solutions/{id}/supersedes | Superseded Solutions
+*Rapid7VmConsole::VulnerabilityApi* | [**get_superseding_solutions**](docs/VulnerabilityApi.md#get_superseding_solutions) | **GET** /api/3/solutions/{id}/superseding | Superseding Solutions
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerabilities**](docs/VulnerabilityApi.md#get_vulnerabilities) | **GET** /api/3/vulnerabilities | Vulnerabilities
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability**](docs/VulnerabilityApi.md#get_vulnerability) | **GET** /api/3/vulnerabilities/{id} | Vulnerability
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_categories**](docs/VulnerabilityApi.md#get_vulnerability_categories) | **GET** /api/3/vulnerability_categories | Categories
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_category**](docs/VulnerabilityApi.md#get_vulnerability_category) | **GET** /api/3/vulnerability_categories/{id} | Category
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_category_vulnerabilities**](docs/VulnerabilityApi.md#get_vulnerability_category_vulnerabilities) | **GET** /api/3/vulnerability_categories/{id}/vulnerabilities | Category Vulnerabilities
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_exploits**](docs/VulnerabilityApi.md#get_vulnerability_exploits) | **GET** /api/3/vulnerabilities/{id}/exploits | Vulnerability Exploits
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_malware_kits**](docs/VulnerabilityApi.md#get_vulnerability_malware_kits) | **GET** /api/3/vulnerabilities/{id}/malware_kits | Vulnerability Malware Kits
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_reference**](docs/VulnerabilityApi.md#get_vulnerability_reference) | **GET** /api/3/vulnerability_references/{id} | Reference
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_reference_vulnerabilities**](docs/VulnerabilityApi.md#get_vulnerability_reference_vulnerabilities) | **GET** /api/3/vulnerability_references/{id}/vulnerabilities | Reference Vulnerabilities
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_references**](docs/VulnerabilityApi.md#get_vulnerability_references) | **GET** /api/3/vulnerability_references | References
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_references1**](docs/VulnerabilityApi.md#get_vulnerability_references1) | **GET** /api/3/vulnerabilities/{id}/references | Vulnerability References
+*Rapid7VmConsole::VulnerabilityApi* | [**get_vulnerability_solutions**](docs/VulnerabilityApi.md#get_vulnerability_solutions) | **GET** /api/3/vulnerabilities/{id}/solutions | Vulnerability Solutions
+*Rapid7VmConsole::VulnerabilityCheckApi* | [**get_vulnerability_check_types**](docs/VulnerabilityCheckApi.md#get_vulnerability_check_types) | **GET** /api/3/vulnerability_checks_types | Check Types
+*Rapid7VmConsole::VulnerabilityCheckApi* | [**get_vulnerability_checks**](docs/VulnerabilityCheckApi.md#get_vulnerability_checks) | **GET** /api/3/vulnerability_checks | Checks
+*Rapid7VmConsole::VulnerabilityCheckApi* | [**get_vulnerability_checks_for_vulnerability**](docs/VulnerabilityCheckApi.md#get_vulnerability_checks_for_vulnerability) | **GET** /api/3/vulnerabilities/{id}/checks | Vulnerability Checks
+*Rapid7VmConsole::VulnerabilityCheckApi* | [**vulnerability_check**](docs/VulnerabilityCheckApi.md#vulnerability_check) | **GET** /api/3/vulnerability_checks/{id} | Check
+*Rapid7VmConsole::VulnerabilityExceptionApi* | [**create_vulnerability_exception**](docs/VulnerabilityExceptionApi.md#create_vulnerability_exception) | **POST** /api/3/vulnerability_exceptions | Exceptions
+*Rapid7VmConsole::VulnerabilityExceptionApi* | [**get_vulnerability_exception**](docs/VulnerabilityExceptionApi.md#get_vulnerability_exception) | **GET** /api/3/vulnerability_exceptions/{id} | Exception
+*Rapid7VmConsole::VulnerabilityExceptionApi* | [**get_vulnerability_exception_expiration**](docs/VulnerabilityExceptionApi.md#get_vulnerability_exception_expiration) | **GET** /api/3/vulnerability_exceptions/{id}/expires | Exception Expiration
+*Rapid7VmConsole::VulnerabilityExceptionApi* | [**get_vulnerability_exceptions**](docs/VulnerabilityExceptionApi.md#get_vulnerability_exceptions) | **GET** /api/3/vulnerability_exceptions | Exceptions
+*Rapid7VmConsole::VulnerabilityExceptionApi* | [**remove_vulnerability_exception**](docs/VulnerabilityExceptionApi.md#remove_vulnerability_exception) | **DELETE** /api/3/vulnerability_exceptions/{id} | Exception
+*Rapid7VmConsole::VulnerabilityExceptionApi* | [**update_vulnerability_exception_expiration**](docs/VulnerabilityExceptionApi.md#update_vulnerability_exception_expiration) | **PUT** /api/3/vulnerability_exceptions/{id}/expires | Exception Expiration
+*Rapid7VmConsole::VulnerabilityExceptionApi* | [**update_vulnerability_exception_status**](docs/VulnerabilityExceptionApi.md#update_vulnerability_exception_status) | **POST** /api/3/vulnerability_exceptions/{id}/{status} | Exception Status
+*Rapid7VmConsole::VulnerabilityResultApi* | [**create_vulnerability_validation**](docs/VulnerabilityResultApi.md#create_vulnerability_validation) | **POST** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations | Asset Vulnerability Validations
+*Rapid7VmConsole::VulnerabilityResultApi* | [**delete_vulnerability_validation**](docs/VulnerabilityResultApi.md#delete_vulnerability_validation) | **DELETE** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations/{validationId} | Asset Vulnerability Validation
+*Rapid7VmConsole::VulnerabilityResultApi* | [**get_asset_service_vulnerabilities**](docs/VulnerabilityResultApi.md#get_asset_service_vulnerabilities) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/vulnerabilities | Asset Service Vulnerabilities
+*Rapid7VmConsole::VulnerabilityResultApi* | [**get_asset_vulnerabilities**](docs/VulnerabilityResultApi.md#get_asset_vulnerabilities) | **GET** /api/3/assets/{id}/vulnerabilities | Asset Vulnerabilities
+*Rapid7VmConsole::VulnerabilityResultApi* | [**get_asset_vulnerability**](docs/VulnerabilityResultApi.md#get_asset_vulnerability) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId} | Asset Vulnerability
+*Rapid7VmConsole::VulnerabilityResultApi* | [**get_vulnerability_validation**](docs/VulnerabilityResultApi.md#get_vulnerability_validation) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations/{validationId} | Asset Vulnerability Validation
+*Rapid7VmConsole::VulnerabilityResultApi* | [**get_vulnerability_validations**](docs/VulnerabilityResultApi.md#get_vulnerability_validations) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations | Asset Vulnerability Validations
+
+
+### Documentation for Models
+
+ - [Rapid7VmConsole::Account](docs/Account.md)
+ - [Rapid7VmConsole::AdditionalInformation](docs/AdditionalInformation.md)
+ - [Rapid7VmConsole::Address](docs/Address.md)
+ - [Rapid7VmConsole::AdhocScan](docs/AdhocScan.md)
+ - [Rapid7VmConsole::AdvisoryLink](docs/AdvisoryLink.md)
+ - [Rapid7VmConsole::Alert](docs/Alert.md)
+ - [Rapid7VmConsole::AssessmentResult](docs/AssessmentResult.md)
+ - [Rapid7VmConsole::Asset](docs/Asset.md)
+ - [Rapid7VmConsole::AssetCreate](docs/AssetCreate.md)
+ - [Rapid7VmConsole::AssetCreatedOrUpdatedReference](docs/AssetCreatedOrUpdatedReference.md)
+ - [Rapid7VmConsole::AssetGroup](docs/AssetGroup.md)
+ - [Rapid7VmConsole::AssetHistory](docs/AssetHistory.md)
+ - [Rapid7VmConsole::AssetPolicy](docs/AssetPolicy.md)
+ - [Rapid7VmConsole::AssetPolicyAssessment](docs/AssetPolicyAssessment.md)
+ - [Rapid7VmConsole::AssetPolicyItem](docs/AssetPolicyItem.md)
+ - [Rapid7VmConsole::AssetTag](docs/AssetTag.md)
+ - [Rapid7VmConsole::AssetVulnerabilities](docs/AssetVulnerabilities.md)
+ - [Rapid7VmConsole::AuthenticationSettings](docs/AuthenticationSettings.md)
+ - [Rapid7VmConsole::AuthenticationSource](docs/AuthenticationSource.md)
+ - [Rapid7VmConsole::AvailableReportFormat](docs/AvailableReportFormat.md)
+ - [Rapid7VmConsole::BackupsSize](docs/BackupsSize.md)
+ - [Rapid7VmConsole::BadRequestError](docs/BadRequestError.md)
+ - [Rapid7VmConsole::CPUInfo](docs/CPUInfo.md)
+ - [Rapid7VmConsole::Configuration](docs/Configuration.md)
+ - [Rapid7VmConsole::ConsoleCommandOutput](docs/ConsoleCommandOutput.md)
+ - [Rapid7VmConsole::ContentDescription](docs/ContentDescription.md)
+ - [Rapid7VmConsole::CreateAuthenticationSource](docs/CreateAuthenticationSource.md)
+ - [Rapid7VmConsole::CreatedOrUpdatedReference](docs/CreatedOrUpdatedReference.md)
+ - [Rapid7VmConsole::CreatedReference](docs/CreatedReference.md)
+ - [Rapid7VmConsole::CreatedReferenceAssetGroupIDLink](docs/CreatedReferenceAssetGroupIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceCredentialIDLink](docs/CreatedReferenceCredentialIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceDiscoveryQueryIDLink](docs/CreatedReferenceDiscoveryQueryIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceEngineIDLink](docs/CreatedReferenceEngineIDLink.md)
+ - [Rapid7VmConsole::CreatedReferencePolicyOverrideIDLink](docs/CreatedReferencePolicyOverrideIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceScanIDLink](docs/CreatedReferenceScanIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceScanTemplateIDLink](docs/CreatedReferenceScanTemplateIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceUserIDLink](docs/CreatedReferenceUserIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceVulnerabilityExceptionIDLink](docs/CreatedReferenceVulnerabilityExceptionIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceVulnerabilityValidationIDLink](docs/CreatedReferenceVulnerabilityValidationIDLink.md)
+ - [Rapid7VmConsole::CreatedReferenceintLink](docs/CreatedReferenceintLink.md)
+ - [Rapid7VmConsole::Criterion](docs/Criterion.md)
+ - [Rapid7VmConsole::Database](docs/Database.md)
+ - [Rapid7VmConsole::DatabaseConnectionSettings](docs/DatabaseConnectionSettings.md)
+ - [Rapid7VmConsole::DatabaseSettings](docs/DatabaseSettings.md)
+ - [Rapid7VmConsole::DatabaseSize](docs/DatabaseSize.md)
+ - [Rapid7VmConsole::DiscoveryAsset](docs/DiscoveryAsset.md)
+ - [Rapid7VmConsole::DiscoveryConnection](docs/DiscoveryConnection.md)
+ - [Rapid7VmConsole::DiscoverySearchCriteria](docs/DiscoverySearchCriteria.md)
+ - [Rapid7VmConsole::DiskFree](docs/DiskFree.md)
+ - [Rapid7VmConsole::DiskInfo](docs/DiskInfo.md)
+ - [Rapid7VmConsole::DiskTotal](docs/DiskTotal.md)
+ - [Rapid7VmConsole::DynamicSite](docs/DynamicSite.md)
+ - [Rapid7VmConsole::EnginePool](docs/EnginePool.md)
+ - [Rapid7VmConsole::EnvironmentProperties](docs/EnvironmentProperties.md)
+ - [Rapid7VmConsole::Error](docs/Error.md)
+ - [Rapid7VmConsole::ExceptionScope](docs/ExceptionScope.md)
+ - [Rapid7VmConsole::ExcludedAssetGroups](docs/ExcludedAssetGroups.md)
+ - [Rapid7VmConsole::ExcludedScanTargets](docs/ExcludedScanTargets.md)
+ - [Rapid7VmConsole::Exploit](docs/Exploit.md)
+ - [Rapid7VmConsole::ExploitSource](docs/ExploitSource.md)
+ - [Rapid7VmConsole::ExploitSourceLink](docs/ExploitSourceLink.md)
+ - [Rapid7VmConsole::Features](docs/Features.md)
+ - [Rapid7VmConsole::File](docs/File.md)
+ - [Rapid7VmConsole::Fingerprint](docs/Fingerprint.md)
+ - [Rapid7VmConsole::GlobalScan](docs/GlobalScan.md)
+ - [Rapid7VmConsole::GroupAccount](docs/GroupAccount.md)
+ - [Rapid7VmConsole::HostName](docs/HostName.md)
+ - [Rapid7VmConsole::IMetaData](docs/IMetaData.md)
+ - [Rapid7VmConsole::IncludedAssetGroups](docs/IncludedAssetGroups.md)
+ - [Rapid7VmConsole::IncludedScanTargets](docs/IncludedScanTargets.md)
+ - [Rapid7VmConsole::Info](docs/Info.md)
+ - [Rapid7VmConsole::InstallSize](docs/InstallSize.md)
+ - [Rapid7VmConsole::InstallationTotalSize](docs/InstallationTotalSize.md)
+ - [Rapid7VmConsole::InternalServerError](docs/InternalServerError.md)
+ - [Rapid7VmConsole::JVMInfo](docs/JVMInfo.md)
+ - [Rapid7VmConsole::JsonNode](docs/JsonNode.md)
+ - [Rapid7VmConsole::License](docs/License.md)
+ - [Rapid7VmConsole::LicenseLimits](docs/LicenseLimits.md)
+ - [Rapid7VmConsole::LicensePolicyScanning](docs/LicensePolicyScanning.md)
+ - [Rapid7VmConsole::LicensePolicyScanningBenchmarks](docs/LicensePolicyScanningBenchmarks.md)
+ - [Rapid7VmConsole::LicenseReporting](docs/LicenseReporting.md)
+ - [Rapid7VmConsole::LicenseScanning](docs/LicenseScanning.md)
+ - [Rapid7VmConsole::Link](docs/Link.md)
+ - [Rapid7VmConsole::Links](docs/Links.md)
+ - [Rapid7VmConsole::LocalePreferences](docs/LocalePreferences.md)
+ - [Rapid7VmConsole::MalwareKit](docs/MalwareKit.md)
+ - [Rapid7VmConsole::MatchedSolution](docs/MatchedSolution.md)
+ - [Rapid7VmConsole::MemoryFree](docs/MemoryFree.md)
+ - [Rapid7VmConsole::MemoryInfo](docs/MemoryInfo.md)
+ - [Rapid7VmConsole::MemoryTotal](docs/MemoryTotal.md)
+ - [Rapid7VmConsole::MetadataContainer](docs/MetadataContainer.md)
+ - [Rapid7VmConsole::NotFoundError](docs/NotFoundError.md)
+ - [Rapid7VmConsole::OperatingSystem](docs/OperatingSystem.md)
+ - [Rapid7VmConsole::OperatingSystemCpe](docs/OperatingSystemCpe.md)
+ - [Rapid7VmConsole::PCI](docs/PCI.md)
+ - [Rapid7VmConsole::PageInfo](docs/PageInfo.md)
+ - [Rapid7VmConsole::PageOfAsset](docs/PageOfAsset.md)
+ - [Rapid7VmConsole::PageOfAssetGroup](docs/PageOfAssetGroup.md)
+ - [Rapid7VmConsole::PageOfAssetPolicy](docs/PageOfAssetPolicy.md)
+ - [Rapid7VmConsole::PageOfAssetPolicyItem](docs/PageOfAssetPolicyItem.md)
+ - [Rapid7VmConsole::PageOfDiscoveryConnection](docs/PageOfDiscoveryConnection.md)
+ - [Rapid7VmConsole::PageOfExploit](docs/PageOfExploit.md)
+ - [Rapid7VmConsole::PageOfGlobalScan](docs/PageOfGlobalScan.md)
+ - [Rapid7VmConsole::PageOfMalwareKit](docs/PageOfMalwareKit.md)
+ - [Rapid7VmConsole::PageOfOperatingSystem](docs/PageOfOperatingSystem.md)
+ - [Rapid7VmConsole::PageOfPolicy](docs/PageOfPolicy.md)
+ - [Rapid7VmConsole::PageOfPolicyAsset](docs/PageOfPolicyAsset.md)
+ - [Rapid7VmConsole::PageOfPolicyControl](docs/PageOfPolicyControl.md)
+ - [Rapid7VmConsole::PageOfPolicyGroup](docs/PageOfPolicyGroup.md)
+ - [Rapid7VmConsole::PageOfPolicyItem](docs/PageOfPolicyItem.md)
+ - [Rapid7VmConsole::PageOfPolicyOverride](docs/PageOfPolicyOverride.md)
+ - [Rapid7VmConsole::PageOfPolicyRule](docs/PageOfPolicyRule.md)
+ - [Rapid7VmConsole::PageOfReport](docs/PageOfReport.md)
+ - [Rapid7VmConsole::PageOfScan](docs/PageOfScan.md)
+ - [Rapid7VmConsole::PageOfSite](docs/PageOfSite.md)
+ - [Rapid7VmConsole::PageOfSoftware](docs/PageOfSoftware.md)
+ - [Rapid7VmConsole::PageOfTag](docs/PageOfTag.md)
+ - [Rapid7VmConsole::PageOfUser](docs/PageOfUser.md)
+ - [Rapid7VmConsole::PageOfVulnerability](docs/PageOfVulnerability.md)
+ - [Rapid7VmConsole::PageOfVulnerabilityCategory](docs/PageOfVulnerabilityCategory.md)
+ - [Rapid7VmConsole::PageOfVulnerabilityCheck](docs/PageOfVulnerabilityCheck.md)
+ - [Rapid7VmConsole::PageOfVulnerabilityException](docs/PageOfVulnerabilityException.md)
+ - [Rapid7VmConsole::PageOfVulnerabilityFinding](docs/PageOfVulnerabilityFinding.md)
+ - [Rapid7VmConsole::PageOfVulnerabilityReference](docs/PageOfVulnerabilityReference.md)
+ - [Rapid7VmConsole::Policy](docs/Policy.md)
+ - [Rapid7VmConsole::PolicyAsset](docs/PolicyAsset.md)
+ - [Rapid7VmConsole::PolicyBenchmark](docs/PolicyBenchmark.md)
+ - [Rapid7VmConsole::PolicyControl](docs/PolicyControl.md)
+ - [Rapid7VmConsole::PolicyGroup](docs/PolicyGroup.md)
+ - [Rapid7VmConsole::PolicyItem](docs/PolicyItem.md)
+ - [Rapid7VmConsole::PolicyMetadataResource](docs/PolicyMetadataResource.md)
+ - [Rapid7VmConsole::PolicyOverride](docs/PolicyOverride.md)
+ - [Rapid7VmConsole::PolicyOverrideReviewer](docs/PolicyOverrideReviewer.md)
+ - [Rapid7VmConsole::PolicyOverrideScope](docs/PolicyOverrideScope.md)
+ - [Rapid7VmConsole::PolicyOverrideSubmitter](docs/PolicyOverrideSubmitter.md)
+ - [Rapid7VmConsole::PolicyRule](docs/PolicyRule.md)
+ - [Rapid7VmConsole::PolicyRuleAssessmentResource](docs/PolicyRuleAssessmentResource.md)
+ - [Rapid7VmConsole::PolicySummaryResource](docs/PolicySummaryResource.md)
+ - [Rapid7VmConsole::Privileges](docs/Privileges.md)
+ - [Rapid7VmConsole::ReferenceWithAlertIDLink](docs/ReferenceWithAlertIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithAssetIDLink](docs/ReferenceWithAssetIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithEndpointIDLink](docs/ReferenceWithEndpointIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithEngineIDLink](docs/ReferenceWithEngineIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithReportIDLink](docs/ReferenceWithReportIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithScanScheduleIDLink](docs/ReferenceWithScanScheduleIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithSiteIDLink](docs/ReferenceWithSiteIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithTagIDLink](docs/ReferenceWithTagIDLink.md)
+ - [Rapid7VmConsole::ReferenceWithUserIDLink](docs/ReferenceWithUserIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithAssetGroupIDLink](docs/ReferencesWithAssetGroupIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithAssetIDLink](docs/ReferencesWithAssetIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithEngineIDLink](docs/ReferencesWithEngineIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithReferenceWithEndpointIDLinkServiceLink](docs/ReferencesWithReferenceWithEndpointIDLinkServiceLink.md)
+ - [Rapid7VmConsole::ReferencesWithSiteIDLink](docs/ReferencesWithSiteIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithSolutionNaturalIDLink](docs/ReferencesWithSolutionNaturalIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithTagIDLink](docs/ReferencesWithTagIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithUserIDLink](docs/ReferencesWithUserIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithVulnerabilityCheckIDLink](docs/ReferencesWithVulnerabilityCheckIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithVulnerabilityCheckTypeIDLink](docs/ReferencesWithVulnerabilityCheckTypeIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithVulnerabilityNaturalIDLink](docs/ReferencesWithVulnerabilityNaturalIDLink.md)
+ - [Rapid7VmConsole::ReferencesWithWebApplicationIDLink](docs/ReferencesWithWebApplicationIDLink.md)
+ - [Rapid7VmConsole::RepeatResource](docs/RepeatResource.md)
+ - [Rapid7VmConsole::RepeatSchedule](docs/RepeatSchedule.md)
+ - [Rapid7VmConsole::Report](docs/Report.md)
+ - [Rapid7VmConsole::ReportConfigCategoryFilters](docs/ReportConfigCategoryFilters.md)
+ - [Rapid7VmConsole::ReportConfigDatabaseCredentialsResource](docs/ReportConfigDatabaseCredentialsResource.md)
+ - [Rapid7VmConsole::ReportConfigDatabaseResource](docs/ReportConfigDatabaseResource.md)
+ - [Rapid7VmConsole::ReportConfigFiltersResource](docs/ReportConfigFiltersResource.md)
+ - [Rapid7VmConsole::ReportConfigScopeResource](docs/ReportConfigScopeResource.md)
+ - [Rapid7VmConsole::ReportEmail](docs/ReportEmail.md)
+ - [Rapid7VmConsole::ReportEmailSmtp](docs/ReportEmailSmtp.md)
+ - [Rapid7VmConsole::ReportFilters](docs/ReportFilters.md)
+ - [Rapid7VmConsole::ReportFrequency](docs/ReportFrequency.md)
+ - [Rapid7VmConsole::ReportInstance](docs/ReportInstance.md)
+ - [Rapid7VmConsole::ReportScope](docs/ReportScope.md)
+ - [Rapid7VmConsole::ReportSize](docs/ReportSize.md)
+ - [Rapid7VmConsole::ReportStorage](docs/ReportStorage.md)
+ - [Rapid7VmConsole::ReportTemplate](docs/ReportTemplate.md)
+ - [Rapid7VmConsole::ResourcesAlert](docs/ResourcesAlert.md)
+ - [Rapid7VmConsole::ResourcesAssetGroup](docs/ResourcesAssetGroup.md)
+ - [Rapid7VmConsole::ResourcesAssetTag](docs/ResourcesAssetTag.md)
+ - [Rapid7VmConsole::ResourcesAuthenticationSource](docs/ResourcesAuthenticationSource.md)
+ - [Rapid7VmConsole::ResourcesAvailableReportFormat](docs/ResourcesAvailableReportFormat.md)
+ - [Rapid7VmConsole::ResourcesConfiguration](docs/ResourcesConfiguration.md)
+ - [Rapid7VmConsole::ResourcesDatabase](docs/ResourcesDatabase.md)
+ - [Rapid7VmConsole::ResourcesDiscoveryAsset](docs/ResourcesDiscoveryAsset.md)
+ - [Rapid7VmConsole::ResourcesEnginePool](docs/ResourcesEnginePool.md)
+ - [Rapid7VmConsole::ResourcesFile](docs/ResourcesFile.md)
+ - [Rapid7VmConsole::ResourcesGroupAccount](docs/ResourcesGroupAccount.md)
+ - [Rapid7VmConsole::ResourcesMatchedSolution](docs/ResourcesMatchedSolution.md)
+ - [Rapid7VmConsole::ResourcesPolicyOverride](docs/ResourcesPolicyOverride.md)
+ - [Rapid7VmConsole::ResourcesReportInstance](docs/ResourcesReportInstance.md)
+ - [Rapid7VmConsole::ResourcesReportTemplate](docs/ResourcesReportTemplate.md)
+ - [Rapid7VmConsole::ResourcesRole](docs/ResourcesRole.md)
+ - [Rapid7VmConsole::ResourcesScanEngine](docs/ResourcesScanEngine.md)
+ - [Rapid7VmConsole::ResourcesScanSchedule](docs/ResourcesScanSchedule.md)
+ - [Rapid7VmConsole::ResourcesScanTemplate](docs/ResourcesScanTemplate.md)
+ - [Rapid7VmConsole::ResourcesSharedCredential](docs/ResourcesSharedCredential.md)
+ - [Rapid7VmConsole::ResourcesSiteCredential](docs/ResourcesSiteCredential.md)
+ - [Rapid7VmConsole::ResourcesSiteSharedCredential](docs/ResourcesSiteSharedCredential.md)
+ - [Rapid7VmConsole::ResourcesSmtpAlert](docs/ResourcesSmtpAlert.md)
+ - [Rapid7VmConsole::ResourcesSnmpAlert](docs/ResourcesSnmpAlert.md)
+ - [Rapid7VmConsole::ResourcesSoftware](docs/ResourcesSoftware.md)
+ - [Rapid7VmConsole::ResourcesSolution](docs/ResourcesSolution.md)
+ - [Rapid7VmConsole::ResourcesSonarQuery](docs/ResourcesSonarQuery.md)
+ - [Rapid7VmConsole::ResourcesSyslogAlert](docs/ResourcesSyslogAlert.md)
+ - [Rapid7VmConsole::ResourcesTag](docs/ResourcesTag.md)
+ - [Rapid7VmConsole::ResourcesUser](docs/ResourcesUser.md)
+ - [Rapid7VmConsole::ResourcesUserAccount](docs/ResourcesUserAccount.md)
+ - [Rapid7VmConsole::ResourcesVulnerabilityValidationResource](docs/ResourcesVulnerabilityValidationResource.md)
+ - [Rapid7VmConsole::ResourcesWebFormAuthentication](docs/ResourcesWebFormAuthentication.md)
+ - [Rapid7VmConsole::ResourcesWebHeaderAuthentication](docs/ResourcesWebHeaderAuthentication.md)
+ - [Rapid7VmConsole::Review](docs/Review.md)
+ - [Rapid7VmConsole::RiskModifierSettings](docs/RiskModifierSettings.md)
+ - [Rapid7VmConsole::RiskSettings](docs/RiskSettings.md)
+ - [Rapid7VmConsole::Role](docs/Role.md)
+ - [Rapid7VmConsole::Scan](docs/Scan.md)
+ - [Rapid7VmConsole::ScanEngine](docs/ScanEngine.md)
+ - [Rapid7VmConsole::ScanEvents](docs/ScanEvents.md)
+ - [Rapid7VmConsole::ScanSchedule](docs/ScanSchedule.md)
+ - [Rapid7VmConsole::ScanScope](docs/ScanScope.md)
+ - [Rapid7VmConsole::ScanSettings](docs/ScanSettings.md)
+ - [Rapid7VmConsole::ScanSize](docs/ScanSize.md)
+ - [Rapid7VmConsole::ScanTargetsResource](docs/ScanTargetsResource.md)
+ - [Rapid7VmConsole::ScanTemplate](docs/ScanTemplate.md)
+ - [Rapid7VmConsole::ScanTemplateAssetDiscovery](docs/ScanTemplateAssetDiscovery.md)
+ - [Rapid7VmConsole::ScanTemplateDatabase](docs/ScanTemplateDatabase.md)
+ - [Rapid7VmConsole::ScanTemplateDiscovery](docs/ScanTemplateDiscovery.md)
+ - [Rapid7VmConsole::ScanTemplateDiscoveryPerformance](docs/ScanTemplateDiscoveryPerformance.md)
+ - [Rapid7VmConsole::ScanTemplateDiscoveryPerformancePacketsRate](docs/ScanTemplateDiscoveryPerformancePacketsRate.md)
+ - [Rapid7VmConsole::ScanTemplateDiscoveryPerformanceParallelism](docs/ScanTemplateDiscoveryPerformanceParallelism.md)
+ - [Rapid7VmConsole::ScanTemplateDiscoveryPerformanceScanDelay](docs/ScanTemplateDiscoveryPerformanceScanDelay.md)
+ - [Rapid7VmConsole::ScanTemplateDiscoveryPerformanceTimeout](docs/ScanTemplateDiscoveryPerformanceTimeout.md)
+ - [Rapid7VmConsole::ScanTemplateServiceDiscovery](docs/ScanTemplateServiceDiscovery.md)
+ - [Rapid7VmConsole::ScanTemplateServiceDiscoveryTcp](docs/ScanTemplateServiceDiscoveryTcp.md)
+ - [Rapid7VmConsole::ScanTemplateServiceDiscoveryUdp](docs/ScanTemplateServiceDiscoveryUdp.md)
+ - [Rapid7VmConsole::ScanTemplateVulnerabilityCheckCategories](docs/ScanTemplateVulnerabilityCheckCategories.md)
+ - [Rapid7VmConsole::ScanTemplateVulnerabilityCheckIndividual](docs/ScanTemplateVulnerabilityCheckIndividual.md)
+ - [Rapid7VmConsole::ScanTemplateVulnerabilityChecks](docs/ScanTemplateVulnerabilityChecks.md)
+ - [Rapid7VmConsole::ScanTemplateWebSpider](docs/ScanTemplateWebSpider.md)
+ - [Rapid7VmConsole::ScanTemplateWebSpiderPaths](docs/ScanTemplateWebSpiderPaths.md)
+ - [Rapid7VmConsole::ScanTemplateWebSpiderPatterns](docs/ScanTemplateWebSpiderPatterns.md)
+ - [Rapid7VmConsole::ScanTemplateWebSpiderPerformance](docs/ScanTemplateWebSpiderPerformance.md)
+ - [Rapid7VmConsole::ScheduledScanTargets](docs/ScheduledScanTargets.md)
+ - [Rapid7VmConsole::SearchCriteria](docs/SearchCriteria.md)
+ - [Rapid7VmConsole::Service](docs/Service.md)
+ - [Rapid7VmConsole::ServiceLink](docs/ServiceLink.md)
+ - [Rapid7VmConsole::ServiceUnavailableError](docs/ServiceUnavailableError.md)
+ - [Rapid7VmConsole::Settings](docs/Settings.md)
+ - [Rapid7VmConsole::SharedCredential](docs/SharedCredential.md)
+ - [Rapid7VmConsole::SharedCredentialAccount](docs/SharedCredentialAccount.md)
+ - [Rapid7VmConsole::Site](docs/Site.md)
+ - [Rapid7VmConsole::SiteCreateResource](docs/SiteCreateResource.md)
+ - [Rapid7VmConsole::SiteCredential](docs/SiteCredential.md)
+ - [Rapid7VmConsole::SiteDiscoveryConnection](docs/SiteDiscoveryConnection.md)
+ - [Rapid7VmConsole::SiteOrganization](docs/SiteOrganization.md)
+ - [Rapid7VmConsole::SiteSharedCredential](docs/SiteSharedCredential.md)
+ - [Rapid7VmConsole::SiteUpdateResource](docs/SiteUpdateResource.md)
+ - [Rapid7VmConsole::SmtpAlert](docs/SmtpAlert.md)
+ - [Rapid7VmConsole::SmtpSettings](docs/SmtpSettings.md)
+ - [Rapid7VmConsole::SnmpAlert](docs/SnmpAlert.md)
+ - [Rapid7VmConsole::Software](docs/Software.md)
+ - [Rapid7VmConsole::SoftwareCpe](docs/SoftwareCpe.md)
+ - [Rapid7VmConsole::Solution](docs/Solution.md)
+ - [Rapid7VmConsole::SolutionMatch](docs/SolutionMatch.md)
+ - [Rapid7VmConsole::SonarCriteria](docs/SonarCriteria.md)
+ - [Rapid7VmConsole::SonarCriterion](docs/SonarCriterion.md)
+ - [Rapid7VmConsole::SonarQuery](docs/SonarQuery.md)
+ - [Rapid7VmConsole::StaticSite](docs/StaticSite.md)
+ - [Rapid7VmConsole::Steps](docs/Steps.md)
+ - [Rapid7VmConsole::Submission](docs/Submission.md)
+ - [Rapid7VmConsole::Summary](docs/Summary.md)
+ - [Rapid7VmConsole::SwaggerDiscoverySearchCriteriaFilter](docs/SwaggerDiscoverySearchCriteriaFilter.md)
+ - [Rapid7VmConsole::SwaggerSearchCriteriaFilter](docs/SwaggerSearchCriteriaFilter.md)
+ - [Rapid7VmConsole::SyslogAlert](docs/SyslogAlert.md)
+ - [Rapid7VmConsole::Tag](docs/Tag.md)
+ - [Rapid7VmConsole::TagAssetSource](docs/TagAssetSource.md)
+ - [Rapid7VmConsole::TagLink](docs/TagLink.md)
+ - [Rapid7VmConsole::TaggedAssetReferences](docs/TaggedAssetReferences.md)
+ - [Rapid7VmConsole::Telnet](docs/Telnet.md)
+ - [Rapid7VmConsole::TokenResource](docs/TokenResource.md)
+ - [Rapid7VmConsole::UnauthorizedError](docs/UnauthorizedError.md)
+ - [Rapid7VmConsole::UniqueId](docs/UniqueId.md)
+ - [Rapid7VmConsole::UpdateId](docs/UpdateId.md)
+ - [Rapid7VmConsole::UpdateInfo](docs/UpdateInfo.md)
+ - [Rapid7VmConsole::UpdateSettings](docs/UpdateSettings.md)
+ - [Rapid7VmConsole::User](docs/User.md)
+ - [Rapid7VmConsole::UserAccount](docs/UserAccount.md)
+ - [Rapid7VmConsole::UserCreateRole](docs/UserCreateRole.md)
+ - [Rapid7VmConsole::UserRole](docs/UserRole.md)
+ - [Rapid7VmConsole::VersionInfo](docs/VersionInfo.md)
+ - [Rapid7VmConsole::Vulnerabilities](docs/Vulnerabilities.md)
+ - [Rapid7VmConsole::Vulnerability](docs/Vulnerability.md)
+ - [Rapid7VmConsole::VulnerabilityCategory](docs/VulnerabilityCategory.md)
+ - [Rapid7VmConsole::VulnerabilityCheck](docs/VulnerabilityCheck.md)
+ - [Rapid7VmConsole::VulnerabilityCheckType](docs/VulnerabilityCheckType.md)
+ - [Rapid7VmConsole::VulnerabilityCvss](docs/VulnerabilityCvss.md)
+ - [Rapid7VmConsole::VulnerabilityCvssV2](docs/VulnerabilityCvssV2.md)
+ - [Rapid7VmConsole::VulnerabilityCvssV3](docs/VulnerabilityCvssV3.md)
+ - [Rapid7VmConsole::VulnerabilityEvents](docs/VulnerabilityEvents.md)
+ - [Rapid7VmConsole::VulnerabilityException](docs/VulnerabilityException.md)
+ - [Rapid7VmConsole::VulnerabilityFinding](docs/VulnerabilityFinding.md)
+ - [Rapid7VmConsole::VulnerabilityReference](docs/VulnerabilityReference.md)
+ - [Rapid7VmConsole::VulnerabilityValidationResource](docs/VulnerabilityValidationResource.md)
+ - [Rapid7VmConsole::VulnerabilityValidationSource](docs/VulnerabilityValidationSource.md)
+ - [Rapid7VmConsole::WebApplication](docs/WebApplication.md)
+ - [Rapid7VmConsole::WebFormAuthentication](docs/WebFormAuthentication.md)
+ - [Rapid7VmConsole::WebHeaderAuthentication](docs/WebHeaderAuthentication.md)
+ - [Rapid7VmConsole::WebPage](docs/WebPage.md)
+ - [Rapid7VmConsole::WebSettings](docs/WebSettings.md)
+
+
+### Documentation for Authorization
+
+
+#### Basic
+
+- **Type**: HTTP basic authentication
+
diff --git a/Rakefile b/Rakefile
new file mode 100644
index 0000000..d52c3e3
--- /dev/null
+++ b/Rakefile
@@ -0,0 +1,8 @@
+begin
+ require 'rspec/core/rake_task'
+
+ RSpec::Core::RakeTask.new(:spec)
+ task default: :spec
+rescue LoadError
+ # no rspec available
+end
diff --git a/api-files/api_history.json b/api-files/api_history.json
new file mode 100644
index 0000000..296988a
--- /dev/null
+++ b/api-files/api_history.json
@@ -0,0 +1,12 @@
+[
+ {
+ "console_version": "6.5.1",
+ "date": "2018-01-11",
+ "checksum": "b944cbdf6ddeb6471096682c09b24a85f96aec81"
+ },
+ {
+ "console_version": "6.5.2",
+ "date": "2018-01-18",
+ "checksum": "39e231b04de2b9656d416265a2911e694c5e1e31"
+ }
+]
\ No newline at end of file
diff --git a/api-files/console-swagger-6.5.1.json b/api-files/console-swagger-6.5.1.json
new file mode 100644
index 0000000..93073ee
--- /dev/null
+++ b/api-files/console-swagger-6.5.1.json
@@ -0,0 +1 @@
+{"swagger":"2.0","info":{"description":"# Overview \n\nThis guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the\nRepresentation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the\n`application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and\nis hypermedia friendly. All API connections must be made to the security console using HTTPS.\n\n## Versioning\n\nVersioning is specified in the URL and the base path of this API is: `https://:/api/3/`.\n\n## Specification\n\nAn OpenAPI v2 specification (also \nknown as Swagger 2) of this API is available. Tools such as swagger-codegen\ncan be used to generate an API client in the language of your choosing using this specification document.\n\nDownload the specification: Download
\n\n## Authentication\n\nAuthorization to the API uses HTTP Basic Authorization \n(see RFC 2617 for more information). Requests must \nsupply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`.\n\n\n\n### 2FA\n\nThis API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic\nAuthorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this\nmust be enabled on the console and be configured for the account accessing the API.\n\n## Resources\n\n### Naming\n\nResource names represent nouns and identify the entity being manipulated or accessed. All collection resources are \npluralized to indicate to the client they are interacting with a collection of multiple resources of the same type.\nSingular resource names are used when there exists only one resource available to interact with.\n\nThe following naming conventions are used by this API:\n\n| Type | Case |\n| --------------------------------------------- | ------------------------ |\n| Resource names | `lower_snake_case` |\n| Header, body, and query parameters parameters | `camelCase` |\n| JSON fields and property names | `camelCase` |\n\n#### Collections\n\nA collection resource is a parent resource for instance resources, but can itself be retrieved and operated on \nindependently. Collection resources use a pluralized resource name. The resource path for collection resources follow \nthe convention:\n\n```\n/api/3/{resource_name}\n```\n\n#### Instances\n\nAn instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource.\nInstance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows \nthe convention:\n\n```\n/api/3/{resource_name}/{instance_id}...\n```\n\n## Verbs\n\nThe following HTTP operations are supported throughout this API. The general usage of the operation and both\nits failure and success status codes are outlined below. \n \n| Verb | Usage | Success | Failure |\n| --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- |\n| `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` |\n| `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` |\n| `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` |\n\n### Common Operations\n\n#### OPTIONS\n\nAll resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. \nThe `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response\nis always a `200 OK` status.\n\n### Collection Resources\n\nCollection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations.\n\n#### GET\n\nThe `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities \ncontained within the collection. This also includes the optional capability to filter or search resources during\nthe request. The response from a collection listing is a paginated document. See \n[hypermedia links](#section/Overview/Paging) for more information.\n\n#### POST\n\nThe `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier \nis not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The\ncontent of the `POST` request is sent in the request body. The response to a successful `POST` request should be a \n`201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly \ncreated resource. \n\nThe `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, \ninstead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully \ncomplete but has been accepted for future processing. This request will respond similarly with a `Location` header with \nlink to the job-oriented asynchronous resource that was created and/or queued.\n\n#### PUT\n\nThe `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace\nor update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created`\nwith a valid `Location` header field set to the URI that can be used to access to the newly created resource.\n\n`PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that \nupdates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes \nperformed.\n\n#### DELETE\n\nThe `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources.\nThe typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the \nside-effects of the changes performed.\n\n### Instance Resources\n\nInstance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations.\n\n#### GET\n\nRetrieves the details of a specific resource by its identifier. The details retrieved can be controlled through \nproperty selection and property views. The content of the resource is returned within the body of the response in the \nacceptable media type. \n\n#### PUT\n\nAllows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, \nit will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to \nbe undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. \n\nThe content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL \n(not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, \nwith a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) \nresource. \n\n#### POST\n\nPerforms a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the \nuse of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance \nresource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource \ncreated/persisted as a result of the operation. This varies by endpoint.\n\n#### PATCH\n\nThe `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that\nenforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the \nresource it is applied to. If a property is missing, it is assumed to not have changed.\n\n#### DELETE\n\nPermanently removes the individual resource from the system. If the resource is an association between resources, only \nthe association is removed, not the resources themselves. A successful deletion of the resource should return \n`204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a \nnon-existent resource should return a `404 NOT FOUND`.\n\n## Requests\n\nUnless otherwise indicated, the default request body media type is `application/json`.\n\n### Headers\n\nCommonly used request headers include:\n\n| Header | Example | Purpose | \n| ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- |\n| `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. |\n| `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). |\n| `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). |\n| `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication |\n| `Token ` | `123456` | Two-factor authentication token (if enabled) |\n\n### Dates & Times\n\nDates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input:\n\n| Value | Format | Notes |\n| --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- |\n| Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time |\n| Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC |\n| Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | |\n| Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | |\n| Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | |\n \n### Timezones\n\nTimezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`.\n \n### Paging\n\nPagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. \nAs these are control parameters, they are prefixed with the underscore character. The page parameter dictates the \nzero-based index of the page to retrieve, and the `size` indicates the size of the page. \n\nFor example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30.\n\nThe maximum page size for a request is 500.\n\n### Sorting\n\nSorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports \nidentifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is:\n\n```\nsort=property[,ASC|DESC]...\n```\n\nTherefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title \ndescending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order \nsorting, all properties are sorted in the same direction. To sort the results with varying orders by property,\n multiple sort parameters are passed. \n \nFor example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title \ndescending, in that order.\n\n## Responses\n\nThe following response statuses may be returned by this API.\n \n| Status | Meaning | Usage |\n| ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. |\n| `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. |\n| `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. |\n| `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. |\n| `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. |\n| `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. |\n| `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. |\n| `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. |\n| `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. |\n| `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. |\n| `415` | Unsupported Media Type | The media type is not supported for the requested resource. |\n| `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. |\n\n### Security\n\nThe response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, \nerror statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a \nguideline for privileged resource response statuses:\n\n| Use Case | Access | Resource | Permission | Status |\n| ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ |\n| Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` |\n| Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` |\n| Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` |\n| Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` |\n| Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` |\n| Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` |\n| Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` |\n\n### Headers\n\nCommonly used response headers include:\n\n| Header | Example | Purpose |\n| -------------------------- | --------------------------------- | --------------------------------------------------------------- |\n| `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. |\n| `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). |\n| `Content-Encoding` | `gzip` | The encoding of the response body (if any). |\n| `Location` | | Refers to the URI of the resource created by a request. |\n| `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. |\n| `Retry-After` | 5000 | Indicates the time to wait before retrying a request. |\n| `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. |\n| `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. |\n| `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. |\n| `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. |\n\n### Format\n\nWhen `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). \nAdditionally, gzip compression/encoding is supported on all responses. \n\n#### Dates & Times\n\nDates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC.\n\nFor example:\n\n| Value | Format | Example |\n| --------------- | ------------------------------ | --------------------- |\n| Date | `YYYY-MM-DD` | 2017-12-03 |\n| Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z |\n\n#### Content\n\nIn some resources a Content data type is used. This allows for multiple formats of representation to be returned\nwithin resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable\nfor output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML \nelement. Note, the HTML returned is not a valid stand-alone HTML document.\n\n#### Paging\n\nThe response to a paginated request follows the format:\n\n```json\n{\n resources\": [ \n ... \n ],\n \"page\": { \n \"number\" : ...,\n \"size\" : ...,\n \"totalResources\" : ...,\n \"totalPages\" : ...\n },\n \"links\": [ \n \"first\" : {\n \"href\" : \"...\"\n },\n \"prev\" : {\n \"href\" : \"...\"\n },\n \"self\" : {\n \"href\" : \"...\"\n },\n \"next\" : {\n \"href\" : \"...\"\n },\n \"last\" : {\n \"href\" : \"...\"\n } \n ]\n}\n```\n\nThe `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at \nminimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total\npossible pages. The object for the page includes the following properties:\n\n- number - The page number (zero-based) of the page returned.\n- size - The size of the pages, which is less than or equal to the maximum page size.\n- totalResources - The total amount of resources available across all pages.\n- totalPages - The total amount of pages.\n\nThe last property of the paged response is the `links` array, which contains all available hypermedia links. For \npaginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must\nalways be returned and should contain a link to allow the client to replicate the original request against the \ncollection resource in an identical manner to that in which it was invoked. \n\nThe \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. \nThe \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters \nrequired to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first\nand last pages respectively. \n\nRequests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \n\"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may \nchange while pagination is being traversed, and the total number of pages and resources may change between requests \nwithin the same filtered/queries resource collection.\n\n#### Property Views\n\nThe \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can \ntune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). \nView are specified using a query parameter, in this format:\n\n```bash\n/?view={viewName}\n```\n\n#### Error\n\nAny error responses can provide a response body with a message to the client indicating more information (if applicable) \nto aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the \nresponse is as follows:\n\n```json\n{\n \"status\": ,\n \"message\": ,\n \"links\" : [ {\n \"rel\" : \"...\",\n \"href\" : \"...\"\n } ]\n} \n ```\n \nThe `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message \nproperty is a localized message in the request client's locale (if applicable) that articulates the nature of the \nerror. The last property is the `links` property. This may contain additional \n[hypermedia links](#section/Overview/Authentication) to troubleshoot.\n\n#### Search Criteria \n\nMultiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each \nsearch filter has a generic format of:\n\n```json\n{ \n \"field\": \"\", \n \"operator\": \"\", \n [\"value\": \"\",]\n [\"lower\": \"\",]\n [\"upper\": \"\"]\n}\n \n```\n\nEvery filter defines two required properties `field` and `operator`. The field is the name of an asset property that\nis being filtered on. The operator is a type and property-specific operating performed on the filtered property. The\nvalid values for fields and operators are outlined in the table below.\n\nEvery filter also defines one or more values that are supplied to the operator. The valid values vary by operator\nand are outlined below.\n\n##### Fields\n\nThe following table outlines the search criteria fields and the available operators:\n\n| Field | Operators |\n| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |\n| `alternate-address-type` | `in` |\n| `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` |\n| `container-status` | `is` ` is not` |\n| `containers` | `are` |\n| `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` |\n| `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` |\n| `cve` | `is` ` is not` ` contains` ` does not contain` |\n| `cvss-access-complexity` | `is` ` is not` |\n| `cvss-authentication-required` | `is` ` is not` |\n| `cvss-access-vector` | `is` ` is not` |\n| `cvss-availability-impact` | `is` ` is not` |\n| `cvss-confidentiality-impact` | `is` ` is not` |\n| `cvss-integrity-impact` | `is` ` is not` |\n| `cvss-v3-confidentiality-impact` | `is` ` is not` |\n| `cvss-v3-integrity-impact` | `is` ` is not` |\n| `cvss-v3-availability-impact` | `is` ` is not` |\n| `cvss-v3-attack-vector` | `is` ` is not` |\n| `cvss-v3-attack-complexity` | `is` ` is not` |\n| `cvss-v3-user-interaction` | `is` ` is not` |\n| `cvss-v3-privileges-required` | `is` ` is not` |\n| `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` |\n| `host-type` | `in` ` not in` |\n| `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` |\n| `ip-address-type` | `in` ` not in` |\n| `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` |\n| `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` |\n| `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` |\n| `open-ports` | `is` ` is not` ` in range` |\n| `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` |\n| `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` |\n| `pci-compliance` | `is` |\n| `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` |\n| `service-name` | `contains` ` does not contain` |\n| `site-id` | `in` ` not in` |\n| `software` | `contains` ` does not contain` |\n| `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` |\n| `vAsset-datacenter` | `is` ` is not` |\n| `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` |\n| `vAsset-power-state` | `in` ` not in` |\n| `vAsset-resource-pool-path` | `contains` ` does not contain` |\n| `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` |\n| `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` |\n| `vulnerability-cvss-v3-score` | `is` ` is not` |\n| `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` |\n| `vulnerability-exposures` | `includes` ` does not include` |\n| `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` |\n| `vulnerability-validated-status` | `are` |\n\n##### Enumerated Properties\n\nThe following fields have enumerated values:\n\n| Field | Acceptable Values |\n| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- |\n| `alternate-address-type` | 0=IPv4, 1=IPv6 |\n| `containers` | 0=present, 1=not present |\n| `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` |\n| `cvss-access-complexity` | L
= LowM
= MediumH
= High
|\n| `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
|\n| `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
|\n| `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
|\n| `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
|\n| `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
|\n| `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
|\n| `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
|\n| `cvss-v3-availability-impact` | |\n| `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
|\n| `cvss-v3-attack-complexity` | |\n| `cvss-v3-user-interaction` | |\n| `cvss-v3-privileges-required` | |\n| `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile |\n| `ip-address-type` | 0=IPv4, 1=IPv6 |\n| `pci-compliance` | 0=fail, 1=pass |\n| `vulnerability-validated-status` | 0=present, 1=not present |\n\n##### Operator Properties \n\nThe following table outlines which properties are required for each operator and the appropriate data type(s):\n\n| Operator | `value` | `lower` | `upper` |\n| ----------------------|-----------------------|-----------------------|-----------------------|\n| `are` | `string` | | |\n| `contains` | `string` | | |\n| `does-not-contain` | `string` | | |\n| `ends with` | `string` | | |\n| `in` | `Array[ string ]` | | |\n| `in-range` | | `numeric` | `numeric` |\n| `includes` | `Array[ string ]` | | |\n| `is` | `string` | | |\n| `is-applied` | | | |\n| `is-between` | | `numeric` | `numeric` |\n| `is-earlier-than` | `numeric` | | |\n| `is-empty` | | | |\n| `is-greater-than` | `numeric` | | |\n| `is-on-or-after` | `string` (yyyy-MM-dd) | | |\n| `is-on-or-before` | `string` (yyyy-MM-dd) | | |\n| `is-not` | `string` | | |\n| `is-not-applied` | | | |\n| `is-not-empty` | | | |\n| `is-within-the-last` | `string` | | |\n| `less-than` | `string` | | |\n| `like` | `string` | | |\n| `not-contains` | `string` | | |\n| `not-in` | `Array[ string ]` | | |\n| `not-in-range` | | `numeric` | `numeric` |\n| `not-like` | `string` | | |\n| `starts-with` | `string` | | |\n\n#### Discovery Connection Search Criteria \n\nDynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. \n\nEach search filter has a generic format of:\n\n```json\n{ \n \"field\": \"\", \n \"operator\": \"\", \n [\"value\": \"\",]\n [\"lower\": \"\",]\n [\"upper\": \"\"]\n}\n \n```\n\nEvery filter defines two required properties `field` and `operator`. The field is the name of an asset property that\nis being filtered on. The list of supported fields vary depending on the type of discovery connection configured \nfor the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating \nperformed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the \ntype of connection. \n\nEvery filter also defines one or more values that are supplied to the operator. See \nSearch Criteria Operator Properties for more \ninformation on the valid values for each operator. \n\n##### Fields (ActiveSync)\n\nThis section documents search criteria information for ActiveSync discovery connections. The discovery connections \nmust be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. \n\nThe following table outlines the search criteria fields and the available operators for ActiveSync connections:\n\n| Field | Operators |\n| --------------------------------- | ------------------------------------------------------------- |\n| `last-sync-time` | `is-within-the-last` ` is-earlier-than` |\n| `operating-system` | `contains` ` does-not-contain` |\n| `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Fields (AWS)\n\nThis section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. \n\nThe following table outlines the search criteria fields and the available operators for AWS connections:\n\n| Field | Operators |\n| ----------------------- | ------------------------------------------------------------- |\n| `availability-zone` | `contains` ` does-not-contain` |\n| `guest-os-family` | `contains` ` does-not-contain` |\n| `instance-id` | `contains` ` does-not-contain` |\n| `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `instance-state` | `in` ` not-in` |\n| `instance-type` | `in` ` not-in` |\n| `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` |\n| `region` | `in` ` not-in` |\n| `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Fields (DHCP)\n\nThis section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. \n\nThe following table outlines the search criteria fields and the available operators for DHCP connections:\n\n| Field | Operators |\n| --------------- | ------------------------------------------------------------- |\n| `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` |\n| `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Fields (Sonar)\n\nThis section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. \n\nThe following table outlines the search criteria fields and the available operators for Sonar connections:\n\n| Field | Operators |\n| ------------------- | -------------------- |\n| `search-domain` | `contains` ` is` |\n| `ip-address` | `in-range` ` is` |\n| `sonar-scan-date` | `is-within-the-last` |\n\n##### Fields (vSphere)\n\nThis section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. \n\nThe following table outlines the search criteria fields and the available operators for vSphere connections:\n\n| Field | Operators |\n| -------------------- | ------------------------------------------------------------------------------------------ |\n| `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `data-center` | `is` ` is-not` |\n| `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` |\n| `guest-os-family` | `contains` ` does-not-contain` |\n| `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` |\n| `power-state` | `in` ` not-in` |\n| `resource-pool-path` | `contains` ` does-not-contain` |\n| `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` |\n| `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Enumerated Properties (vSphere)\n\nThe following fields have enumerated values:\n\n| Field | Acceptable Values |\n| ------------- | ------------------------------------ |\n| `power-state` | `poweredOn` `poweredOff` `suspended` |\n\n## HATEOAS\n\nThis API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. \nHyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to\nthe corresponding resource. The format of the hypermedia link adheres to both the\n{json:api} v1 \n\"Link Object\" and \nJSON Hyper-Schema \n\"Link Description Object\"\nformats. For example:\n\n```json\n\"links\": [{\n \"rel\": \"\",\n \"href\": \"\"\n ...\n}]\n```\n\nWhere appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc.\n\nSee the [Root](#tag/Root) resources for the entry points into API discovery.","version":"3","title":"InsightVM API","contact":{"name":"Rapid7","email":"support@rapid7.com"}},"host":"localhost:3780","basePath":"/","tags":[{"name":"Root","description":"Provides access to primary entry point for discovering the available resources in this API."},{"name":"Asset","description":"Resources and operations for managing assets. Assets can be created under the Site Assets resource."},{"name":"Asset Discovery","description":"Resources for managing and viewing the mechanisms used to automatically discover assets."},{"name":"Asset Group","description":"Asset Group Tag"},{"name":"Credential","description":"Resources and operations for managing shared credentials."},{"name":"Policy","description":"Resources and operations for managing policies."},{"name":"Policy Override","description":"Policy Override Resource Controller"},{"name":"Remediation","description":"Resources for determining the details required to remediate vulnerabilities."},{"name":"Report","description":"Resources and operations for managing and generating reports. Reports are broadly categorized into `document`, `export`, and `file` types. `document` reports use section-based report templates to control the output and can be generated in several formats. `export` reports are designed to output their contents into a specific file format. `file` reports are templatized reports that output based on the format of a template file. Reports can be configured to generate on a schedule and be distributed via email to specific recipients."},{"name":"Scan","description":"Resources and operations for managing scans."},{"name":"Scan Engine","description":"Resources and operations for managing scan engines."},{"name":"Scan Template","description":"Scan Template Resource Controller"},{"name":"Site","description":"Resources and operations for managing sites."},{"name":"Tag","description":"Resources and operations for managing tags."},{"name":"User","description":"Resources and operations for managing users, permissions, and privileges."},{"name":"Vulnerability","description":"Resources and operations for viewing vulnerability content and managing exceptions."},{"name":"Vulnerability Check","description":"Resources and operations for view vulnerability checks that can be run as a part of vulnerability content."},{"name":"Vulnerability Exception","description":"Vulnerability Exception Resource Controller"},{"name":"Vulnerability Result","description":"Resources and operations for retrieving vulnerability results on assessed assets."},{"name":"Administration","description":"Provides access administrative operations and procedures."}],"schemes":[],"consumes":[],"produces":[],"paths":{"/api/3":{"get":{"tags":["Root"],"summary":"Resources","description":"Returns a listing of the resources (endpoints) that are available to be invoked in this API.","operationId":"resources","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/commands":{"post":{"tags":["Administration"],"summary":"Console Commands","description":"Executes a console command against the Security Console. Global Administrator","operationId":"executeCommand","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The console command to execute.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ConsoleCommandOutput"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Show Host Info","source":"show host info"},{"lang":"Help","source":"help"}]}},"/api/3/administration/info":{"get":{"tags":["Administration"],"summary":"Information","description":"Returns system details, including host and version information.","operationId":"getInfo","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Info"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/license":{"get":{"tags":["Administration"],"summary":"License","description":"Returns the enabled features and limits of the current license. Global Administrator","operationId":"getLicense","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/License"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Administration"],"summary":"License","description":"Licenses the product with an activation key or a provided license file. If both are provided, the license file is preferred. Global Administrator","operationId":"activateLicense","schemes":[],"consumes":["multipart/form-data"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"license","in":"formData","description":"The contents of a license (.lic) file.","required":false,"type":"file"},{"name":"key","in":"query","description":"A license activation key.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/properties":{"get":{"tags":["Administration"],"summary":"Properties","description":"Returns system details, including host and version information.","operationId":"getProperties","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/EnvironmentProperties"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/settings":{"get":{"tags":["Administration"],"summary":"Settings","description":"Returns the current administration settings. Global Administrator","operationId":"getSettings","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Settings"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups":{"get":{"tags":["Asset Group"],"summary":"Asset Groups","description":"Returns all asset groups.","operationId":"getAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"type","in":"query","description":"The type of asset group.","required":false,"type":"string"},{"name":"name","in":"query","description":"A search pattern for the name of the asset group. Searches are case-insensitive contains.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Asset Group"],"summary":"Asset Groups","description":"Creates a new asset group. The `searchCriteria` field can be passed no matter what the type of the asset group is. The asset group `type` changes when the assets are refreshed. Dynamic asset groups constantly refreshed their membership as assets are scanned whereas static asset groups do not change membership automatically. \nSee the Search Criteria for more information on using dynamic criteria.","operationId":"createAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the asset group.","required":false,"schema":{"$ref":"#/definitions/AssetGroup"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/CreatedReference«AssetGroupID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"An Empty Static Asset Group","source":"{\n \"description\": \"A Static Asset Group With No Assets. In order to add assets to this group you can POST to the /assets endpoint or PUT to the /assets/{assetID} endpoint.\",\n \"name\": \"Empty Static Asset Groups\",\n \"type\": \"static\"\n}"},{"lang":"A static asset group with assets defined by search criteria","source":"{\n \"description\": \"A Static Asset Group with Assets that are Linux Assets running Containers (With Low Access Complexity Vulnerabilities) for remediation purposes.\",\n \"name\": \"Container Hosts - Linux\",\n \"searchCriteria\": {\n \"filters\": [\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"linux\" },\n { \"field\": \"containers\", \"operator\": \"are\", \"value\": 0 },\n { \"field\": \"cvss-access-complexity\", \"operator\": \"is\", \"value\": \"L\" }\n ],\n \"match\": \"all\"\n },\n \"type\": \"static\"\n}"},{"lang":"A dynamic asset group","source":"{\n \"description\": \"A Static Asset Group with Assets that are Linux Assets running Containers (With Low Access Complexity Vulnerabilities) for remediation purposes.\",\n \"name\": \"Container Hosts - Linux\",\n \"searchCriteria\": {\n \"filters\": [\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"linux\" },\n { \"field\": \"containers\", \"operator\": \"are\", \"value\": 0 },\n { \"field\": \"cvss-access-complexity\", \"operator\": \"is\", \"value\": \"L\" }\n ],\n \"match\": \"all\"\n },\n \"type\": \"dynamic\"\n}"}]}},"/api/3/asset_groups/{id}":{"get":{"tags":["Asset Group"],"summary":"Asset Group","description":"Returns an asset group.","operationId":"getAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/AssetGroup"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group","description":"Updates the details of an asset group. See the search criteria endpoint (/search_criteria) for more information about building the search criteria and examples.","operationId":"updateAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the asset group.","required":false,"schema":{"$ref":"#/definitions/AssetGroup"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group","description":"Deletes the asset group.","operationId":"deleteAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/assets":{"get":{"tags":["Asset Group"],"summary":"Asset Group Assets","description":"Returns hypermedia links for the assets that belong to an asset group.","operationId":"getAssetGroupAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Assets","description":"Updates all the assets that belong to a static asset group.","operationId":"updateAssetGroupAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The assets to place in the asset group. ","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int64"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Assets","description":"Removes the assets from the given static asset group.","operationId":"removeAllAssetsFromAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/assets/{assetId}":{"put":{"tags":["Asset Group"],"summary":"Asset Group Asset","description":"Adds an asset to a static asset group.","operationId":"addAssetToAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Asset","description":"Removes an asset from an asset group.","operationId":"removeAssetFromAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/search_criteria":{"get":{"tags":["Asset Group"],"summary":"Asset Group Search Criteria","description":"Returns the search criteria of a dynamic asset group.For a reference of valid search criteria input see the Asset Search resource.","operationId":"getAssetGroupSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SearchCriteria"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Search Criteria","description":"Updates the search criteria of a dynamic asset group. For a reference of valid search criteria input see the Asset Search resource.","operationId":"setAssetGroupSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The search criteria specification.","required":false,"schema":{"$ref":"#/definitions/SearchCriteria"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Unassigned PCI Incompliant Windows Assets","source":"{\n \"description\": \"This is an asset group that contains assets that have not been recently scanned in our Los Angeles Datacenter that are also high risk.\",\n \"name\": \"Stale Los Angeles Assets (High Risk)\",\n \"type\": \"dynamic\",\n \"searchCriteria\": {\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"location-tag\", \"operator\": \"contains\", \"value\": \"Los Angeles Datacenter\" },\n { \"field\": \"risk-score\", \"operator\": \"is-greater-than\", \"value\": 5000 },\n { \"field\": \"last-scan-date\", \"operator\": \"is-on-or-before\", \"value\": \"2016-12-31\" }\n ]\n }\n}"},{"lang":"Stale Los Angeles Assets (High Risk)","source":"{\n \"description\": \"This is an asset group that contains Windows Assets that are not PCI compliant and not assigned to an owner.\",\n \"name\": \"Unassigned PCI Incompliant Windows Assets\",\n \"type\": \"dynamic\",\n \"searchCriteria\": {\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"pci-compliance\", \"operator\": \"is\", \"value\": \"0\" },\n { \"field\": \"owner-tag\", \"operator\": \"is-not-applied\" },\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"windows\" }\n ]\n }\n}"}]}},"/api/3/asset_groups/{id}/tags":{"get":{"tags":["Asset Group"],"summary":"Asset Group Tags","description":"Returns the tags assigned to an asset group.","operationId":"getAssetGroupTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«TagID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Tags","description":"Updates the tags of an asset group.","operationId":"setAssetGroupTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The tags to associate to the asset group.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Tags","description":"Removes all tag associations from the asset group.","operationId":"removeAllAssetGroupTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/tags/{tagId}":{"put":{"tags":["Asset Group"],"summary":"Asset Group Tag","description":"Adds a tag to an asset group.","operationId":"addAssetGroupTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Tag","description":"Removes a tag from an asset group.","operationId":"removeAssetGroupTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/users":{"get":{"tags":["Asset Group"],"summary":"Asset Group Users","description":"Returns hypermedia links for the users with access to this asset group.","operationId":"getAssetGroupUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Users","description":"Grants users with sufficient privileges access to an asset group.","operationId":"setAssetGroupUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The users to grant access to the asset group.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/users/{userId}":{"put":{"tags":["Asset Group"],"summary":"Asset Group User","description":"Grants a user with sufficient privileges access to the asset group.","operationId":"addAssetGroupUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"userId","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group User","description":"Removes a user's access from an asset group.","operationId":"removeAssetGroupUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"userId","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets":{"get":{"tags":["Asset"],"summary":"Assets","description":"Returns all assets for which you have access.","operationId":"getAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Asset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/assets":{"get":{"tags":["Site"],"summary":"Site Assets","description":"Retrieves a paged resource of assets linked with the specified site.","operationId":"getSiteAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Asset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Asset"],"summary":"Assets","description":"Creates or updates an asset with the specified details.","operationId":"createAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the asset being added or updated. \nThe operating system can be specified in one of three ways, with the order of precedence: `\"osFingerprint\"`, `\"os\"`, `\"cpe\"`","required":false,"schema":{"$ref":"#/definitions/AssetCreate"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference"},"examples":{},"headers":{}},"201":{"description":"Created","schema":{"$ref":"#/definitions/CreatedOrUpdatedReference"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Assets","description":"Removes all assets from the specified site. Assets will be deleted entirely from the Security Console if either Asset Linking is disabled or if Asset Linking is enabled and the asset only existed in this site.","operationId":"removeSiteAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/search":{"post":{"tags":["Asset"],"summary":"Asset Search","description":"Returns all assets for which you have access that match the given search criteria.","operationId":"findAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param1","description":"param1","required":true,"schema":{"$ref":"#/definitions/SearchCriteria"}},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Asset»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets Running SSH","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"service-name\", \"operator\": \"contains\", \"value\": \"ssh\"}\n ]\n}"},{"lang":"High Risk Windows Assets Running SSH","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"risk-score\", \"operator\": \"is-greater-than\", \"value\": 5000 },\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"windows\" },\n { \"field\": \"service-name\", \"operator\": \"contains\", \"value\": \"ssh\" }\n ]\n}"},{"lang":"Windows 10 Assets","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"Microsoft Windows 10\" }\n ]\n}"},{"lang":"Assets with High CVSS Scores assigned to Bob","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"owner-tag\", \"operator\": \"contains\", \"value\": \"Bob\" },\n { \"field\": \"vulnerability-cvss-score\", \"operator\": \"is-greater-than\", \"value\": 8 }\n ]\n}"},{"lang":"Assets with SSH running containers in Los Angeles","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"location-tag\", \"operator\": \"contains\", \"value\": \"Los Angeles Datacenter\" },\n { \"field\": \"containers\", \"operator\": \"are\", \"value\": \"0\" },\n { \"field\": \"service-name\", \"operator\": \"contains\", \"value\": \"ssh\" }\n ]\n}"}]}},"/api/3/assets/{assetId}/policies":{"get":{"tags":["Policy"],"summary":"Policies For Asset","description":"Retrieves the list of policies with compliance results for the specified asset.","operationId":"getPoliciesForAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the policies retrieved should only include those with a policy compliance status of either a PASS of FAIL result. Default value is `false`, which will also include policies with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetPolicy»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy For Asset","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy with rule compliance results for the specified asset.","operationId":"getAssetPolicyChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetPolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy Group For Asset","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy group with rule compliance results for the specified asset.","operationId":"getAssetPolicyGroupChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetPolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules Under Policy Group For Asset","description":"Retrieves the list of policy rules defined directly, or indirectly, underneath the specified policy group and the compliance results for the specified asset.","operationId":"getPolicyGroupRulesWithAssetAssessment","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules For Asset","description":"Retrieves the list of policy rules with compliance results for the specified asset and policy.","operationId":"getAssetPolicyRulesSummary","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}":{"get":{"tags":["Asset"],"summary":"Asset","description":"Returns the specified asset.","operationId":"getAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Asset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset"],"summary":"Asset","description":"Deletes the specified asset.","operationId":"deleteAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/databases":{"get":{"tags":["Asset"],"summary":"Asset Databases","description":"Returns the databases enumerated on an asset.","operationId":"getAssetDatabases","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Database»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/files":{"get":{"tags":["Asset"],"summary":"Asset Files","description":"Returns the files discovered on an asset.","operationId":"getAssetFiles","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«File»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/policy_overrides":{"get":{"tags":["Policy Override"],"summary":"Asset Policy Overrides","description":"Retrieves policy overrides defined on policy rules for the specified asset.","operationId":"getAssetPolicyOverrides","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«PolicyOverride»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services":{"get":{"tags":["Asset"],"summary":"Asset Services","description":"Returns the services discovered on an asset.","operationId":"getAssetServices","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«ReferenceWithEndpointIDLink,ServiceLink»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}":{"get":{"tags":["Asset"],"summary":"Asset Service","description":"Returns the service running a port and protocol on the asset.","operationId":"getAssetService","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Service"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/configurations":{"get":{"tags":["Asset"],"summary":"Asset Service Configurations","description":"Returns the configuration (properties) of a port and protocol on an asset.","operationId":"getAssetServiceConfigurations","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Configuration»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/databases":{"get":{"tags":["Asset"],"summary":"Asset Service Databases","description":"Returns the databases running on a port and protocol on an asset.","operationId":"getAssetServiceDatabases","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Database»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/user_groups":{"get":{"tags":["Asset"],"summary":"Asset Service User Groups","description":"Returns the user groups enumerated on a port and protocol on an asset.","operationId":"getAssetServiceUserGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«GroupAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/users":{"get":{"tags":["Asset"],"summary":"Asset Service Users","description":"Returns the users enumerated on a port and protocol on an asset.","operationId":"getAssetServiceUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«UserAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/vulnerabilities":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Service Vulnerabilities","description":"Retrieves the vulnerabilities present on a service running on an asset. A finding may be `invulnerable` if all instances on the service have exceptions applied.","operationId":"getAssetServiceVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityFinding»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/web_applications":{"get":{"tags":["Asset"],"summary":"Asset Service Web Applications","description":"Returns the web applications running on a port and protocol on an asset.","operationId":"getAssetServiceWebApplications","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«WebApplicationID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/web_applications/{webApplicationId}":{"get":{"tags":["Asset"],"summary":"Asset Service Web Application","description":"Returns a web application running on a port and protocol on an asset.","operationId":"getAssetServiceWebApplication","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"},{"name":"webApplicationId","in":"path","description":"The identifier of the web application.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/WebApplication"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/software":{"get":{"tags":["Asset"],"summary":"Asset Software","description":"Returns the software on an asset.","operationId":"getAssetSoftware","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Software»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/tags":{"get":{"tags":["Asset"],"summary":"Asset Tags","description":"Returns tags assigned to an asset.","operationId":"getAssetTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AssetTag»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/tags/{tagId}":{"put":{"tags":["Asset"],"summary":"Asset Tag","description":"Assigns the specified tag to the asset.","operationId":"addAssetTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset"],"summary":"Asset Tag","description":"Removes the specified tag from the asset's tags.","operationId":"removeAssetTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/user_groups":{"get":{"tags":["Asset"],"summary":"Asset User Groups","description":"Returns user groups enumerated on an asset.","operationId":"getAssetUserGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«GroupAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/users":{"get":{"tags":["Asset"],"summary":"Asset Users","description":"Returns users enumerated on an asset.","operationId":"getAssetUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«UserAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerabilities","description":"Retrieves all vulnerability findings on an asset. A finding may be `invulnerable` if all instances have exceptions applied.","operationId":"getAssetVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityFinding»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability","description":"Retrieves the details for a vulnerability finding on an asset.","operationId":"getAssetVulnerability","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityFinding"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/solution":{"get":{"tags":["Remediation"],"summary":"Asset Vulnerability Solution","description":"Returns the highest-superceding rollup solutions for a vulnerability on an asset. The solution(s) selected will be the most recent and cost-effective means by which the vulnerability can be remediated.","operationId":"getAssetVulnerabilitySolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«MatchedSolution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validations","description":"Returns all vulnerability validations for a vulnerability on an asset. The asset must be currently vulnerable to the validated vulnerable for the validation to be returned.","operationId":"getVulnerabilityValidations","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«VulnerabilityValidationResource»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validations","description":"Creates a vulnerability validation for a vulnerability on an asset. The validation signifies that the vulnerability has been confirmed exploitable by an external tool, such as Metasploit.","operationId":"createVulnerabilityValidation","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"in":"body","name":"param2","description":"A vulnerability validation for a vulnerability on an asset. The validation signifies that the vulnerability has been confirmed exploitable by an external tool, such as Metasploit.","required":false,"schema":{"$ref":"#/definitions/VulnerabilityValidationResource"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«VulnerabilityValidationID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations/{validationId}":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validation","description":"Returns a vulnerability validation for a vulnerability on an asset. The asset must be currently vulnerable to the validated vulnerable for the validation to be returned.","operationId":"getVulnerabilityValidation","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"validationId","in":"path","description":"The identifier of the vulnerability validation.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityValidationResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validation","description":"Removes a vulnerability validation for a vulnerability from an asset.","operationId":"deleteVulnerabilityValidation","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"validationId","in":"path","description":"The identifier of the vulnerability validation.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/authentication_sources":{"get":{"tags":["User"],"summary":"Authentication Sources","description":"Returns all available sources of authentication for users.","operationId":"getAuthenticationSources","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AuthenticationSource»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/authentication_sources/{id}":{"get":{"tags":["User"],"summary":"Authentication Source","description":"Returns the details for an authentication source.","operationId":"getAuthenticationSource","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the authentication source.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/AuthenticationSource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/authentication_sources/{id}/users":{"get":{"tags":["User"],"summary":"Authentication Source Users","description":"Returns hypermedia links for the user accounts that use the authentication source to authenticate.","operationId":"getAuthenticationSourceUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the authentication source.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/discovery_connections":{"get":{"tags":["Asset Discovery"],"summary":"Discovery Connections","description":"Returns all discovery connections.","operationId":"getDiscoveryConnections","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«DiscoveryConnection»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/discovery_connections/{id}":{"get":{"tags":["Asset Discovery"],"summary":"Discovery Connection","description":"Returns a discovery connection.","operationId":"getDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the discovery connection.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/DiscoveryConnection"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/discovery_connections/{id}/connect":{"post":{"tags":["Asset Discovery"],"summary":"Discovery Connection Reconnect","description":"Attempts to reconnect the discovery connection.","operationId":"reconnectDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the discovery connection.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/exploits":{"get":{"tags":["Vulnerability"],"summary":"Exploits","description":"Returns all known exploits.","operationId":"getExploits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Exploit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/exploits/{id}":{"get":{"tags":["Vulnerability"],"summary":"Exploit","description":"Returns the details for an exploit.","operationId":"getExploit","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the exploit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Exploit"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/exploits/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Exploitable Vulnerabilities","description":"Returns the vulnerabilities exploitable to a exploit.","operationId":"getExploitVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the exploit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/malware_kits":{"get":{"tags":["Vulnerability"],"summary":"Malware Kits","description":"Returns all known malware kits.","operationId":"getMalwareKits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«MalwareKit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/malware_kits/{id}":{"get":{"tags":["Vulnerability"],"summary":"Malware Kit","description":"Returns the details for a malware kit.","operationId":"getMalwareKit","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the malware kit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/MalwareKit"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/malware_kits/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Malware Kit Vulnerabilities","description":"Returns the vulnerabilities that are susceptible to being attacked by a malware kit.","operationId":"getMalwareKitVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the malware kit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/operating_systems":{"get":{"tags":["Asset"],"summary":"Operating Systems","description":"Returns all operating systems discovered across all assets. ","operationId":"getOperatingSystems","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«OperatingSystem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/operating_systems/{id}":{"get":{"tags":["Asset"],"summary":"Operating System","description":"Returns the details for an operating system.","operationId":"getOperatingSystem","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the operating system.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/OperatingSystem"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies":{"get":{"tags":["Policy"],"summary":"Policies","description":"Retrieves a paged resource of policies.","operationId":"getPolicies","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"filter","in":"query","description":"Filters the retrieved policies with those whose titles that match the parameter.","required":false,"type":"string"},{"name":"scannedOnly","in":"query","description":"Flag indicating the policies retrieved should only include those with Pass or Fail compliance results. The list of scanned policies is based on the user's list of accessible assets.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Policy»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{id}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy.","operationId":"getPolicyChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}":{"get":{"tags":["Policy"],"summary":"Policy","description":"Retrieves the specified policy.","operationId":"getPolicy","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Policy"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/assets":{"get":{"tags":["Policy"],"summary":"Policy Asset Results","description":"Retrieves asset resources with rule compliance results for the specified policy.","operationId":"getPolicyAssetResults","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/assets/{assetId}":{"get":{"tags":["Policy"],"summary":"Policy Asset Result","description":"Retrieves an asset resource with rule compliance results for the specified asset and policy.","operationId":"getPolicyAssetResult","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyAsset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups":{"get":{"tags":["Policy"],"summary":"Policy Groups","description":"Retrieves a paged resource of policy groups for the specified policy.","operationId":"getPolicyGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}":{"get":{"tags":["Policy"],"summary":"Policy Group","description":"Retrieves the specified policy group.","operationId":"getPolicyGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyGroup"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/assets":{"get":{"tags":["Policy"],"summary":"Assets Compliance For Policy Rules Under Policy Group","description":"Retrieves asset resources with rule compliance status against all rules under the specified policy group.","operationId":"getPolicyGroupAssetResults","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/assets/{assetId}":{"get":{"tags":["Policy"],"summary":"Asset Compliance For Policy Rules Under Policy Group","description":"Retrieves an asset resource with rule compliance status against all rules under the specified policy group.","operationId":"getPolicyGroupAssetResult","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyAsset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy Group","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy group.","operationId":"getPolicyGroupChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules Under Policy Group","description":"Retrieves the list of policy rules defined directly, or indirectly, underneath the specified policy group.","operationId":"getDescendantPolicyRules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules","description":"Retrieves a paged resource of policy rules for the specified policy.","operationId":"getPolicyRules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/disabled":{"get":{"tags":["Policy"],"summary":"Disabled Policy Rules","description":"Retrieves a paged resource of disabled policy rules for the specified policy.","operationId":"getDisabledPolicyRules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}":{"get":{"tags":["Policy"],"summary":"Policy Rule","description":"Retrieves the specified policy rule.","operationId":"getPolicyRule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyRule"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/assets":{"get":{"tags":["Policy"],"summary":"Assets Compliance For Policy Rule","description":"Retrieves asset resources with rule compliance results for the specified policy policy rule.","operationId":"getPolicyRuleAssetResults","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId}":{"get":{"tags":["Policy"],"summary":"Asset Compliance For Policy Rule","description":"Retrieves an asset resource with rule compliance results for the specified policy policy rule.","operationId":"getPolicyRuleAssetResult","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyAsset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId}/proof":{"get":{"tags":["Policy"],"summary":"Policy Rule Proof For Asset","description":"Retrieves the policy rule proof captured during evaluation against the specified asset.","operationId":"getPolicyRuleAssetResultProof","schemes":[],"consumes":["application/json"],"produces":["text/html"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/controls":{"get":{"tags":["Policy"],"summary":"Policy Rule Controls","description":"Retrieves all NIST SP 800-53 controls mappings for each CCE within the specified policy rule.","operationId":"getPolicyRuleControls","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyControl»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/rationale":{"get":{"tags":["Policy"],"summary":"Policy Rule Rationale","description":"Retrieves the policy rule rationale for the specified policy.","operationId":"getPolicyRuleRationale","schemes":[],"consumes":["application/json"],"produces":["text/html"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/remediation":{"get":{"tags":["Policy"],"summary":"Policy Rule Remediation","description":"Retrieves the policy rule remediation for the specified policy.","operationId":"getPolicyRuleRemediation","schemes":[],"consumes":["application/json"],"produces":["text/html"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy/summary":{"get":{"tags":["Policy"],"summary":"Policy Compliance Summaries","description":"Retrieves a compliance summary of all policies.","operationId":"getPolicySummary","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicySummaryResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides":{"get":{"tags":["Policy Override"],"summary":"Policy Overrides","description":"Retrieves policy overrides defined on policy rules.","operationId":"getPolicyOverrides","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyOverride»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Policy Override"],"summary":"Policy Overrides","description":"Submit a policy override. The policy override can be submitted or it can be submitted and approved in a single request.","operationId":"createPolicyOverride","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a policy override. Allows users to override the compliance result of a policy rule.","required":false,"schema":{"$ref":"#/definitions/PolicyOverride"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«PolicyOverrideID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides/{id}":{"get":{"tags":["Policy Override"],"summary":"Policy Override","description":"Retrieve the specified policy override.","operationId":"getPolicyOverride","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyOverride"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Policy Override"],"summary":"Policy Override","description":"Removes a policy override created for a policy rule.","operationId":"deletePolicyOverride","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides/{id}/expires":{"get":{"tags":["Policy Override"],"summary":"Policy Override Expiration","description":"Get the expiration date for a policy override.","operationId":"getPolicyOverrideExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Policy Override"],"summary":"Policy Override Expiration","description":"Set the expiration date for a policy override. This must be a valid date in the future.","operationId":"setPolicyOverrideExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"},{"in":"body","name":"param1","description":"The date the policy override is set to expire. Date is represented in ISO 8601 format.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides/{id}/{status}":{"post":{"tags":["Policy Override"],"summary":"Policy Override Status","description":"Update the status of the specified policy override. The status can be one of the following: `\"recall\"`, `\"approve\"`, or `\"reject\"`.","operationId":"setPolicyOverrideStatus","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"},{"name":"status","in":"path","description":"Policy Override Status","required":false,"type":"string","enum":["recall","approve","reject"]},{"in":"body","name":"param2","description":"A comment describing the change of the policy override status.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/privileges":{"get":{"tags":["User"],"summary":"Privileges","description":"Returns all privileges that may be granted to a role.","operationId":"getPrivileges","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Privileges"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/privileges/{id}":{"get":{"tags":["User"],"summary":"Privilege","description":"Returns the details for a privilege.","operationId":"getPrivilege","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the privilege.","required":false,"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/privileges/{id}/users":{"get":{"tags":["User"],"summary":"Users With Privilege","description":"Returns hypermedia links for all users granted the specified privilege by their role.","operationId":"getUsersWithPrivilege","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the privilege.","required":false,"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/report_formats":{"get":{"tags":["Report"],"summary":"Report Formats","description":"Returns all available report formats. A report format indicates an output file format specification (e.g. PDF, XML, etc). Some printable formats may be templated, and others may not. The supported templates for each formated are provided.","operationId":"getReportFormats","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AvailableReportFormat»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/report_templates":{"get":{"tags":["Report"],"summary":"Report Templates","description":"Returns all available report templates.","operationId":"getReportTemplates","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ReportTemplate»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/report_templates/{id}":{"get":{"tags":["Report"],"summary":"Report Template","description":"Returns the details of a report template. Report templates govern the contents generated within a report. ","operationId":"getReportTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report template;","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReportTemplate"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports":{"get":{"tags":["Report"],"summary":"Reports","description":"Returns all defined report configurations.","operationId":"getReports","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Report»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Report"],"summary":"Reports","description":"Configures a new report for generation. Report types are controlled through either or both a format and template. Non-templatized (`export`) report formats do not require a template and have their output format preset. Templatized (`document` and `file`) report formats support a report template that governs the content of the output and the output format can be chosen from a list of supported formats.","operationId":"createReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a report configuration.","required":false,"schema":{"$ref":"#/definitions/Report"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«int,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Nexpose™ Simple XML","source":"{\n \"format\": \"nexpose-simple-xml\",\n \"name\": \"Scan Report for February scan\",\n \"filters\": {\n \"statuses\": [ \"vulnerable\", \"vulnerable-version\" ]\n },\n \"scope\": {\n \"scan\": 2\n }\n}"},{"lang":"Qualys XML","source":"{\n \"format\": \"qualys-xml\",\n \"name\": \"Qualys Export\",\n \"filters\": {\n \"severity\": \"critical-and-severe\",\n \"categories\": {\n \"included\": [ \"Adobe\" ]\n }\n },\n \"scope\": {\n \"sites\": [ 3 ]\n }\n}"},{"lang":"OVAL XML","source":"{\n \"format\": \"oval-xml\",\n \"name\": \"OVAL XML\",\n \"policy\": 32, \n \"scope\": {\n \"sites\": [ 17 ]\n }\n}"},{"lang":"XCCDF CSV","source":"{\n \"format\": \"xccdf-csv\",\n \"name\": \"XCDDF CSV Report\",\n \"policy\": 89,\n \"scope\": {\n \"assets\": [ 4, 7, 9, 22 ]\n },\n \"filters\": {\n \"severity\": \"critical\"\n },\n \"frequency\": {\n \"start\": \"2017-11-30\",\n \"repeat\": {\n \"every\": \"week\",\n \"interval\": 2\n }\n }\n}"},{"lang":"XCCDF XML","source":"{\n \"format\": \"xccdf-xml\",\n \"name\": \"XCCDF XML\",\n \"policy\": 12,\n \"organization\": \"Acme Organization\",\n \"scope\": {\n \"tags\": [ 4 ]\n },\n \"filters\": {\n \"severity\": \"critical\"\n },\n \"frequency\": {\n \"start\": \"2018-11-30\",\n \"repeat\": {\n \"every\": \"date-of-month\",\n \"interval\": 3,\n \"dateOfMonth\": \"last\"\n }\n }\n}"}]}},"/api/3/reports/{id}":{"get":{"tags":["Report"],"summary":"Report","description":"Returns the configuration details of a report.","operationId":"getReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Report"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Report"],"summary":"Report","description":"Updates the configuration details of a report.","operationId":"updateReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of a report configuration.","required":false,"schema":{"$ref":"#/definitions/Report"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Report"],"summary":"Report","description":"Deletes the configuration of a report.","operationId":"deleteReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/generate":{"post":{"tags":["Report"],"summary":"Report Generation","description":"Generates a configured report and returns the instance identifier of the report.","operationId":"generateReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferenceWithReportIDLink"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/history":{"get":{"tags":["Report"],"summary":"Report Histories","description":"Returns all historical details for generation of the report over time.","operationId":"getReportInstances","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ReportInstance»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/history/{instance}":{"get":{"tags":["Report"],"summary":"Report History","description":"Returns the details for a generation of the report.","operationId":"getReportInstance","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"name":"instance","in":"path","description":"The identifier of the report instance.","required":false,"type":"string","enum":["latest","integer <>"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReportInstance"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Report"],"summary":"Report History","description":"Returns the details for a generation of the report.","operationId":"deleteReportInstance","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"name":"instance","in":"path","description":"The identifier of the report instance.","required":false,"type":"string","enum":["latest","integer <>"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/history/{instance}/output":{"get":{"tags":["Report"],"summary":"Report Download","description":"Returns the contents of a generated report. The report content is usually returned in a GZip compressed format.","operationId":"downloadReport","schemes":[],"consumes":["application/json"],"produces":["application/octet-stream","application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"name":"instance","in":"path","description":"The identifier of the report instance.","required":false,"type":"string","enum":["latest","integer <>"]}],"responses":{"200":{"description":"OK","schema":{"type":"string","format":"byte"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/roles":{"get":{"tags":["User"],"summary":"Roles","description":"Returns all roles for which users may be assigned.","operationId":"getRoles","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Role»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/roles/{id}":{"get":{"tags":["User"],"summary":"Role","description":"Retrieves the details of a role.","operationId":"getRole","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Role"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Role","description":"Updates the details of a role.","operationId":"updateRole","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the role.","required":false,"schema":{"$ref":"#/definitions/Role"}},{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Role","description":"Removes a role with the specified identifier. The role must not be built-in and cannot be currently assigned to any users.","operationId":"deleteRole","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/roles/{id}/users":{"get":{"tags":["User"],"summary":"Users With Role","description":"Returns hypermedia links for the the users currently assigned a role.","operationId":"getRoleUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools":{"get":{"tags":["Scan Engine"],"summary":"Engine Pools","description":"Returns engine pools available to use for scanning.","operationId":"getScanEnginePools","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«EnginePool»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan Engine"],"summary":"Engine Pools","description":"Creates a new engine pool.","operationId":"createScanEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details for the scan engine to update.","required":false,"schema":{"$ref":"#/definitions/EnginePool"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«EngineID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}":{"get":{"tags":["Scan Engine"],"summary":"Engine Pool","description":"Retrieves the details for an engine pool.","operationId":"getEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/EnginePool"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Engine"],"summary":"Engine Pool","description":"Updates the specified engine pool.","operationId":"updateScanEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details for the scan engine to update.","required":false,"schema":{"$ref":"#/definitions/EnginePool"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Engine"],"summary":"Engine Pool","description":"Deletes the specified engine pool.","operationId":"removeScanEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}/engines":{"get":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Get the engines in the engine pool.","operationId":"getScanEnginePoolScanEngines","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«EngineID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Set the engines in the engine pool.","operationId":"setScanEnginePoolScanEngines","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The identifiers of the scan engines to place into the engine pool.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}/engines/{engineId}":{"put":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Add an engine to the engine pool.","operationId":"addScanEnginePoolScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"name":"engineId","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Remove the specified engine from the engine pool.","operationId":"removeScanEnginePoolScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"name":"engineId","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}/sites":{"get":{"tags":["Scan Engine"],"summary":"Engine Pool Sites","description":"Returns links to the sites associated with this engine pool.","operationId":"getScanEnginePoolSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SiteID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines":{"get":{"tags":["Scan Engine"],"summary":"Scan Engines","description":"Returns scan engines available to use for scanning.","operationId":"getScanEngines","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ScanEngine»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan Engine"],"summary":"Scan Engines","description":"Creates a new scan engine.","operationId":"createScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a scan engine.","required":false,"schema":{"$ref":"#/definitions/ScanEngine"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«EngineID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}":{"get":{"tags":["Scan Engine"],"summary":"Scan Engine","description":"Retrieves the details for a scan engine.","operationId":"getScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanEngine"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Engine"],"summary":"Scan Engine","description":"Updates the specified scan engine.","operationId":"updateScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of the scan engine to update.","required":false,"schema":{"$ref":"#/definitions/ScanEngine"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Engine"],"summary":"Scan Engine","description":"Deletes the specified scan engine.","operationId":"deleteScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}/scan_engine_pools":{"get":{"tags":["Scan Engine"],"summary":"Assigned Engine Pools","description":"Retrieves the list of engine pools the scan engine is currently assigned to.","operationId":"getAssignedEnginePools","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«EnginePool»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}/scans":{"get":{"tags":["Scan Engine"],"summary":"Scan Engine Scans","description":"Returns the scans that have been run on a scan engine.","operationId":"getScanEngineScans","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Scan»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}/sites":{"get":{"tags":["Scan Engine"],"summary":"Scan Engine Sites","description":"Retrieves the list of sites the specified scan engine is assigned to.","operationId":"getScanEngineSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Site»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_templates":{"get":{"tags":["Scan Template"],"summary":"Scan Templates","description":"Returns all scan templates.","operationId":"getScanTemplates","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ScanTemplate»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan Template"],"summary":"Scan Templates","description":"Creates a new scan template.","operationId":"createScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the scan template.","required":false,"schema":{"$ref":"#/definitions/ScanTemplate"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«ScanTemplateID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_templates/{id}":{"get":{"tags":["Scan Template"],"summary":"Scan Template","description":"Returns a scan template.","operationId":"getScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan template","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTemplate"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Template"],"summary":"Scan Template","description":"Updates a scan template.","operationId":"updateScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan template","required":false,"type":"string"},{"in":"body","name":"param1","description":"The details of the scan template.","required":false,"schema":{"$ref":"#/definitions/ScanTemplate"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Template"],"summary":"Scan Template","description":"Deletes a scan template.","operationId":"deleteScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan template","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scans":{"get":{"tags":["Scan"],"summary":"Scans","description":"Returns all scans.","operationId":"getScans","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"active","in":"query","description":"Return running scans or past scans (true/false value).","required":false,"type":"boolean","default":false,"enum":["true","false"]},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«GlobalScan»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scans/{id}":{"get":{"tags":["Scan"],"summary":"Scan","description":"Returns the specified scan.","operationId":"getScan","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Scan"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scans/{id}/{status}":{"post":{"tags":["Scan"],"summary":"Scan Status","description":"Updates the scan status. Can pause, resume, and stop scans using this resource. In order to stop a scan the scan must be running or paused. In order to resume a scan the scan must be paused. In order to pause a scan the scan must be running.","operationId":"setScanStatus","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan.","required":false,"type":"integer","format":"int64"},{"name":"status","in":"path","description":"The status of the scan.","required":false,"type":"string","enum":["pause","stop","resume"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/shared_credentials":{"get":{"tags":["Credential"],"summary":"Shared Credentials","description":"Retrieves all defined shared credential resources.","operationId":"getSharedCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SharedCredential»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Credential"],"summary":"Shared Credentials","description":"Creates a new shared credential.","operationId":"createSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a shared credential.","required":false,"schema":{"$ref":"#/definitions/SharedCredential"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«CredentialID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"A CIFS credential","source":"{\n \"name\": \"CIFS Administrator\",\n \"description\": \"This is a cifs credential for an administrator\",\n \"account\": {\n \"service\": \"cifs\",\n \"username\": \"joe_smith@acme.com\",\n \"password\": \"******\",\n \"domain\": \"acme\"\n },\n \"siteAssignment\": \"all-sites\"\n}"},{"lang":"A Microsoft SQL Server credential","source":"{\n \"name\": \"MS SQL Administrator\",\n \"description\": \"This is an administrator credential for a Microsoft SQL Server database. Configured to use windows authentication. Credential is not assigned to any sites by default.\",\n \"account\": {\n \"service\": \"ms-sql\",\n \"database\": \"usersdb\",\n \"useWindowsAuthentication\": true,\n \"domain\": \"acme\",\n \"username\": \"admin\",\n \"password\": \"******\"\n },\n \"siteAssignment\": \"specific-sites\",\n \"hostRestriction\": \"machine1.acme.com\"\n}\n"},{"lang":"An Oracle database credential","source":"{\n \"name\": \"Oracle DB Administrator\",\n \"description\": \"This is an administrator credential for an Oracle database. Credential is assigned to a single site.\",\n \"account\": {\n \"service\": \"oracle\",\n \"sid\": \"usersdb\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"enumerateSids\": true,\n \"oracleListenerPassword\": \"******\"\n },\n \"siteAssignment\": \"specific-sites\",\n \"sites\": [1],\n \"hostRestriction\": \"192.168.1.1\"\n}\n"},{"lang":"An SNMPv3 credential","source":"{\n \"name\": \"SNMP v3 Administator\",\n \"account\": {\n \"service\": \"snmpv3\",\n \"authenticationType\": \"md5\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"privacyType\": \"aes-256\",\n \"privacyPassword\": \"******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"},{"lang":"An SSH credential","source":"{\n \"name\": \"SSH Administrator\",\n \"description\": \"This is an SSH credential for an administrator. Credential is assigned to all sites.\",\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"admin\",\n \"password\": \"******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"},{"lang":"An SSH credential using sudo+su permission elevation","source":"{\n \"name\": \"SSH User (permission elevation with sudo+su)\",\n \"description\": \"This is an SSH credential for an non-administrative user. Credential is configured to perform permission elevation using sudo+su for additional access.\",\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"jsmith\",\n \"password\": \"******\",\n \"permissionElevation\": \"sudosu\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"},{"lang":"An SSH public key credential","source":"{\n \"name\": \"SSH Public Key credential (permission elevation with sudo)\",\n \"description\": \"This is an SSH credential for a non-administrative user using a PEM-format private key. Credential is also configured to elevate permissions using sudo.\",\n \"account\": {\n \"service\": \"ssh-key\",\n \"username\": \"admin\",\n \"privateKeyPassword\": \"*******\",\n \"pemKey\": \"-----BEGIN RSA PRIVATE KEY-----\\nProc-Type: 4,ENCRYPTED\\nDEK-Info: AES-128-CBC,0D364155CB54D4B485BDB3B11B76BF59\\n\\nGLH7n9qeWzZ43g8d5ZNo9BcSWGXo7i8yd3ig9SLKXJd9GoxOrI4OepxZbhOJFDC9\\nXer799R8M4+ZGUwIC14R4lfzgKjcqEBCzya/c99MxK9Haz8pt5BjTMtUQRWO5y+/\\nyySosHRVebB05TuMhmLnJkNnDfTYwT+Hnvdhu/2ArEm2FN9Rr+guumwhQeGxUha5\\n7zjjSimLYjuU2uayjgFLfnh9g/Fe24qmHCw80z+nuHsm9WMWeoeOdmMrMmxhLxUb\\nb+zYZs/xRYjKgBMTRiXNSK9UIy21t2+7TUzeyDwfvHq0f5KpinhD1vzYSL+N0k/H\\ndg6vqM1gD/DLb+eKoAGpXTE0gpHWcXLg526ivlyZEpAxbuyGPVQ+7IIGytjxN7lG\\nJyvbk3fpKDwIJLDOFN4eb9DUaUoqyarqVl44BZhcs7mM0Cvn49IA7PfhcznLv4rJ\\netAoZ2Tjt0AiM774+4X29EaYBGXKGC3SYKfiznoEEy1Jpi6Akwxz4FKCEazH1wce\\nUaUS/N8VbquMPTqcLjCfoztdOgk65j4FczGt22CtGz4Ns8XB0KRM9fcVQFD4ZmRQ\\ni9Sr2onZUAMuvg3R6ZNdpm7FtQhNEpqV432TJdNZEMbXlDmG61P2vgILugKmu56r\\ngZfgI1QMUSUzZrnH+DXn0GY9KycRKTpY6L8PSUeTVyhDUFlTrTchvbnFf7LpVRRj\\n0+99EUxQFIogXt2rNuj6qioEpabh6rGtIPjICEkue75n2Y4Eu+pdPpSFAPNXLuMB\\nCcvoydmxWkBcq/wrCWcTKdKbGKXEj1xvHXAdUwcmlhXpn1igxcwRtcpwrN8cyRRB\\nddc1dDX6X/6iEnnWdDDWHZYjaMLUWVO0pPXzSEsZMFhS3wPvY1lg1Ertiag6DD0Q\\nwnJq19fJ5M8ehu9qMBdHgPIWdcZBMXSvaQqZ8gBtMO5UyuLA5BTP0yb6Jh3foXCq\\nCPihqYSCGUtXzupJCr/oE+jOaYNWjL5icEU0llA6lr71WWdj3b1OwrUTlrmgA0nK\\nxZu6LrqRT+nxbd4phYbkqmhXccq9H/d8pcZwKwPtF+z8HoZXSddaACYFAqY4eaxa\\nNRk2Zt1JJ+tUsNT9LLV1tUrQ+q1JsKlJp7LW60loljiex8uadsvzwnKIdoom8q0I\\nroXHdrwwqyubf4yYApRckbgzW9gLPbclKSqsVFGsDB+KysDYmg3QlTpkrgGl2555\\naQ7Z2TWWvcVL3y7z1l1F238m11LxKUY8Uvu7enpQ/gTrqQ1qqIi2/yv+LvZmAXWV\\nCFO2lMafpmmHjHEAI5ifXYzZlHCXYBHGHYJdGALFuhODiQqF4pOJI8CX/00msnlJ\\nbMH0+dGnk2AviiaLXb7eCZ7mELCX+Ah+00UU75Vdv7O3vhGHpjuMULvbLW2uo+cw\\n6rogJ4SfUBb0t+yS970Xty650DgpHYxCzDwZZzrQqPuX6SeOD8AnXuJL3cl3B5YU\\n60IPVJPsONIwvJlvZuiij4V8L95usGtvDVsexBKQlj3sSVZ5egICMBjkduEyDl3O\\nxOZtdnqktsWNF5XYUfa/8/HUYnN35g0UktpmKlg0yxhAxUAn4lENAY8xvhMGsSCO\\n-----END RSA PRIVATE KEY-----\",\n \"permissionElevation\": \"sudo\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"*******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"}]},"delete":{"tags":["Credential"],"summary":"Shared Credentials","description":"Deletes all shared credentials.","operationId":"deleteAllSharedCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/shared_credentials/{id}":{"get":{"tags":["Credential"],"summary":"Shared Credential","description":"Retrieves the specified shared credential.","operationId":"getSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SharedCredential"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Credential"],"summary":"Shared Credential","description":"Updates the specified shared credential.","operationId":"updateSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the credential.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of the shared credential to update.","required":false,"schema":{"$ref":"#/definitions/SharedCredential"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Credential"],"summary":"Shared Credential","description":"Deletes the specified shared scan credential.","operationId":"deleteSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites":{"get":{"tags":["Site"],"summary":"Sites","description":"Retrieves a paged resource of accessible sites.","operationId":"getSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Site»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Sites","description":"Creates a new site with the specified configuration.","operationId":"createSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a site configuration.","required":false,"schema":{"$ref":"#/definitions/SiteCreateResource"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«SiteID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}":{"get":{"tags":["Site"],"summary":"Site","description":"Retrieves the site with the specified identifier.","operationId":"getSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Site"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site","description":"Updates the configuration of the site with the specified identifier.","operationId":"updateSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating a site configuration.","required":false,"schema":{"$ref":"#/definitions/SiteUpdateResource"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site","description":"site.delete.description","operationId":"deleteSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts":{"get":{"tags":["Site"],"summary":"Site Alerts","description":"Retrieve all alerts defined in the site.","operationId":"getSiteAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Alert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Alerts","description":"Deletes all alerts from the site.","operationId":"deleteAllSiteAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/smtp":{"get":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Retrieves all SMTP alerts defined in the site.","operationId":"getSiteSmtpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SmtpAlert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Creates a new SMTP alert for the specified site.","operationId":"createSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a new SMTP alert.","required":false,"schema":{"$ref":"#/definitions/SmtpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«AlertID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Updates all SMTP alerts for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteSmtpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all SMTP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SmtpAlert"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Deletes all SMTP alerts from the site.","operationId":"deleteAllSiteSmtpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/smtp/{alertId}":{"get":{"tags":["Site"],"summary":"Site SMTP Alert","description":"Retrieves the specified SMTP alert.","operationId":"getSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SmtpAlert"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SMTP Alert","description":"Updates the specified SMTP alert.","operationId":"updateSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified SMTP alert.","required":false,"schema":{"$ref":"#/definitions/SmtpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SMTP Alert","description":"Deletes the specified SMTP alert from the site.","operationId":"deleteSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/snmp":{"get":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Retrieves all SNMP alerts defined in the site.","operationId":"getSiteSnmpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SnmpAlert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Creates a new SNMP alert for the specified site.","operationId":"createSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a new SNMP alert.","required":false,"schema":{"$ref":"#/definitions/SnmpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«AlertID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Updates all SNMP alerts for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteSnmpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all SNMP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SnmpAlert"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Deletes all SNMP alerts from the site.","operationId":"deleteAllSiteSnmpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/snmp/{alertId}":{"get":{"tags":["Site"],"summary":"Site SNMP Alert","description":"Retrieves the specified SNMP alert.","operationId":"getSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SnmpAlert"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SNMP Alert","description":"Updates the specified SNMP alert.","operationId":"updateSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified SNMP alert.","required":false,"schema":{"$ref":"#/definitions/SnmpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SNMP Alert","description":"Deletes the specified SNMP alert from the site.","operationId":"deleteSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/syslog":{"get":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Retrieves all Syslog alerts defined in the site.","operationId":"getSiteSyslogAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SyslogAlert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Creates a new Syslog alert for the specified site.","operationId":"createSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a new Syslog alert.","required":false,"schema":{"$ref":"#/definitions/SyslogAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«AlertID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Updates all Syslog alerts for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteSyslogAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all Syslog alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SyslogAlert"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Deletes all Syslog alerts from the site.","operationId":"deleteAllSiteSyslogAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/syslog/{alertId}":{"get":{"tags":["Site"],"summary":"Site Syslog Alert","description":"Retrieves the specified Syslog alert.","operationId":"getSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SyslogAlert"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Syslog Alert","description":"Updates the specified Syslog alert.","operationId":"updateSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified Syslog alert.","required":false,"schema":{"$ref":"#/definitions/SyslogAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Syslog Alert","description":"Deletes the specified Syslog alert from the site.","operationId":"deleteSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/assets/{assetId}":{"delete":{"tags":["Site"],"summary":"Site Asset","description":"Removes an asset from a site. The asset will only be deleted if it belongs to no other sites.","operationId":"removeAssetFromSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/discovery_connection":{"get":{"tags":["Site"],"summary":"Site Discovery Connection","description":"Retrieves the discovery connection assigned to the site.","operationId":"getSiteDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SiteDiscoveryConnection"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Discovery Connection","description":"Updates the discovery connection assigned to the site.","operationId":"setSiteDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the discovery connection.","required":false,"schema":{"type":"integer","format":"int64"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/discovery_search_criteria":{"get":{"tags":["Site"],"summary":"Site Discovery Search Criteria","description":"Retrieve the search criteria of the dynamic site.","operationId":"getSiteDiscoverySearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/DiscoverySearchCriteria"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Discovery Search Criteria","description":"Update the search criteria of the dynamic site.","operationId":"setSiteDiscoverySearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"param1","required":true,"schema":{"$ref":"#/definitions/DiscoverySearchCriteria"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/excluded_asset_groups":{"get":{"tags":["Site"],"summary":"Site Excluded Asset Groups","description":"Retrieves the excluded asset groups in a static site.","operationId":"getExcludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AssetGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Excluded Asset Groups","description":"Updates the excluded asset groups in a static site.","operationId":"updateExcludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of asset group identifiers.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Excluded Asset Groups","description":"Removes all excluded asset groups from the specified static site.","operationId":"removeAllExcludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/excluded_asset_groups/{assetGroupId}":{"delete":{"tags":["Site"],"summary":"Site Excluded Asset Group","description":"Removes the specified asset group from the excluded asset groups configured in the static site.","operationId":"removeExcludedAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/excluded_targets":{"get":{"tags":["Site"],"summary":"Site Excluded Targets","description":"Retrieves the excluded targets in a static site.","operationId":"getExcludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTargetsResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Excluded Targets","description":"Updates the excluded targets in a static site.","operationId":"updateExcludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"List of addresses to be the site's new excluded scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/included_asset_groups":{"get":{"tags":["Site"],"summary":"Site Included Asset Groups","description":"Retrieves the included asset groups in a static site.","operationId":"getIncludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AssetGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Included Asset Groups","description":"Updates the included asset groups in a static site.","operationId":"updateIncludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of asset group identifiers.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Included Asset Groups","description":"Removes all included asset groups from the specified static site.","operationId":"removeAllIncludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/included_asset_groups/{assetGroupId}":{"delete":{"tags":["Site"],"summary":"Site Included Asset Group","description":"Removes the specified asset group from the included asset groups configured in the static site.","operationId":"removeIncludedAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/included_targets":{"get":{"tags":["Site"],"summary":"Site Included Targets","description":"Retrieves the included targets in a static site.","operationId":"getIncludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTargetsResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Included Targets","description":"Updates the included targets in a static site.","operationId":"updateIncludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"List of addresses to be the site's new included scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/organization":{"get":{"tags":["Site"],"summary":"Site Organization Information","description":"Retrieves the site organization information.","operationId":"getSiteOrganization","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SiteOrganization"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Organization Information","description":"Updates the site organization information.","operationId":"updateSiteOrganization","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified site's organization information.","required":false,"schema":{"$ref":"#/definitions/SiteOrganization"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_engine":{"get":{"tags":["Site"],"summary":"Site Scan Engine","description":"Retrieves the resource of the scan engine assigned to the site.","operationId":"getSiteScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanEngine"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Engine","description":"Updates the assigned scan engine to the site.","operationId":"setSiteScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the scan engine.","required":false,"schema":{"type":"integer","format":"int32"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_schedules":{"get":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Returns all scan schedules for the site.","operationId":"getSiteScanSchedules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ScanSchedule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Creates a new scan schedule for the specified site.","operationId":"createSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for a scan schedule.","required":false,"schema":{"$ref":"#/definitions/ScanSchedule"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«ScanScheduleID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Updates all scan schedules for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteScanSchedules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all scan schedules defined in the site. Scan schedules defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/ScanSchedule"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Deletes all scan schedules from the site.","operationId":"deleteAllSiteScanSchedules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_schedules/{scheduleId}":{"get":{"tags":["Site"],"summary":"Site Scan Schedule","description":"Retrieves the specified scan schedule.","operationId":"getSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"scheduleId","in":"path","description":"The identifier of the scan schedule.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanSchedule"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Schedule","description":"Updates the specified scan schedule.","operationId":"updateSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified scan schedule.","required":false,"schema":{"$ref":"#/definitions/ScanSchedule"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"scheduleId","in":"path","description":"The identifier of the scan schedule.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Schedule","description":"Deletes the specified scan schedule from the site.","operationId":"deleteSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"scheduleId","in":"path","description":"The identifier of the scan schedule.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_template":{"get":{"tags":["Site"],"summary":"Site Scan Template","description":"Retrieves the resource of the scan template assigned to the site.","operationId":"getSiteScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTemplate"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Template","description":"Updates the assigned scan template to the site.","operationId":"setSiteScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the scan template.","required":false,"schema":{"type":"string"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scans":{"get":{"tags":["Scan"],"summary":"Site Scans","description":"Returns the scans for the specified site.","operationId":"getSiteScans","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"active","in":"query","description":"Return running scans or past scans (true/false value).","required":false,"type":"boolean","default":false,"enum":["true","false"]},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Scan»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan"],"summary":"Site Scans","description":"Starts a scan for the specified site.","operationId":"startScan","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details for the scan.","required":false,"schema":{"$ref":"#/definitions/AdhocScan"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«ScanID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/shared_credentials":{"get":{"tags":["Site"],"summary":"Assigned Shared Credentials","description":"Retrieve all of the shared credentials assigned to the site. These shared credentials can be enabled/disabled for the site's scan.","operationId":"getSiteSharedCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SiteSharedCredential»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/shared_credentials/{credentialId}/enabled":{"put":{"tags":["Site"],"summary":"Assigned Shared Credential Enablement","description":"Enable or disable the shared credential for the site's scans.","operationId":"enableSharedCredentialOnSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Flag indicating whether the shared credential is enabled for the site's scans.","required":false,"schema":{"type":"boolean"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the shared credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/site_credentials":{"get":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Retrieves all defined site credential resources.","operationId":"getSiteCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SiteCredential»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Creates a new site credential.","operationId":"createSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of a site credential.","required":false,"schema":{"$ref":"#/definitions/SiteCredential"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/CreatedReference«CredentialID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"A CIFS credential","source":"{\n \"name\": \"CIFS Administrator\",\n \"description\": \"This is a cifs credential for an administrator. Credential is disabled for use in site scans and restricted to a single host for authentication.\",\n \"enabled\": false,\n \"account\": {\n \"service\": \"cifs\",\n \"username\": \"joe_smith@acme.com\",\n \"password\": \"******\",\n \"domain\": \"acme\"\n },\n \"hostRestriction\": \"machine1.acme.com\"\n}"},{"lang":"A Microsoft SQL Server credential","source":"{\n \"name\": \"MS SQL Administrator\",\n \"description\": \"This is an administrator credential for a Microsoft SQL Server database. Configured to use windows authentication. Credential is disabled for use in site scans.\",\n \"enabled\": false,\n \"account\": {\n \"service\": \"ms-sql\",\n \"database\": \"usersdb\",\n \"useWindowsAuthentication\": true,\n \"domain\": \"acme\",\n \"username\": \"admin\",\n \"password\": \"******\"\n },\n \"hostRestriction\": \"machine1.acme.com\"\n}\n"},{"lang":"An Oracle database credential","source":"{\n \"name\": \"Oracle DB Administrator\",\n \"description\": \"This is an administrator credential for an Oracle database. Credential is restricted to a single host and port for authentication.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"oracle\",\n \"sid\": \"usersdb\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"enumerateSids\": true,\n \"oracleListenerPassword\": \"******\"\n },\n \"hostRestriction\": \"192.168.1.1\",\n \"portRestriction\": 1521\n}\n"},{"lang":"An SNMPv3 credential","source":"{\n \"name\": \"SNMP v3 Administator\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"snmpv3\",\n \"authenticationType\": \"md5\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"privacyType\": \"aes-256\",\n \"privacyPassword\": \"******\"\n }\n}\n"},{"lang":"An SSH credential","source":"{\n \"name\": \"SSH Administrator\",\n \"description\": \"This is an SSH credential for an administrator. Credential is enabled for use in site scans.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"admin\",\n \"password\": \"******\"\n }\n}\n"},{"lang":"An SSH credential using sudo+su permission elevation","source":"{\n \"name\": \"SSH User (permission elevation with sudo+su)\",\n \"description\": \"This is an SSH credential for an non-administrative user. Credential is configured to perform permission elevation using sudo+su for additional access.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"jsmith\",\n \"password\": \"******\",\n \"permissionElevation\": \"sudosu\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"******\"\n }\n}\n"},{"lang":"An SSH public key credential","source":"{\n \"name\": \"SSH Public Key credential (permission elevation with sudo)\",\n \"description\": \"This is an SSH credential for a non-administrative user using a PEM-format private key. Credential is also configured to elevate permissions using sudo.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"ssh-key\",\n \"username\": \"admin\",\n \"privateKeyPassword\": \"*******\",\n \"pemKey\": \"-----BEGIN RSA PRIVATE KEY-----\\nProc-Type: 4,ENCRYPTED\\nDEK-Info: AES-128-CBC,0D364155CB54D4B485BDB3B11B76BF59\\n\\nGLH7n9qeWzZ43g8d5ZNo9BcSWGXo7i8yd3ig9SLKXJd9GoxOrI4OepxZbhOJFDC9\\nXer799R8M4+ZGUwIC14R4lfzgKjcqEBCzya/c99MxK9Haz8pt5BjTMtUQRWO5y+/\\nyySosHRVebB05TuMhmLnJkNnDfTYwT+Hnvdhu/2ArEm2FN9Rr+guumwhQeGxUha5\\n7zjjSimLYjuU2uayjgFLfnh9g/Fe24qmHCw80z+nuHsm9WMWeoeOdmMrMmxhLxUb\\nb+zYZs/xRYjKgBMTRiXNSK9UIy21t2+7TUzeyDwfvHq0f5KpinhD1vzYSL+N0k/H\\ndg6vqM1gD/DLb+eKoAGpXTE0gpHWcXLg526ivlyZEpAxbuyGPVQ+7IIGytjxN7lG\\nJyvbk3fpKDwIJLDOFN4eb9DUaUoqyarqVl44BZhcs7mM0Cvn49IA7PfhcznLv4rJ\\netAoZ2Tjt0AiM774+4X29EaYBGXKGC3SYKfiznoEEy1Jpi6Akwxz4FKCEazH1wce\\nUaUS/N8VbquMPTqcLjCfoztdOgk65j4FczGt22CtGz4Ns8XB0KRM9fcVQFD4ZmRQ\\ni9Sr2onZUAMuvg3R6ZNdpm7FtQhNEpqV432TJdNZEMbXlDmG61P2vgILugKmu56r\\ngZfgI1QMUSUzZrnH+DXn0GY9KycRKTpY6L8PSUeTVyhDUFlTrTchvbnFf7LpVRRj\\n0+99EUxQFIogXt2rNuj6qioEpabh6rGtIPjICEkue75n2Y4Eu+pdPpSFAPNXLuMB\\nCcvoydmxWkBcq/wrCWcTKdKbGKXEj1xvHXAdUwcmlhXpn1igxcwRtcpwrN8cyRRB\\nddc1dDX6X/6iEnnWdDDWHZYjaMLUWVO0pPXzSEsZMFhS3wPvY1lg1Ertiag6DD0Q\\nwnJq19fJ5M8ehu9qMBdHgPIWdcZBMXSvaQqZ8gBtMO5UyuLA5BTP0yb6Jh3foXCq\\nCPihqYSCGUtXzupJCr/oE+jOaYNWjL5icEU0llA6lr71WWdj3b1OwrUTlrmgA0nK\\nxZu6LrqRT+nxbd4phYbkqmhXccq9H/d8pcZwKwPtF+z8HoZXSddaACYFAqY4eaxa\\nNRk2Zt1JJ+tUsNT9LLV1tUrQ+q1JsKlJp7LW60loljiex8uadsvzwnKIdoom8q0I\\nroXHdrwwqyubf4yYApRckbgzW9gLPbclKSqsVFGsDB+KysDYmg3QlTpkrgGl2555\\naQ7Z2TWWvcVL3y7z1l1F238m11LxKUY8Uvu7enpQ/gTrqQ1qqIi2/yv+LvZmAXWV\\nCFO2lMafpmmHjHEAI5ifXYzZlHCXYBHGHYJdGALFuhODiQqF4pOJI8CX/00msnlJ\\nbMH0+dGnk2AviiaLXb7eCZ7mELCX+Ah+00UU75Vdv7O3vhGHpjuMULvbLW2uo+cw\\n6rogJ4SfUBb0t+yS970Xty650DgpHYxCzDwZZzrQqPuX6SeOD8AnXuJL3cl3B5YU\\n60IPVJPsONIwvJlvZuiij4V8L95usGtvDVsexBKQlj3sSVZ5egICMBjkduEyDl3O\\nxOZtdnqktsWNF5XYUfa/8/HUYnN35g0UktpmKlg0yxhAxUAn4lENAY8xvhMGsSCO\\n-----END RSA PRIVATE KEY-----\",\n \"permissionElevation\": \"sudo\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"*******\"\n }\n}\n"}]},"put":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Updates multiple site credentials.","operationId":"setSiteCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"A list of site credentials resources.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SiteCredential"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Deletes all site credentials from the site.","operationId":"deleteAllSiteCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/site_credentials/{credentialId}":{"get":{"tags":["Site"],"summary":"Site Scan Credential","description":"Retrieves the specified site credential.","operationId":"getSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SiteCredential"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Credential","description":"Updates the specified site credential.","operationId":"updateSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param2","description":"The specification of the site credential to update.","required":false,"schema":{"$ref":"#/definitions/SiteCredential"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Credential","description":"Deletes the specified site credential.","operationId":"deleteSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/site_credentials/{credentialId}/enabled":{"put":{"tags":["Site"],"summary":"Site Credential Enablement","description":"Enable or disable the site credential for scans.","operationId":"enableSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Flag indicating whether the credential is enabled for use during the scan.","required":false,"schema":{"type":"boolean"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/tags":{"get":{"tags":["Site"],"summary":"Site Tags","description":"Retrieves the list of tags added to the sites.","operationId":"getSiteTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Tag»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Tags","description":"Updates the site's list of tags.","operationId":"setSiteTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"A list of tag identifiers to replace the site's tags.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/tags/{tagId}":{"put":{"tags":["Site"],"summary":"Site Tag","description":"Adds a tag to the site.","operationId":"addSiteTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Tag","description":"Removes the specified tag from the site's tags.","operationId":"removeSiteTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/users":{"get":{"tags":["Site"],"summary":"Site Users Access","description":"Retrieve the list of non-administrator users that have access to the site.","operationId":"getSiteUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«User»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Users Access","description":"Grants a non-administrator user access to the specified site.","operationId":"addSiteUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the user.","required":false,"schema":{"type":"integer","format":"int32"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«UserID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Users Access","description":"Updates the site's access list.","operationId":"setSiteUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"A list of user identifiers to replace the site's access list.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/users/{userId}":{"delete":{"tags":["Site"],"summary":"Site User Access","description":"Removes the specified user from the site's access list.","operationId":"removeSiteUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"userId","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/web_authentication/html_forms":{"get":{"tags":["Site"],"summary":"Web Authentication HTML Forms","description":"Retrieves all HTML form authentications configured in the site.","operationId":"getWebAuthHtmlForms","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«WebFormAuthentication»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/web_authentication/http_headers":{"get":{"tags":["Site"],"summary":"Web Authentication HTTP Headers","description":"Retrieves all HTTP header authentications configured in the site.","operationId":"getWebAuthHTTPHeaders","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«WebHeaderAuthentication»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/software":{"get":{"tags":["Asset"],"summary":"Software","description":"Returns all software enumerated on any asset.","operationId":"getSoftwares","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Software»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/software/{id}":{"get":{"tags":["Asset"],"summary":"Software","description":"Returns the details for software.","operationId":"getSoftware","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the software.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Software"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions":{"get":{"tags":["Vulnerability"],"summary":"Solutions","description":"Returns the details for all solutions.","operationId":"getSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Solution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}":{"get":{"tags":["Vulnerability"],"summary":"Solution","description":"Returns the details for a solution that can remediate one or more vulnerabilities.","operationId":"getSolution","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Solution"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}/prerequisites":{"get":{"tags":["Vulnerability"],"summary":"Solution Prerequisites","description":"Returns the solutions that must be executed in order for a solution to resolve a vulnerability.","operationId":"getPrerequisiteSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SolutionNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}/supersedes":{"get":{"tags":["Vulnerability"],"summary":"Superseded Solutions","description":"Returns the solutions that are superseded by this solution.","operationId":"getSupersededSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Solution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}/superseding":{"get":{"tags":["Vulnerability"],"summary":"Superseding Solutions","description":"Returns the solutions that supersede this solution.","operationId":"getSupersedingSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"},{"name":"rollup","in":"query","description":"Whether to return only highest-level \"rollup\" superseding solutions.","required":false,"type":"boolean","default":true}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Solution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sonar_queries":{"get":{"tags":["Asset Discovery"],"summary":"Sonar Queries","description":"Returns all sonar queries.","operationId":"getSonarQueries","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SonarQuery»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Asset Discovery"],"summary":"Sonar Queries","description":"Creates a sonar query.","operationId":"createSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"param0","required":true,"schema":{"$ref":"#/definitions/SonarQuery"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«DiscoveryQueryID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" }\n ]\n },\n \"name\": \"Assets In IP Range\"\n}"},{"lang":"Recently Scanned Rapid7 Assets","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"domain-contains\", \"domain\": \"acme.com\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned ACME Assets\"\n}"},{"lang":"Recently Scanned Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned Assets in IP Range\"\n}"}]}},"/api/3/sonar_queries/search":{"post":{"tags":["Asset Discovery"],"summary":"Sonar Query Search","description":"Executes a Sonar query to discover assets with the given search criteria.","operationId":"sonarQuerySearch","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"param0","required":true,"schema":{"$ref":"#/definitions/SonarCriteria"}}],"responses":{"200":{"description":"OK","schema":{"type":"array","items":{"$ref":"#/definitions/DiscoveryAsset"}},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets in IP Range","source":"{\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" }\n ]\n}"},{"lang":"Recently Scanned Rapid7 Assets","source":"{\n \"filters\": [\n { \"type\": \"domain-contains\", \"domain\": \"acme.com\"},\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\"}\n ]\n}"},{"lang":"Recently Scanned Assets in IP Range","source":"{\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n}"}]}},"/api/3/sonar_queries/{id}":{"get":{"tags":["Asset Discovery"],"summary":"Sonar Query","description":"Returns a sonar query.","operationId":"getSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SonarQuery"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Discovery"],"summary":"Sonar Query","description":"Updates a sonar query.","operationId":"updateSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"},{"in":"body","name":"param1","description":"param1","required":true,"schema":{"$ref":"#/definitions/SonarQuery"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" }\n ]\n },\n \"name\": \"Assets In IP Range\"\n}"},{"lang":"Recently Scanned Rapid7 Assets","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"domain-contains\", \"domain\": \"acme.com\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned ACME Assets\"\n}"},{"lang":"Recently Scanned Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned Assets in IP Range\"\n}"}]},"delete":{"tags":["Asset Discovery"],"summary":"Sonar Query","description":"Removes a sonar query.","operationId":"deleteSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sonar_queries/{id}/assets":{"get":{"tags":["Asset Discovery"],"summary":"Sonar Query Assets","description":"Returns the assets that are discovered by a Sonar query.","operationId":"getSonarQueryAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«DiscoveryAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags":{"get":{"tags":["Tag"],"summary":"Tags","description":"Returns all tags.","operationId":"getTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"name","in":"query","description":"name","required":false,"type":"string"},{"name":"type","in":"query","description":"type","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Tag»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Tag"],"summary":"Tags","description":"Creates a new tag.","operationId":"createTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the tag.","required":false,"schema":{"$ref":"#/definitions/Tag"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«TagID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}":{"get":{"tags":["Tag"],"summary":"Tag","description":"Returns a tag.","operationId":"getTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Tag"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag","description":"Updates the details of a tag. For more information about accepted fields for the tag search criteria see the PUT /search_criteria documentation.","operationId":"updateTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the tag.","required":false,"schema":{"$ref":"#/definitions/Tag"}},{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag","description":"Deletes the tag.","operationId":"deleteTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/asset_groups":{"get":{"tags":["Tag"],"summary":"Tag Asset Groups","description":"Returns the asset groups associated with the tag.","operationId":"getTagAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetGroupID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag Asset Groups","description":"Sets the asset groups associated with the tag.","operationId":"setTaggedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The asset groups to add to the tag.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Asset Groups","description":"Removes the associations between the tag and all asset groups.","operationId":"untagAllAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/asset_groups/{assetGroupId}":{"put":{"tags":["Tag"],"summary":"Tag Asset Group","description":"Adds an asset group to this tag.","operationId":"tagAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The asset group identifier.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Asset Group","description":"Removes an asset group from this tag.","operationId":"untagAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The asset group identifier.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/assets":{"get":{"tags":["Tag"],"summary":"Tag Assets","description":"Returns the assets tagged with a tag.","operationId":"getTaggedAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/TaggedAssetReferences"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/assets/{assetId}":{"put":{"tags":["Tag"],"summary":"Tag Asset","description":"Adds an asset to the tag.","operationId":"tagAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Asset","description":"Removes an asset from the tag. Note: The asset must be added through the asset or tag, if the asset is added using a site, asset group, or search criteria this will not remove the asset.","operationId":"untagAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/search_criteria":{"get":{"tags":["Tag"],"summary":"Tag Search Criteria","description":"Returns the search criteria associated with the tag.","operationId":"getTagSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SearchCriteria"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag Search Criteria","description":"Updates the search criteria associated with the tag. \n\nThe following table outlines the search criteria fields and the available operators: \n| Field | Operators | \n| ---------- | ---------------- | \n| asset name | is,is not,starts with,ends with,contains,does not contain,is empty,is not empty,is like,not like | \n| asset risk score | is,is not,in range,greater than,less than | \n| container image | is,is not,starts with,ends with,contains,does not contain,is like,not like | \n| container status | is,is not | \n| containers | are | \n| CVE IDs | is,is not,contains,does not contain | \n| CVSS Access Complexity | is,is not |\n| CVSS Authentication Required | is,is not |\n| CVSS Access Vector | is,is not |\n| CVSS Availability Impact | is,is not |\n| CVSS Confidentiality Impact | is,is not |\n| CVSS Integrity Impact | is,is not |\n| CVSS Access Complexity | is,is not |\n| host type | in,not in | \n| asset IP Address | is,is not,in range,not in range,is like,not like | \n| asset IP Address Type | in,not in | \n| asset last scan date | is on or before,is on or after,is between,is earlier than,is within the last | \n| mobile device last sync time | is within the last,is earlier than | \n| open ports | is,is not,in range | \n| asset operating system | contains,does not contain,is empty,is not empty | \n| asset alternate address type | in | \n| asset PCI compliance | is | \n| asset service name | contains,does not contain | \n| asset site ID | in,not in | \n| asset software | contains,does not contain| \n| asset Criticality tag | is,is not,is greater than,is less than,is applied,is not applied | \n| asset Custom tag | is,is not,starts with, ends with,contains,does not contain,is applied,is not applied | \n| asset Location tag | is,is not,starts with,ends with,contains,does not contain,is applied,is not applied | \n| asset Owner tag | is,is not,starts with,ends with,contains,does not contain,is applied,is not applied | \n| asset vulnerability validated status | are | \n| asset VAsset cluster | is,is not,contains,does not contain,starts with | \n| asset VAsset datacenter | is,is not | \n| asset VAsset host name | is,is not,contains,does not contain,starts with | \n| asset VAsset power state | in,not in | \n| asset VAsset resource pool path | contains,does not contain | \n| asset vulnerability assessed | is on or before,is on or after,is between,is earlier than,is within the last | \n| asset vulnerability category | is,is not,starts with,ends with,contains,does not contain| \n| asset vulnerability CVSS score | is,is not,in range,is greater than,is less than | \n| asset vulnerability exposures | includes,does not include | \n| asset vulnerability title | contains,does not contain,is,is not,starts with,ends with | \n\nThe following table outlines the operators and the values associated with them: \n| Operator | Values | \n| -------- | ------ | \n| are | A single string property named \"value\" | \n| is between | A number property named \"lower\" and a number property named \"upper\" | \n| contains | A single string property named \"value\" | \n| does not contain | A single string property named \"value\" | \n| is earlier than | A single number property named \"value\" | \n| ends with | A single string property named \"value\" | \n| is greater than | A single number property named \"value\" | \n| in | An array property named \"values\" | \n| not in | An array property named \"values\" | \n| in range | A number property named \"lower\" and a number property named \"upper\" | \n| includes | An array property named \"values\" | \n| is | A single string property named \"value\" | \n| is not | A single string property named \"value\" | \n| is applied | No value | \n| is not applied | No value | \n| is empty | No value | \n| is not empty | No value | \n| less than | A single number property named \"value\" | \n| like | A single string property named \"value\" | \n| not contains | A single string property named \"value\" | \n| not in range | A number property named \"lower\" and a number property named \"upper\" | \n| not like | A single string property named \"value\" | \n| is on or after | A single string property named \"value\", which is the date in ISO8601 format (yyyy-MM-dd) | \n| is on or before | A single string property named \"value\", which is the date in ISO8601 format (yyyy-MM-dd) | \n| starts with | A single string property named \"value\" | \n| is within the last | A single number property named \"value\" | \n\nThe following fields have enumerated values: \n| Field | Acceptable Values | \n| ----- | ----------------- | \n| containers | 0=present, 1=not present | \n| asset vulnerability validated status | 0=present, 1=not present | \n| asset PCI compliance | 0=fail, 1=pass | \n| asset alternate address type | 0=IPv4, 1=IPv6 | \n| asset IP Address Type | 0=IPv4, 1=IPv6 | \n| host type | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | \n| CVSS Access Complexity | L=Low, M=Medium, H=High | \n| CVSS Integrity Impact | N=None, P=Partial, C=Complete | \n| CVSS Confidentiality Impact | N=None, P=Partial, C=Complete | \n| CVSS Availability Impact | N=None, P=Partial, C=Complete | \n| CVSS Access Vector | L=Local, A=Adjacent, N=Network | \n| CVSS Authentication Required | N=None, S=Single, M=Multiple | \n| CVSS Access Complexity | L=Low, M=Medium, H=High | \n| container status | created, running, paused, restarting, exited, dead, unknown | \n","operationId":"updateTagSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the search criteria.","required":false,"schema":{"$ref":"#/definitions/SearchCriteria"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Search Criteria","description":"Removes the search criteria associated with the tag.","operationId":"removeTagSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/sites":{"get":{"tags":["Tag"],"summary":"Tag Sites","description":"Returns the sites associated with the tag.","operationId":"getTaggedSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SiteID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag Sites","description":"Sets the sites associated with the tag.","operationId":"setTaggedSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The sites to add to the tag.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Sites","description":"Removes the associations between the tag and the sites.","operationId":"removeTaggedSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/sites/{siteId}":{"put":{"tags":["Tag"],"summary":"Tag Site","description":"Adds a site to this tag.","operationId":"tagSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Site","description":"Removes a site from this tag.","operationId":"untagSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users":{"get":{"tags":["User"],"summary":"Users","description":"Returns all defined users. Global Administrator","operationId":"getUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«User»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["User"],"summary":"Users","description":"Creates a new user. Global Administrator","operationId":"createUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the user.","required":false,"schema":{"$ref":"#/definitions/User"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«UserID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}":{"get":{"tags":["User"],"summary":"User","description":"Returns the details for a user.Global Administrator, Current User","operationId":"getUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/User"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"User","description":"Updates the details of a user. Global Administrator","operationId":"updateUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the user.","required":false,"schema":{"$ref":"#/definitions/User"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/2FA":{"get":{"tags":["User"],"summary":"Two-Factor Authentication","description":"Retrieves the current authentication token seed (key) for the user, if configured.","operationId":"getTwoFactorAuthenticationKey","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/TokenResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["User"],"summary":"Two-Factor Authentication","description":"Regenerates a new authentication token seed (key) and updates it for the user. This key may be then be used in the appropriate 2FA authenticator.","operationId":"regenerateTwoFactorAuthentication","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/TokenResource"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Two-Factor Authentication","description":"Sets the authentication token seed (key) for the user. This key may be then be used in the appropriate 2FA authenticator.","operationId":"setTwoFactorAuthentication","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The authentication token seed (key) to use for the user.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/asset_groups":{"get":{"tags":["User"],"summary":"Asset Groups Access","description":"Returns the asset groups to which the user has access.","operationId":"getUserAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetGroupID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Asset Groups Access","description":"Updates the asset groups to which the user has access. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator","operationId":"setUserAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The identifiers of the asset groups to grant the user access to. Ignored if user has access to `allAssetGroups`.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Asset Groups Access","description":"Revokes access to all asset groups from the user.","operationId":"removeAllUserAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/asset_groups/{assetGroupId}":{"put":{"tags":["User"],"summary":"Asset Group Access","description":"Grants the user access to the asset group. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator","operationId":"addUserAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Asset Group Access","description":"Grants the user access to the asset group. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator","operationId":"removeUserAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/lock":{"delete":{"tags":["User"],"summary":"Unlock Account","description":"Unlocks a locked user account that has too many failed authentication attempts. Disabled accounts may not be unlocked.","operationId":"unlockUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/password":{"put":{"tags":["User"],"summary":"Password Reset","description":"Changes the password for the user. Users may only change their own password.","operationId":"resetPassword","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The new password to set.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/privileges":{"get":{"tags":["User"],"summary":"User Privileges","description":"Returns the privileges granted to the user by their role. Global Administrator","operationId":"getUserPrivileges","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Privileges"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/sites":{"get":{"tags":["User"],"summary":"Sites Access","description":"Returns the sites to which the user has access.","operationId":"getUserSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SiteID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Sites Access","description":"Updates the sites to which the user has access. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator","operationId":"setUserSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The identifiers of the sites to grant the user access to. Ignored if the user has access to `allSites`.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Sites Access","description":"Revokes access to all sites from the user.","operationId":"removeAllUserSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/sites/{siteId}":{"put":{"tags":["User"],"summary":"Site Access","description":"Grants the user access to the site. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator","operationId":"addUserSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Site Access","description":"Grants the user access to the site. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator","operationId":"removeUserSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Vulnerabilities","description":"Returns all vulnerabilities that can be assessed during a scan.","operationId":"getVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Vulnerability»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability","description":"Returns the details for a vulnerability.","operationId":"getVulnerability","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Vulnerability"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/assets":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Affected Assets","description":"Get the assets affected by the vulnerability.","operationId":"getAffectedAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/checks":{"get":{"tags":["Vulnerability Check"],"summary":"Vulnerability Checks","description":"Returns the vulnerability checks that assess for a specific vulnerability during a scan.","operationId":"getVulnerabilityChecksForVulnerability","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityCheckID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/exploits":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Exploits","description":"Returns the exploits that can be used to exploit a vulnerability.","operationId":"getVulnerabilityExploits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Exploit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/malware_kits":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Malware Kits","description":"Returns the malware kits that are known to be used to exploit the vulnerability.","operationId":"getVulnerabilityMalwareKits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«MalwareKit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/references":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability References","description":"Returns the external references that may be associated to a vulnerability.","operationId":"getVulnerabilityReferences_1","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityReference»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/solutions":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Solutions","description":"Returns all solutions (across all platforms) that may be used to remediate this vulnerability.","operationId":"getVulnerabilitySolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SolutionNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_categories":{"get":{"tags":["Vulnerability"],"summary":"Categories","description":"Returns all vulnerabilities categories that can be assigned to a vulnerability. These categories group and label vulnerabilities by general purpose, affected systems, vendor, etc.","operationId":"getVulnerabilityCategories","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityCategory»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_categories/{id}":{"get":{"tags":["Vulnerability"],"summary":"Category","description":"Returns the details for a vulnerability category.","operationId":"getVulnerabilityCategory","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability category.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityCategory"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_categories/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Category Vulnerabilities","description":"Returns hypermedia links to the vulnerabilities that are in a vulnerability category.","operationId":"getVulnerabilityCategoryVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability category.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_checks":{"get":{"tags":["Vulnerability Check"],"summary":"Checks","description":"Returns vulnerability checks. Optional search and filtering parameters may be supplied to refine the results. Searching allows full text search of the vulnerability details a check is related to.","operationId":"getVulnerabilityChecks","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"search","in":"query","description":"Vulnerability search term to find vulnerability checks for. e.g. `\"ssh\"`.","required":false,"type":"string"},{"name":"safe","in":"query","description":"Whether to return vulnerability checks that are considered \"safe\" to run. Defaults to return safe and unsafe checks.","required":false,"type":"boolean"},{"name":"potential","in":"query","description":"Whether to only return checks that result in potentially vulnerable results. Defaults to return all checks.","required":false,"type":"boolean"},{"name":"requiresCredentials","in":"query","description":"Whether to only return checks that require credentials in order to successfully execute. Defaults to return all checks.","required":false,"type":"boolean"},{"name":"unique","in":"query","description":"Whether to only return checks that guarantee to be executed once-and-only once on a host resulting in a unique result. False returns checks that can result in multiple occurrences of the same vulnerability on a host.","required":false,"type":"boolean"},{"name":"type","in":"query","description":"The type of vulnerability checks to return. See Check Types for all available types.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityCheck»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_checks/{id}":{"get":{"tags":["Vulnerability Check"],"summary":"Check","description":"Returns the vulnerability check.","operationId":"vulnerabilityCheck","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability check.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityCheck"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_checks_types":{"get":{"tags":["Vulnerability Check"],"summary":"Check Types","description":"Returns the vulnerability check types. The type groups related vulnerability checks by their purpose, property, or related characteristic.","operationId":"getVulnerabilityCheckTypes","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityCheckTypeID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions":{"get":{"tags":["Vulnerability Exception"],"summary":"Exceptions","description":"Returns all exceptions defined on vulnerabilities.","operationId":"getVulnerabilityExceptions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityException»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Vulnerability Exception"],"summary":"Exceptions","description":"Creates a vulnerability exception.","operationId":"createVulnerabilityException","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The vulnerability exception to create.","required":false,"schema":{"$ref":"#/definitions/VulnerabilityException"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«VulnerabilityExceptionID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions/{id}":{"get":{"tags":["Vulnerability Exception"],"summary":"Exception","description":"Returns an exception made on a vulnerability.","operationId":"getVulnerabilityException","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability exception.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityException"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Vulnerability Exception"],"summary":"Exception","description":"Removes an exception made on a vulnerability.","operationId":"removeVulnerabilityException","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions/{id}/expires":{"get":{"tags":["Vulnerability Exception"],"summary":"Exception Expiration","description":"Get the expiration date for a vulnerability exception.","operationId":"getVulnerabilityExceptionExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Vulnerability Exception"],"summary":"Exception Expiration","description":"Set the expiration date for a vulnerability exception. This must be a valid date in the future.","operationId":"updateVulnerabilityExceptionExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"param1","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions/{id}/{status}":{"post":{"tags":["Vulnerability Exception"],"summary":"Exception Status","description":"Update the status of the vulnerability exception. The status can be one of: `\"recall\"`, `\"approve\"`, or `\"reject\"`.","operationId":"updateVulnerabilityExceptionStatus","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"},{"name":"status","in":"path","description":"Exception Status","required":false,"type":"string","enum":["recall","approve","reject"]},{"in":"body","name":"param2","description":"param2","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_references":{"get":{"tags":["Vulnerability"],"summary":"References","description":"Returns the external references that may be associated to a vulnerability.","operationId":"getVulnerabilityReferences","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityReference»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_references/{id}":{"get":{"tags":["Vulnerability"],"summary":"Reference","description":"Returns an external vulnerability reference.","operationId":"getVulnerabilityReference","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability reference.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityReference"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_references/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Reference Vulnerabilities","description":"Returns the vulnerabilities that are referenced by an external reference.","operationId":"getVulnerabilityReferenceVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Vulnerability»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}}},"securityDefinitions":{"Basic":{"type":"basic"}},"definitions":{"Account":{"type":"object","discriminator":"","properties":{"service":{"type":"string"}},"description":""},"AdditionalInformation":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"","description":"Hypertext Markup Language (HTML) representation of the content."},"text":{"type":"string","example":"","description":"Textual representation of the content."}},"description":""},"Address":{"type":"object","discriminator":"","properties":{"ip":{"type":"string","example":"123.245.34.235","description":"The IPv4 or IPv6 address."},"mac":{"type":"string","example":"12:34:56:78:90:AB","description":"The Media Access Control (MAC) address. The format is six groups of two hexadecimal digits separated by colons."}},"description":""},"AdhocScan":{"type":"object","discriminator":"","properties":{"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine."},"hosts":{"type":"array","description":"The hosts that should be included as a part of the scan. This should be a mixture of IP Addresses and Hostnames as a String array.","items":{"type":"string"}},"name":{"type":"string","example":"","description":"The user-driven scan name for the scan."},"templateId":{"type":"string","example":"","description":"The identifier of the scan template"}},"description":""},"AdvisoryLink":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"https://support.microsoft.com/en-us/kb/4041689","description":"The hypertext reference for the vulnerability reference."},"rel":{"type":"string","example":"Advisory","description":"The relation of the hypermedia link, `\"Advisory\"`."}},"description":""},"Alert":{"type":"object","required":["enabled","name","notification"],"discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]}},"description":""},"AssessmentResult":{"type":"object","required":["status"],"discriminator":"","properties":{"checkId":{"type":"string","example":"ssh-openssh-x11uselocalhost-x11-forwarding-session-hijack","description":"The identifier of the vulnerability check."},"exceptions":{"type":"array","description":"If the result is vulnerable with exceptions applied, the identifier(s) of the exceptions actively applied to the result.","items":{"type":"integer","format":"int32"}},"key":{"type":"string","example":"","description":"An additional discriminating key used to uniquely identify between multiple instances of results on the same finding."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"port":{"type":"integer","format":"int32","example":22,"description":"The port of the service the result was discovered on."},"proof":{"type":"string","example":"OpenBSD OpenSSH 4.3 on Linux
","description":"The proof explaining why the result was found vulnerable. The proof may container embedded HTML formatting markup."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service the result was discovered on.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},"status":{"type":"string","example":"vulnerable-version","description":"The status of the vulnerability check result.","enum":["unknown","not-vulnerable","vulnerable","vulnerable-version","vulnerable-potential","vulnerable-with-exception-applied","vulnerable-version-with-exception-applied","vulnerable-potential-with-exception-applied"]}},"description":""},"Asset":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"All addresses discovered on the asset.","items":{"$ref":"#/definitions/Address"}},"assessedForPolicies":{"type":"boolean","example":false,"description":"Whether the asset has been assessed for policies at least once.","readOnly":true},"assessedForVulnerabilities":{"type":"boolean","example":true,"description":"Whether the asset has been assessed for vulnerabilities at least once.","readOnly":true},"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the asset.","items":{"$ref":"#/definitions/Configuration"}},"databases":{"type":"array","description":"The databases enumerated on the asset.","items":{"$ref":"#/definitions/Database"}},"files":{"type":"array","description":"The files discovered with searching on the asset.","items":{"$ref":"#/definitions/File"}},"history":{"type":"array","description":"The history of changes to the asset over time.","readOnly":true,"items":{"$ref":"#/definitions/AssetHistory"}},"hostName":{"type":"string","example":"corporate-workstation-1102DC.acme.com","description":"The primary host name (local or FQDN) of the asset."},"hostNames":{"type":"array","description":"All host names or aliases discovered on the asset.","items":{"$ref":"#/definitions/HostName"}},"id":{"type":"integer","format":"int64","example":282,"description":"The identifier of the asset."},"ids":{"type":"array","description":"Unique identifiers found on the asset, such as hardware or operating system identifiers.","items":{"$ref":"#/definitions/UniqueId"}},"ip":{"type":"string","example":"182.34.74.202","description":"The primary IPv4 or IPv6 address of the asset."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"mac":{"type":"string","example":"AB:12:CD:34:EF:56","description":"The primary Media Access Control (MAC) address of the asset. The format is six groups of two hexadecimal digits separated by colons."},"os":{"type":"string","example":"Microsoft Windows Server 2008 Enterprise Edition SP1","description":"The full description of the operating system of the asset."},"osFingerprint":{"example":"","description":"The details of the operating system of the asset.","$ref":"#/definitions/OperatingSystem"},"rawRiskScore":{"type":"number","format":"double","example":31214.3,"description":"The base risk score of the asset.","readOnly":true},"riskScore":{"type":"number","format":"double","example":37457.16,"description":"The risk score (with criticality adjustments) of the asset.","readOnly":true},"services":{"type":"array","description":"The services discovered on the asset.","items":{"$ref":"#/definitions/Service"}},"software":{"type":"array","description":"The software discovered on the asset.","items":{"$ref":"#/definitions/Software"}},"type":{"type":"string","example":"","description":"The type of asset.","enum":["unknown","guest","hypervisor","physical","mobile"]},"userGroups":{"type":"array","description":"The group accounts enumerated on the asset.","items":{"$ref":"#/definitions/GroupAccount"}},"users":{"type":"array","description":"The user accounts enumerated on the asset.","items":{"$ref":"#/definitions/UserAccount"}},"vulnerabilities":{"example":"","description":"Summary information for vulnerabilities on the asset.","readOnly":true,"$ref":"#/definitions/AssetVulnerabilities"}},"description":""},"AssetCreate":{"type":"object","required":["date"],"discriminator":"","properties":{"addresses":{"type":"array","description":"All addresses discovered on the asset.","items":{"$ref":"#/definitions/Address"}},"assessedForPolicies":{"type":"boolean","example":false,"description":"Whether the asset has been assessed for policies at least once.","readOnly":true},"assessedForVulnerabilities":{"type":"boolean","example":true,"description":"Whether the asset has been assessed for vulnerabilities at least once.","readOnly":true},"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the asset.","items":{"$ref":"#/definitions/Configuration"}},"cpe":{"type":"string","example":"","description":"The Common Platform Enumeration (CPE) of the operating system. This is the tertiary means of specifying the operating system fingerprint. Use `\"osFingerprint\"` or `\"os\"` as a more accurate means of defining the operating system."},"databases":{"type":"array","description":"The databases enumerated on the asset.","items":{"$ref":"#/definitions/Database"}},"date":{"type":"string","example":"","description":"The date the data was collected on the asset."},"description":{"type":"string","example":"","description":"The description of the source or collection of information on the asset. This description will appear in the history of the asset for future auditing purposes."},"files":{"type":"array","description":"The files discovered with searching on the asset.","items":{"$ref":"#/definitions/File"}},"history":{"type":"array","description":"The history of changes to the asset over time.","readOnly":true,"items":{"$ref":"#/definitions/AssetHistory"}},"hostName":{"example":"corporate-workstation-1102DC.acme.com","description":"The primary host name (local or FQDN) of the asset.","$ref":"#/definitions/HostName"},"hostNames":{"type":"array","description":"Additional host names for the asset.","items":{"$ref":"#/definitions/HostName"}},"id":{"type":"integer","format":"int64","example":282,"description":"The identifier of the asset."},"ids":{"type":"array","description":"Unique identifiers found on the asset, such as hardware or operating system identifiers.","items":{"$ref":"#/definitions/UniqueId"}},"ip":{"type":"string","example":"182.34.74.202","description":"The primary IPv4 or IPv6 address of the asset."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"mac":{"type":"string","example":"AB:12:CD:34:EF:56","description":"The primary Media Access Control (MAC) address of the asset. The format is six groups of two hexadecimal digits separated by colons."},"os":{"type":"string","example":"","description":"Free-form textual description of the operating system of the asset, typically from a fingerprinting source. This input will be parsed to produce a full fingerprint. This is the secondary means of specifying the operating system. Use `osFingerprint` for a more accurate definition."},"osFingerprint":{"example":"","description":"The details of the operating system of the asset. At least one of `vendor`, `family`, or `product` must be supplied. This is the preferred means of defining the operating system.","$ref":"#/definitions/OperatingSystem"},"rawRiskScore":{"type":"number","format":"double","example":31214.3,"description":"The base risk score of the asset.","readOnly":true},"riskScore":{"type":"number","format":"double","example":37457.16,"description":"The risk score (with criticality adjustments) of the asset.","readOnly":true},"services":{"type":"array","description":"The services discovered on the asset.","items":{"$ref":"#/definitions/Service"}},"software":{"type":"array","description":"The software discovered on the asset.","items":{"$ref":"#/definitions/Software"}},"type":{"type":"string","example":"","description":"The type of asset."},"userGroups":{"type":"array","description":"The group accounts enumerated on the asset.","items":{"$ref":"#/definitions/GroupAccount"}},"users":{"type":"array","description":"The user accounts enumerated on the asset.","items":{"$ref":"#/definitions/UserAccount"}},"vulnerabilities":{"example":"","description":"Summary information for vulnerabilities on the asset.","readOnly":true,"$ref":"#/definitions/AssetVulnerabilities"}},"description":""},"AssetCreatedOrUpdatedReference":{"type":"object","discriminator":"","properties":{"body":{"$ref":"#/definitions/ReferenceWith«AssetID,Link»"},"statusCode":{"type":"string","enum":["100","101","102","103","200","201","202","203","204","205","206","207","208","226","300","301","302","303","304","305","307","308","400","401","402","403","404","405","406","407","408","409","410","411","412","413","414","415","416","417","418","419","420","421","422","423","424","426","428","429","431","500","501","502","503","504","505","506","507","508","509","510","511"]}},"description":""},"AssetGroup":{"type":"object","required":["name","type"],"discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":768,"description":"The number of assets that belong to the asset group.","readOnly":true},"description":{"type":"string","example":"Assets with unacceptable high risk required immediate remediation.","description":"The description of the asset group."},"id":{"type":"integer","format":"int32","example":61,"description":"The identifier of the asset group.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"High Risk Assets","description":"The name of the asset group."},"riskScore":{"type":"number","format":"double","example":4457823.78,"description":"The total risk score of all assets that belong to the asset group.","readOnly":true},"searchCriteria":{"example":"","description":"Search criteria used to determine dynamic membership, if `type` is `\"dynamic\"`. ","$ref":"#/definitions/SearchCriteria"},"type":{"type":"string","example":"dynamic","description":"The type of the asset group.","enum":["static","dynamic"]},"vulnerabilities":{"example":"","description":"Summary information for distinct vulnerabilities found on the assets.","readOnly":true,"$ref":"#/definitions/Vulnerabilities"}},"description":""},"AssetHistory":{"type":"object","discriminator":"","properties":{"date":{"type":"string","example":"2018-04-09T06:23:49Z","description":"The date the asset information was collected or changed."},"description":{"type":"string","example":"","description":"Additional information describing the change."},"scanId":{"type":"integer","format":"int64","example":12,"description":"If a scan-oriented change, the identifier of the corresponding scan the asset was scanned in."},"type":{"type":"string","example":"SCAN","description":"The type of change. May be one of: \n| Type | Source of Data | \n| ----------------------------------- | ----------------------------------------------------------- | \n| `ASSET-IMPORT`, `EXTERNAL-IMPORT` | External source such as the API | \n| `EXTERNAL-IMPORT-APPSPIDER` | Rapid7 InsightAppSec (previously known as AppSpider) | \n| `SCAN` | Scan engine scan | \n| `ACTIVE-SYNC` | ActiveSync | \n| `SCAN-LOG-IMPORT` | Manual import of a scan log | \n| `VULNERABILITY_EXCEPTION_APPLIED` | Vulnerability exception applied | \n| `VULNERABILITY_EXCEPTION_UNAPPLIED` | Vulnerability exception unapplied |"},"user":{"type":"string","example":"","description":"If a vulnerability exception change, the login name of the user that performed the operation."},"version":{"type":"integer","format":"int32","example":8,"description":"The version number of the change (a chronological incrementing number starting from 1). "},"vulnerabilityExceptionId":{"type":"integer","format":"int32","example":"","description":"If a vulnerability exception change, the identifier of the vulnerability exception that caused the change."}},"description":""},"AssetPolicy":{"type":"object","discriminator":"","properties":{"benchmarkName":{"type":"string","example":"","description":"The name of the policy's benchmark."},"benchmarkVersion":{"type":"string","example":"","description":"The version number of the benchmark that includes the policy."},"category":{"type":"string","example":"","description":"A grouping of similar benchmarks based on their source, purpose, or other criteria. Examples include FDCC, USGCB, and CIS."},"description":{"type":"string","example":"","description":"The description of the policy."},"failedAssetsCount":{"type":"integer","format":"int32","example":"","description":"The number of assets that are not compliant with the policy. The assets considered in the calculation are based on the user's list of accessible assets."},"failedRulesCount":{"type":"integer","format":"int32","example":"","description":"The number of rules in the policy that are not compliant with any scanned assets. The assets considered in the calculation are based on the user's list of accessible assets."},"id":{"type":"string","example":"","description":"The textual representation of the policy identifier."},"isCustom":{"type":"boolean","example":false,"description":"A flag indicating whether the policy is custom."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"notApplicableAssetsCount":{"type":"integer","format":"int32","example":"","description":"The number of assets that were attempted to be scanned, but are not applicable to the policy. The assets considered in the calculation are based on the user's list of accessible assets."},"notApplicableRulesCount":{"type":"integer","format":"int32","example":"","description":"The number of rules in the policy that are not applicable with any scanned assets. The assets considered in the calculation are based on the user's list of accessible assets."},"passedAssetsCount":{"type":"integer","format":"int32","example":"","description":"The number of assets that are compliant with the policy. The assets considered in the calculation are based on the user's list of accessible assets."},"passedRulesCount":{"type":"integer","format":"int32","example":"","description":"The number of rules in the policy that are compliant with all scanned assets. The assets considered in the calculation are based on the user's list of accessible assets."},"policyName":{"type":"string","example":"","description":"The name of the policy."},"ruleCompliance":{"type":"number","format":"double","example":"","description":"The ratio of PASS results for the rules to the total number of rules in each policy."},"ruleComplianceDelta":{"type":"number","format":"double","example":"","description":"The change in rule compliance between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets."},"scope":{"type":"string","example":"","description":"The textual representation of the policy scope. Policies that are automatically available have `\"Built-in\"` scope, whereas policies created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"surrogateId":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy"},"title":{"type":"string","example":"","description":"The title of the policy as visible to the user."},"unscoredRules":{"type":"integer","format":"int32","example":"","description":"The number of rules defined in the policy with a role of \"unscored\". These rules will not affect rule compliance scoring for the policy."}},"description":""},"AssetPolicyAssessment":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"total":{"type":"integer","format":"int32","example":"","description":"The total number of assets."},"totalFailed":{"type":"integer","format":"int32","example":"","description":"The total number of assets that are not compliant."},"totalNotApplicable":{"type":"integer","format":"int32","example":"","description":"The total number of assets that are not applicable."},"totalPassed":{"type":"integer","format":"int32"}},"description":""},"AssetPolicyItem":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"description":{"type":"string","example":"","description":"A description of the policy rule or group."},"hasOverride":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has an active override applied to it. This field only applies to resources representing policy rules. "},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule or group."},"isUnscored":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has a role of `\"unscored\"`. This field only applies to resources representing policy rules."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy rule or group."},"policy":{"example":"","description":"Information about the policy.","$ref":"#/definitions/PolicyMetadataResource"},"rules":{"example":"","description":"A summary of rule compliance for multiple policy rules. This field only applies to resources representing policy groups.","$ref":"#/definitions/PolicyRuleAssessmentResource"},"scope":{"type":"string","example":"","description":"The textual representation of the policy rule/group scope. Policy rules or groups that are automatically available have `\"Built-in\"` scope, whereas policy rules or groups created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The asset's rule compliance status.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"title":{"type":"string","example":"","description":"The title of the policy rule, or group, as visible to the user."},"type":{"type":"string","example":"","description":"Indicates whether the resource represents either a policy rule or group.","enum":["rule","group"]}},"description":""},"AssetTag":{"type":"object","required":["name","type"],"discriminator":"","properties":{"color":{"type":"string","example":"default","description":"The color to use when rendering the tag in a user interface.","enum":["default","blue","green","orange","red","purple"]},"created":{"type":"string","example":"2017-10-07T23:50:01.205Z","description":"The date and time the tag was created."},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the tag.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Very High","description":"The name (label) of the tab."},"riskModifier":{"type":"object","example":"2.0","description":"The amount to adjust risk of an asset tagged with this tag. "},"searchCriteria":{"$ref":"#/definitions/SearchCriteria"},"source":{"type":"string","example":"built-in","description":"The source of the tag.","readOnly":true,"enum":["built-in","custom"]},"sources":{"type":"array","description":"The source(s) by which a tag is applied to an asset.","items":{"$ref":"#/definitions/TagAssetSource"}},"type":{"type":"string","example":"criticality","description":"The type of the tag.","enum":["custom","location","owner","criticality"]}},"description":""},"AssetVulnerabilities":{"type":"object","discriminator":"","properties":{"critical":{"type":"integer","format":"int64","example":16,"description":"The number of critical vulnerabilities.","readOnly":true},"exploits":{"type":"integer","format":"int64","example":4,"description":"The number of distinct exploits that can exploit any of the vulnerabilities on the asset.","readOnly":true},"malwareKits":{"type":"integer","format":"int64","example":0,"description":"The number of distinct malware kits that vulnerabilities on the asset are susceptible to.","readOnly":true},"moderate":{"type":"integer","format":"int64","example":3,"description":"The number of moderate vulnerabilities.","readOnly":true},"severe":{"type":"integer","format":"int64","example":76,"description":"The number of severe vulnerabilities.","readOnly":true},"total":{"type":"integer","format":"int64","example":95,"description":"The total number of vulnerabilities.","readOnly":true}},"description":""},"AuthenticationSettings":{"type":"object","discriminator":"","properties":{"2fa":{"type":"boolean","example":false,"description":"Whether two-factor authentication is enabled."},"loginLockThreshold":{"type":"integer","format":"int32","example":"true","description":"The maximum number of failed login attempts for an account becomes locked."}},"description":""},"AuthenticationSource":{"type":"object","discriminator":"","properties":{"external":{"type":"boolean","example":false,"description":"Whether the authentication source is external (true) or internal (false)."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the authentication source."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the authentication source."},"type":{"type":"string","example":"","description":"The type of the authentication source.","enum":["normal","kerberos","ldap","admin"]}},"description":""},"AvailableReportFormat":{"type":"object","discriminator":"","properties":{"format":{"type":"string","example":"pdf","description":"The output file-format of a report.","enum":["arf-xml","csv-export","cyberscope-xml","database-export","pdf","html","nexpose-simple-xml","oval-xml","qualys-xml","rtf","scap-xml","sql-query","text","xccdf-xml","xccdf-csv","xml","xml-export","xml-export-v2"]},"templates":{"type":"array","description":"The report template identifiers that can be used within a report format.","items":{"type":"string"}}},"description":""},"BackupsSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":0,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"0 bytes","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"BadRequestError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"400","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["400"]}},"description":""},"CPUInfo":{"type":"object","discriminator":"","properties":{"clockSpeed":{"type":"integer","format":"int32","example":2600,"description":"The clock speed of the host, in MHz."},"count":{"type":"integer","format":"int32","example":8,"description":"The number of CPUs."}},"description":""},"Configuration":{"type":"object","required":["name"],"discriminator":"","properties":{"name":{"type":"string","example":"","description":"The name of the configuration value."},"value":{"type":"string","example":"","description":"The configuration value."}},"description":""},"ConsoleCommandOutput":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"output":{"type":"string","example":"","description":"The output of the command that was executed."}},"description":""},"ContentDescription":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"A remote code execution vulnerability exists in the way that the scripting engine handles objects in memory in Microsoft Edge. ...","description":"Hypertext Markup Language (HTML) representation of the content."},"text":{"type":"string","example":"A remote code execution vulnerability exists in the way that the scripting engine handles objects in memory in Microsoft Edge. ...
","description":"Textual representation of the content."}},"description":""},"CreateAuthenticationSource":{"type":"object","discriminator":"","properties":{"type":{"type":"string","example":"","description":"The type of the authentication source to use to authenticate the user. Defaults to `normal`."}},"description":""},"CreatedOrUpdatedReference":{"type":"object","discriminator":"","properties":{"id":{"type":"object","example":"3","description":"The identifier of the resource created or updated."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference":{"type":"object","discriminator":"","properties":{"id":{"type":"object","example":"1","description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«AssetGroupID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«CredentialID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«DiscoveryQueryID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«EngineID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«PolicyOverrideID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«ScanID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«ScanTemplateID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"string","example":"1","description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«UserID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«VulnerabilityExceptionID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«VulnerabilityValidationID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«int,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"Criterion":{"type":"object","discriminator":"","properties":{"extras":{"type":"object"},"metaData":{"$ref":"#/definitions/IMetaData"},"metadata":{"$ref":"#/definitions/MetadataContainer"},"operator":{"type":"string","enum":["IS","IS_NOT","IS_APPLIED","IS_NOT_APPLIED","IN","NOT_IN","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","LESS_THAN","GREATER_THAN","IN_RANGE","NOT_IN_RANGE","INCLUDE","DO_NOT_INCLUDE","ON_OR_BEFORE","ON_OR_AFTER","BETWEEN","EARLIER_THAN","WITHIN_THE_LAST","IS_EMPTY","IS_NOT_EMPTY","ARE","LIKE","NOT_LIKE"]},"values":{"type":"array","items":{"type":"string"}}},"description":""},"Database":{"type":"object","required":["name"],"discriminator":"","properties":{"description":{"type":"string","example":"Microsoft SQL Server","description":"The description of the database instance."},"id":{"type":"integer","format":"int32","example":13,"description":"The identifier of the database."},"name":{"type":"string","example":"MSSQL","description":"The name of the database instance."}},"description":""},"DatabaseConnectionSettings":{"type":"object","discriminator":"","properties":{"maximumAdministrationPoolSize":{"type":"integer","format":"int32","example":-1,"description":"The maximum number of administrative connections in the connection pool. -1 means unlimited."},"maximumPoolSize":{"type":"integer","format":"int32","example":-1,"description":"${settings.database.connection.max}"},"maximumPreparedStatementPoolSize":{"type":"integer","format":"int32","example":256,"description":"The maximum number of prepared statements in the prepared statement pool. -1 means unlimited."}},"description":""},"DatabaseSettings":{"type":"object","discriminator":"","properties":{"connection":{"example":"","description":"Details connection settings for the database.","$ref":"#/definitions/DatabaseConnectionSettings"},"host":{"type":"string","example":"127.0.0.1","description":"The database host."},"maintenanceThreadPoolSize":{"type":"integer","format":"int32","example":20,"description":"The maximum number of parallel tasks when executing maintenance tasks."},"port":{"type":"integer","format":"int32","example":5432,"description":"The database port."},"url":{"type":"string","example":"//127.0.0.1:5432/nexpose","description":"The database connection URL."},"user":{"type":"string","example":"nxpgsql","description":"The database user."},"vendor":{"type":"string","example":"postgresql","description":"The database vendor."}},"description":""},"DatabaseSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":5364047843,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"5 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"DiscoveryAsset":{"type":"object","discriminator":"","properties":{"address":{"type":"string","example":"12.83.99.203","description":"The IP address of a discovered asset.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"desktop-27.acme.com","description":"The host name of a discovered asset.","readOnly":true}},"description":""},"DiscoveryConnection":{"type":"object","discriminator":"","properties":{"accessKeyId":{"type":"string","example":"","description":"The AWS credential access key identifier (only used for the AWS connection)."},"address":{"type":"string","example":"","description":"${discovery.connection.address}"},"arn":{"type":"string","example":"","description":"The AWS credential ARN (only used for the AWS connection)."},"awsSessionName":{"type":"string","example":"","description":"The AWS credential session name (only used for the AWS connection)."},"connectionType":{"type":"string","example":"","description":"The type of the discovery connection."},"eventSource":{"type":"string","example":"","description":"The event source type to use."},"exchangeServerHostname":{"type":"string","example":"","description":"The hostname of the exchange server to connect to."},"exchangeUser":{"type":"string","example":"","description":"The username used to connect to the exchange server."},"folderPath":{"type":"string","example":"","description":"The folder path to pull logs from."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the discovery connection.","readOnly":true},"ldapServer":{"type":"string","example":"","description":"The LDAP server to connect to."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Connection 1","description":"The discovery connection name."},"port":{"type":"integer","format":"int32","example":"","description":"The address used to connect to the discovery connection source."},"protocol":{"type":"string","example":"","description":"The protocol used to connect to the discovery connection source."},"region":{"type":"string","example":"","description":"The AWS region (only used for the AWS connection)."},"scanEngineIsInsideAWS":{"type":"boolean","example":false,"description":"Flag denoting whether the scan engine is in AWS, this is used for AWS discovery connections for scanning purposes (only used for the AWS connection)."},"secretAccessKey":{"type":"string","example":"","description":"The AWS credential secret access key (only used for the AWS connection)."},"status":{"type":"string","example":"","description":"The status of the discovery connection."},"username":{"type":"string","example":"","description":"The username used to authenticate to the discovery connection source."},"winRMServer":{"type":"string","example":"","description":"The WinRM server to connect to. "}},"description":""},"DiscoverySearchCriteria":{"type":"object","discriminator":"","properties":{"connectionType":{"type":"string","example":"","description":"The type of discovery connection configured for the site. This property only applies to dynamic sites.","enum":["activesync-ldap","activesync-office365","activesync-powershell","aws","dhcp","sonar","vsphere"]},"filters":{"type":"array","description":"Filters used to match assets from a discovery connection. See Discovery Connection Search Criteria for more information on the structure and format.","items":{"$ref":"#/definitions/SwaggerDiscoverySearchCriteriaFilter"}},"match":{"type":"string","example":"all","description":"Operator to determine how to match filters. `all` requires that all filters match for an asset to be included. `any` requires only one filter to match for an asset to be included.","enum":["any","all"]}},"description":""},"DiskFree":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":166532222976,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"155.1 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"DiskInfo":{"type":"object","discriminator":"","properties":{"free":{"example":"","description":"Available disk space.","$ref":"#/definitions/DiskFree"},"installation":{"example":"","description":"Details regarding the size of disk used by the console installation.","$ref":"#/definitions/InstallSize"},"total":{"example":"","description":"Total disk space.","$ref":"#/definitions/DiskTotal"}},"description":""},"DiskTotal":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":499004735488,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"464.7 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"DynamicSite":{"type":"object","required":["id"],"discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the discovery connection."}},"description":""},"EnginePool":{"type":"object","required":["id","name"],"discriminator":"","properties":{"engines":{"type":"array","description":"The identifiers of the scan engines in the engine pool.","items":{"type":"integer","format":"int32"}},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the scan engine."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Corporate Scan Engine 001","description":"The name of the scan engine."}},"description":""},"EnvironmentProperties":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"properties":{"type":"object","example":"","description":"Key-value pairs for system and environment properties that are currently defined."}},"description":""},"Error":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["100","101","102","103","200","201","202","203","204","205","206","207","208","226","300","301","302","303","304","305","307","308","400","401","402","403","404","405","406","407","408","409","410","411","412","413","414","415","416","417","418","419","420","421","422","423","424","426","428","429","431","500","501","502","503","504","505","506","507","508","509","510","511"]}},"description":""},"ExceptionScope":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the vulnerability to which the exception applies."},"key":{"type":"string","example":"","description":"If the scope type is `\"Instance\"`, an optional key to discriminate the instance the exception applies to."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"port":{"type":"integer","format":"int32","example":"","description":"If the scope type is `\"Instance\"` and the vulnerability is detected on a service, the port on which the exception applies."},"type":{"type":"string","example":"","description":"The type of the exception scope. One of: `\"Global\"`, `\"Site\"`, `\"Asset\"`, `\"Asset Group\"`, `\"Instance\"`"},"vulnerability":{"type":"string","example":"","description":"The identifier of the vulnerability to which the exception applies."}},"description":""},"ExcludedAssetGroups":{"type":"object","discriminator":"","properties":{"assetGroupIDs":{"type":"array","description":"List of asset group identifiers. Each element is an integer.","items":{"type":"integer","format":"int32"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"ExcludedScanTargets":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","items":{"type":"string"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"Exploit":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":4924,"description":"The identifier of the exploit."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"skillLevel":{"type":"string","example":"expert","description":"The level of skill required to use the exploit.","enum":["novice","intermediate","expert"]},"source":{"example":"","description":"Details about where the exploit is defined.","$ref":"#/definitions/ExploitSource"},"title":{"type":"string","example":"Microsoft IIS WebDav ScStoragePathFromUrl Overflow","description":"The title (short summary) of the exploit."}},"description":""},"ExploitSource":{"type":"object","discriminator":"","properties":{"key":{"type":"string","example":"exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"The identifier of the exploit in the source library."},"link":{"example":"","description":"${exploit.source.link.description}","$ref":"#/definitions/ExploitSourceLink"},"name":{"type":"string","example":"metasploit","description":"The source library of the exploit, typically the name of the vendor that maintains and/or defined the exploit.","enum":["metasploit","exploitdb"]}},"description":""},"ExploitSourceLink":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"http://www.metasploit.com/modules/exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"The hypertext reference for the exploit source."},"id":{"type":"string","example":"exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"Hypermedia link to the destination of the exploit source."},"rel":{"type":"string","example":"Source","description":"The relation of the hypermedia link, `\"Source\"`."}},"description":""},"Features":{"type":"object","discriminator":"","properties":{"adaptiveSecurity":{"type":"boolean","example":false,"description":"Whether Adaptive Security features are available."},"agents":{"type":"boolean","example":true,"description":"Whether the use of agents is allowed."},"dynamicDiscovery":{"type":"boolean","example":true,"description":"Whether dynamic discovery sources may be used."},"earlyAccess":{"type":"boolean","example":false,"description":"Whether early-access features are available prior to general availability."},"enginePool":{"type":"boolean","example":true,"description":"Whether scan engine pools may be used."},"insightPlatform":{"type":"boolean","example":true,"description":"Whether the usage of the Insight Platform is allowed."},"mobile":{"type":"boolean","example":true,"description":"Whether mobile features are allowed."},"multitenancy":{"type":"boolean","example":false,"description":"Whether multitenancy is allowed."},"policyEditor":{"type":"boolean","example":true,"description":"Whether the editing of policies is allowed."},"policyManager":{"type":"boolean","example":true,"description":"Whether the policy manager is allowed."},"remediationAnalytics":{"type":"boolean","example":true,"description":"Whether Remediation Analytics features are available."},"reporting":{"example":"","description":"The reporting features available in the license.","$ref":"#/definitions/LicenseReporting"},"scanning":{"example":"","description":"The scanning features available in the license.","$ref":"#/definitions/LicenseScanning"}},"description":""},"File":{"type":"object","required":["name","type"],"discriminator":"","properties":{"attributes":{"type":"array","description":"Attributes detected on the file.","items":{"$ref":"#/definitions/Configuration"}},"name":{"type":"string","example":"ADMIN$","description":"The name of the file."},"size":{"type":"integer","format":"int64","example":-1,"description":"The size of the regular file (in bytes). If the file is a directory, no value is returned."},"type":{"type":"string","example":"directory","description":"The type of the file.","enum":["file","directory"]}},"description":""},"Fingerprint":{"type":"object","discriminator":"","properties":{"description":{"type":"string","example":"Ubuntu libexpat1 2.1.0-4ubuntu1.2","description":"The description of the matched fingerprint."},"family":{"type":"string","example":"","description":"The family of the matched fingerprint."},"product":{"type":"string","example":"libexpat1","description":"The product of the matched fingerprint."},"vendor":{"type":"string","example":"Ubuntu","description":"The description of the matched fingerprint."},"version":{"type":"string","example":"2.1.0-4ubuntu1.2","description":"The version of the matched fingerprint."}},"description":""},"GlobalScan":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":"","description":"The number of assets found in the scan."},"duration":{"type":"string","example":"","description":"The duration of the scan in ISO8601 format."},"endTime":{"type":"string","example":"","description":"The end time of the scan in ISO8601 format."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine."},"engineName":{"type":"string","example":"","description":"The name of the scan engine."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the scan."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"","description":"The reason for the scan status."},"scanName":{"type":"string","example":"","description":"The user-driven scan name for the scan."},"scanType":{"type":"string","example":"","description":"The scan type (automated, manual, scheduled). "},"siteId":{"type":"integer","format":"int32"},"siteName":{"type":"string"},"startTime":{"type":"string","example":"","description":"The start time of the scan in ISO8601 format."},"startedBy":{"type":"string","example":"","description":"The name of the user that started the scan."},"status":{"type":"string","example":"","description":"The scan status.","enum":["aborted","unknown","running","finished","stopped","error","paused","dispatched","integrating"]},"vulnerabilities":{"example":"","description":"The vulnerability synopsis of the scan.","$ref":"#/definitions/Vulnerabilities"}},"description":""},"GroupAccount":{"type":"object","required":["name"],"discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":972,"description":"The identifier of the user group."},"name":{"type":"string","example":"Administrators","description":"The name of the user group."}},"description":""},"HostName":{"type":"object","required":["name"],"discriminator":"","properties":{"name":{"type":"string","example":"corporate-workstation-1102DC.acme.com","description":"The host name (local or FQDN)."},"source":{"type":"string","example":"DNS","description":"The source used to detect the host name. `user` indicates the host name source is user-supplied (e.g. in a site target definition).","enum":["user","dns","netbios","dce","epsec","ldap","other"]}},"description":""},"IMetaData":{"type":"object","discriminator":"","properties":{"fieldName":{"type":"string"},"supportedOperators":{"type":"array","items":{"type":"string","enum":["IS","IS_NOT","IS_APPLIED","IS_NOT_APPLIED","IN","NOT_IN","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","LESS_THAN","GREATER_THAN","IN_RANGE","NOT_IN_RANGE","INCLUDE","DO_NOT_INCLUDE","ON_OR_BEFORE","ON_OR_AFTER","BETWEEN","EARLIER_THAN","WITHIN_THE_LAST","IS_EMPTY","IS_NOT_EMPTY","ARE","LIKE","NOT_LIKE"]}},"type":{"type":"string","enum":["NUMERIC","STRING","SET","SET_STRING","SINGLE","DATE"]}},"description":""},"IncludedAssetGroups":{"type":"object","discriminator":"","properties":{"assetGroupIDs":{"type":"array","description":"List of asset group identifiers. Each element is an integer.","items":{"type":"integer","format":"int32"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"IncludedScanTargets":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","items":{"type":"string"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"Info":{"type":"object","discriminator":"","properties":{"cpu":{"example":"","description":"Details regarding the host CPU.","$ref":"#/definitions/CPUInfo"},"disk":{"example":"","description":"Details regarding host disk usage.","$ref":"#/definitions/DiskInfo"},"distinguishedName":{"type":"string","example":"CN=Rapid7 Security Console/ O=Rapid7","description":"The distinguished name of the console."},"fqdn":{"type":"string","example":"server.acme.com","description":"The fully-qualified domain name of the local host the service is running on."},"host":{"type":"string","example":"SERVER","description":"The name of the local host the service is running on."},"ip":{"type":"string","example":"192.168.1.99","description":"The IP address of the local host the service is running on."},"jvm":{"example":"","description":"Details regarding the Java Virtual Machine.","$ref":"#/definitions/JVMInfo"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"memory":{"example":"","description":"Details regarding host memory usage.","$ref":"#/definitions/MemoryInfo"},"operatingSystem":{"type":"string","example":"Ubuntu Linux 16.04","description":"The operating system of the host the service is running on."},"serial":{"type":"string","example":"729F31B1C92F3C91DFA8A649F4D5C883C269BD45","description":"The serial number of the console."},"superuser":{"type":"boolean","example":true,"description":"Whether the service is running a super-user."},"user":{"type":"string","example":"root","description":"The user running the service."},"version":{"example":"","description":"Details regarding the version of the installation.","$ref":"#/definitions/VersionInfo"}},"description":""},"InstallSize":{"type":"object","discriminator":"","properties":{"backups":{"example":"","description":"The disk space used by backups.","$ref":"#/definitions/BackupsSize"},"database":{"example":"","description":"The disk space used by the database.","$ref":"#/definitions/DatabaseSize"},"directory":{"example":"","description":"The installation directory.","$ref":"#/definitions/File"},"reports":{"example":"","description":"The disk space used by reports.","$ref":"#/definitions/ReportSize"},"scans":{"example":"","description":"The disk space used by scans.","$ref":"#/definitions/ScanSize"},"total":{"example":"","description":"Total disk space used by the installation.","$ref":"#/definitions/InstallationTotalSize"}},"description":""},"InstallationTotalSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":12125933077,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"11.3 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"InternalServerError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"500","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["500"]}},"description":""},"JVMInfo":{"type":"object","discriminator":"","properties":{"name":{"type":"string","example":"OpenJDK 64-Bit Server VM","description":"The name of the Java Virtual Machine."},"startTime":{"type":"string","example":"2018-02-13T20:35:35.076Z","description":"The date and time the Java Virtual Machine last started."},"uptime":{"type":"string","example":"PT8H21M7.978S","description":"Total up-time of the Java Virtual Machine, in ISO 8601 format. For example: `\"PT1H4M24.214S\"`."},"vendor":{"type":"string","example":"Azul Systems, Inc.","description":"The vendor of the Java Virtual Machine."},"version":{"type":"string","example":"25.102-b14","description":"The version of the Java Virtual Machine."}},"description":""},"JsonNode":{"type":"object","discriminator":"","properties":{"array":{"type":"boolean"},"bigDecimal":{"type":"boolean"},"bigInteger":{"type":"boolean"},"binary":{"type":"boolean"},"boolean":{"type":"boolean"},"containerNode":{"type":"boolean"},"double":{"type":"boolean"},"float":{"type":"boolean"},"floatingPointNumber":{"type":"boolean"},"int":{"type":"boolean"},"integralNumber":{"type":"boolean"},"long":{"type":"boolean"},"missingNode":{"type":"boolean"},"nodeType":{"type":"string","enum":["ARRAY","BINARY","BOOLEAN","MISSING","NULL","NUMBER","OBJECT","POJO","STRING"]},"null":{"type":"boolean"},"number":{"type":"boolean"},"object":{"type":"boolean"},"pojo":{"type":"boolean"},"short":{"type":"boolean"},"textual":{"type":"boolean"},"valueNode":{"type":"boolean"}},"description":""},"License":{"type":"object","discriminator":"","properties":{"edition":{"type":"string","example":"InsightVM","description":"The edition of the product."},"evaluation":{"type":"boolean","example":false,"description":"Whether the license is a time-restricted evaluation."},"expires":{"type":"string","example":"2018-12-31T23:59:59.999Z","description":"The date and time the license expires."},"features":{"example":"","description":"The features available in the license.","$ref":"#/definitions/Features"},"limits":{"example":"","description":"The limits of the license.","$ref":"#/definitions/LicenseLimits"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"perpetual":{"type":"boolean","example":false,"description":"Whether the license is perpetual."},"status":{"type":"string","example":"Activated","description":"The status of the license.","enum":["Activated","Unlicensed","Expired","Evaluation Mode","Revoked","Unknown"]}},"description":""},"LicenseLimits":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":100000,"description":"The maximum number of assets that can be assessed."},"assetsWithHostedEngine":{"type":"integer","format":"int32","example":1000,"description":"The maximum number of assets that may be scanned with the hosted scan engine."},"scanEngines":{"type":"integer","format":"int32","example":100,"description":"The maximum number of scan engines that may be used."},"users":{"type":"integer","format":"int32","example":1000,"description":"The maximum number of users allowed."}},"description":""},"LicensePolicyScanning":{"type":"object","discriminator":"","properties":{"benchmarks":{"example":"","description":"The benchmarks available to policy scan.","$ref":"#/definitions/LicensePolicyScanningBenchmarks"},"scanning":{"type":"boolean","example":true,"description":"Whether policy scanning is allowed."}},"description":""},"LicensePolicyScanningBenchmarks":{"type":"object","discriminator":"","properties":{"cis":{"type":"boolean","example":true,"description":"Whether policy scanning for CIS benchmarks is allowed."},"custom":{"type":"boolean","example":true,"description":"Whether custom benchmarks can be used during scanning."},"disa":{"type":"boolean","example":true,"description":"Whether policy scanning for DISA benchmarks is allowed."},"fdcc":{"type":"boolean","example":true,"description":"Whether policy scanning for FDCC benchmarks is allowed."},"usgcb":{"type":"boolean","example":true,"description":"Whether policy scanning for USGCB benchmarks is allowed."}},"description":""},"LicenseReporting":{"type":"object","discriminator":"","properties":{"advanced":{"type":"boolean","example":true,"description":"Whether advanced reporting is available."},"customizableCSVExport":{"type":"boolean","example":true,"description":"Whether customizable CSV Export is available."},"pci":{"type":"boolean","example":true,"description":"Whether PCI reporting is available."}},"description":""},"LicenseScanning":{"type":"object","discriminator":"","properties":{"discovery":{"type":"boolean","example":true,"description":"Whether discovery scanning may be used."},"policy":{"example":"true","description":"Details as to whether policy scanning and what benchmarks are available.","$ref":"#/definitions/LicensePolicyScanning"},"scada":{"type":"boolean","example":true,"description":"Whether SCADA scanning may be used."},"virtual":{"type":"boolean","example":true,"description":"Whether virtual scanning may be used."},"webApplication":{"type":"boolean","example":true,"description":"Whether web scanning may be used."}},"description":""},"Link":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"https://hostname:3780/api/3/...","description":"A hypertext reference, which is either a URI (see RFC 3986) or URI template (see RFC 6570). "},"rel":{"type":"string","example":"self","description":"The link relation type. This value is one from the Link Relation Type Registry or is the type of resource being linked to."}},"description":""},"Links":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"LocalePreferences":{"type":"object","discriminator":"","properties":{"default":{"type":"string","example":"","description":"The default language to use. The format is a IETF BCP 47 language tag."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"reports":{"type":"string","example":"","description":"The language to use to generate reports. The format is a IETF BCP 47 language tag."}},"description":""},"MalwareKit":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":152,"description":"The identifier of the malware kit."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Alpha Pack","description":"The name of the malware kit."},"popularity":{"type":"string","example":"Rare","description":"The name of the malware kit. One of: `\"Rare\"`, `\"Uncommon\"`, `\"Occasional\"`, `\"Common\"`, `\"Popular\"`, `\"Favored\"`, `\"Unknown\"`"}},"description":""},"MatchedSolution":{"type":"object","discriminator":"","properties":{"additionalInformation":{"example":"","description":"Additional information or resources that can assist in applying the remediation.","$ref":"#/definitions/AdditionalInformation"},"appliesTo":{"type":"string","example":"libexpat1 on Ubuntu Linux","description":"The systems or software the solution applies to."},"confidence":{"type":"string","example":"","description":"The confidence of the matching process for the solution.","enum":["exact","partial","none"]},"estimate":{"type":"string","example":"PT10M","description":"The estimated duration to apply the solution, in ISO 8601 format. For example: `\"PT5M\"`."},"id":{"type":"string","example":"ubuntu-upgrade-libexpat1","description":"The identifier of the solution."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"matches":{"type":"array","description":"The raw matches that were performed in order to select the best solution(s).","items":{"$ref":"#/definitions/SolutionMatch"}},"steps":{"example":"","description":"The steps required to remediate the vulnerability.","$ref":"#/definitions/Steps"},"summary":{"example":"","description":"The summary of the solution.","$ref":"#/definitions/Summary"},"type":{"type":"string","example":"configuration","description":"The type of the solution. One of: `\"Configuration\"`, `\"Rollup patch\"`, `\"Patch\"`","enum":["configuration","rollup-patch","patch","unknown"]}},"description":""},"MemoryFree":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":45006848,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"42.9 MB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"MemoryInfo":{"type":"object","discriminator":"","properties":{"free":{"example":"","description":"Free memory.","$ref":"#/definitions/MemoryFree"},"total":{"example":"","description":"Total memory usage.","$ref":"#/definitions/MemoryTotal"}},"description":""},"MemoryTotal":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":17179869184,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"16 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"MetadataContainer":{"type":"object","discriminator":"","properties":{"fieldName":{"$ref":"#/definitions/IMetaData"}},"description":""},"NotFoundError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"404","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["404"]}},"description":""},"OperatingSystem":{"type":"object","discriminator":"","properties":{"architecture":{"type":"string","example":"x86","description":"The architecture of the operating system."},"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the operating system.","items":{"$ref":"#/definitions/Configuration"}},"cpe":{"example":"","description":"The Common Platform Enumeration (CPE) of the operating system.","$ref":"#/definitions/OperatingSystemCpe"},"description":{"type":"string","example":"Microsoft Windows Server 2008 Enterprise Edition SP1","description":"The description of the operating system (containing vendor, family, product, version and architecture in a single string)."},"family":{"type":"string","example":"Windows","description":"The family of the operating system."},"id":{"type":"integer","format":"int64","example":35,"description":"The identifier of the operating system."},"product":{"type":"string","example":"Windows Server 2008 Enterprise Edition","description":"The name of the operating system."},"systemName":{"type":"string","example":"Microsoft Windows","description":"A combination of vendor and family (with redundancies removed), suitable for grouping."},"type":{"type":"string","example":"Workstation","description":"The type of operating system."},"vendor":{"type":"string","example":"Microsoft","description":"The vendor of the operating system."},"version":{"type":"string","example":"SP1","description":"The version of the operating system."}},"description":""},"OperatingSystemCpe":{"type":"object","required":["part"],"discriminator":"","properties":{"edition":{"type":"string","example":"enterprise","description":"Edition-related terms applied by the vendor to the product. "},"language":{"type":"string","example":"","description":"Defines the language supported in the user interface of the product being described. The format is of the language tag adheres to RFC5646."},"other":{"type":"string","example":"","description":"Captures any other general descriptive or identifying information which is vendor- or product-specific and which does not logically fit in any other attribute value. "},"part":{"type":"string","example":"o","description":"A single letter code that designates the particular platform part that is being identified.","enum":["o","a","h"]},"product":{"type":"string","example":"windows_server_2008","description":"the most common and recognizable title or name of the product."},"swEdition":{"type":"string","example":"","description":"Characterizes how the product is tailored to a particular market or class of end users. "},"targetHW":{"type":"string","example":"","description":"Characterize the instruction set architecture on which the product operates. "},"targetSW":{"type":"string","example":"","description":"Characterize the software computing environment within which the product operates."},"update":{"type":"string","example":"sp1","description":"Vendor-specific alphanumeric strings characterizing the particular update, service pack, or point release of the product."},"v2.2":{"type":"string","example":"cpe:/o:microsoft:windows_server_2008:-:sp1:enterprise","description":"The full CPE string in the CPE 2.2 format."},"v2.3":{"type":"string","example":"cpe:2.3:o:microsoft:windows_server_2008:-:sp1:enterprise:*:*:*:*:*","description":"The full CPE string in the CPE 2.3 format."},"vendor":{"type":"string","example":"microsoft","description":"The person or organization that manufactured or created the product."},"version":{"type":"string","example":"-","description":"Vendor-specific alphanumeric strings characterizing the particular release version of the product."}},"description":""},"PCI":{"type":"object","discriminator":"","properties":{"adjustedCVSSScore":{"type":"integer","format":"int32","example":4,"description":"The CVSS score of the vulnerability, adjusted for PCI rules and exceptions, on a scale of 0-10."},"adjustedSeverityScore":{"type":"integer","format":"int32","example":3,"description":"The severity score of the vulnerability, adjusted for PCI rules and exceptions, on a scale of 0-10."},"fail":{"type":"boolean","example":true,"description":"Whether if present on a host this vulnerability would cause a PCI failure. `true` if \"status\" is `\"Fail\"`, `false` otherwise."},"specialNotes":{"type":"string","example":"","description":"Any special notes or remarks about the vulnerability that pertain to PCI compliance."},"status":{"type":"string","example":"Fail","description":"The PCI compliance status of the vulnerability. One of: `\"Pass\"`, `\"Fail\"`."}},"description":""},"PageInfo":{"type":"object","discriminator":"","properties":{"number":{"type":"integer","format":"int64","example":6,"description":"The index (zero-based) of the current page returned."},"size":{"type":"integer","format":"int64","example":10,"description":"The maximum size of the page returned."},"totalPages":{"type":"integer","format":"int64","example":13,"description":"The total number of pages available."},"totalResources":{"type":"integer","format":"int64","example":123,"description":"The total number of resources available across all pages."}},"description":""},"PageOf«AssetGroup»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/AssetGroup"}}},"description":""},"PageOf«AssetPolicyItem»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/AssetPolicyItem"}}},"description":""},"PageOf«AssetPolicy»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/AssetPolicy"}}},"description":""},"PageOf«Asset»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Asset"}}},"description":""},"PageOf«DiscoveryConnection»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/DiscoveryConnection"}}},"description":""},"PageOf«Exploit»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Exploit"}}},"description":""},"PageOf«GlobalScan»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/GlobalScan"}}},"description":""},"PageOf«MalwareKit»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/MalwareKit"}}},"description":""},"PageOf«OperatingSystem»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/OperatingSystem"}}},"description":""},"PageOf«PolicyAsset»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyAsset"}}},"description":""},"PageOf«PolicyControl»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyControl"}}},"description":""},"PageOf«PolicyGroup»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyGroup"}}},"description":""},"PageOf«PolicyItem»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyItem"}}},"description":""},"PageOf«PolicyOverride»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyOverride"}}},"description":""},"PageOf«PolicyRule»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyRule"}}},"description":""},"PageOf«Policy»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Policy"}}},"description":""},"PageOf«Report»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Report"}}},"description":""},"PageOf«Scan»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Scan"}}},"description":""},"PageOf«Site»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Site"}}},"description":""},"PageOf«Software»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Software"}}},"description":""},"PageOf«Tag»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Tag"}}},"description":""},"PageOf«User»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/User"}}},"description":""},"PageOf«VulnerabilityCategory»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityCategory"}}},"description":""},"PageOf«VulnerabilityCheck»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityCheck"}}},"description":""},"PageOf«VulnerabilityException»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityException"}}},"description":""},"PageOf«VulnerabilityFinding»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityFinding"}}},"description":""},"PageOf«VulnerabilityReference»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityReference"}}},"description":""},"PageOf«Vulnerability»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Vulnerability"}}},"description":""},"Policy":{"type":"object","discriminator":"","properties":{"enabled":{"type":"array","description":"The identifiers of the policies enabled to be checked during a scan. No policies are enabled by default.","items":{"type":"integer","format":"int64"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"recursiveWindowsFSSearch":{"type":"boolean","example":false,"description":"Whether recursive windows file searches are enabled, if your internal security practices require this capability. Recursive file searches can increase scan times by several hours, depending on the number of files and other factors, so this setting is disabled for Windows systems by default. Defaults to `false`."},"storeSCAP":{"type":"boolean","example":false,"description":"Whether Asset Reporting Format (ARF) results are stored. If you are required to submit reports of your policy scan results to the U.S. government in ARF for SCAP certification, you will need to store SCAP data so that it can be exported in this format. Note that stored SCAP data can accumulate rapidly, which can have a significant impact on file storage. Defaults to `false`."}},"description":""},"PolicyAsset":{"type":"object","discriminator":"","properties":{"hostname":{"type":"string","example":"","description":"The primary host name (local or FQDN) of the asset."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the asset."},"ip":{"type":"string","example":"","description":"The primary IPv4 or IPv6 address of the asset."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"os":{"example":"","description":"The full description of the operating system of the asset.","$ref":"#/definitions/OperatingSystem"},"status":{"type":"string","example":"","description":"The overall compliance status of the asset. ","enum":["PASS","FAIL","NOT_APPLICABLE"]}},"description":""},"PolicyBenchmark":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy's benchmark."},"title":{"type":"string","example":"","description":"The title of the policy benchmark."},"version":{"type":"string","example":"","description":"The version number of the benchmark that includes the policy."}},"description":""},"PolicyControl":{"type":"object","discriminator":"","properties":{"cceItemId":{"type":"string","example":"","description":"The identifier of the CCE item."},"ccePlatform":{"type":"string","example":"","description":"The platform of the CCE."},"controlName":{"type":"string","example":"","description":"The name of the control mapping."},"id":{"type":"string","example":"","description":"The textual representation of the control identifier."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"publishedDate":{"type":"integer","format":"int64","example":"","description":"The published date of the control mapping."}},"description":""},"PolicyGroup":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"benchmark":{"example":"","description":"Information about the policy benchmark.","$ref":"#/definitions/PolicyBenchmark"},"description":{"type":"string","example":"","description":"A description of the policy group."},"id":{"type":"string","example":"","description":"The textual representation of the policy group identifier."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy group."},"policy":{"example":"","description":"Information about the policy.","$ref":"#/definitions/PolicyMetadataResource"},"scope":{"type":"string","example":"","description":"The textual representation of the policy group scope. Policy groups that are automatically available have `\"Built-in\"` scope, whereas policy groups created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy group.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"surrogateId":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy group."},"title":{"type":"string","example":"","description":"The title of the policy group as visible to the user."}},"description":""},"PolicyItem":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"description":{"type":"string","example":"","description":"A description of the policy rule or group."},"hasOverride":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has an active override applied to it. This field only applies to resources representing policy rules. "},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule or group."},"isUnscored":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has a role of `\"unscored\"`. This field only applies to resources representing policy rules."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy rule or group."},"policy":{"example":"","description":"Information about the policy.","$ref":"#/definitions/PolicyMetadataResource"},"rules":{"example":"","description":"A summary of rule compliance for multiple policy rules. This field only applies to resources representing policy groups.","$ref":"#/definitions/PolicyRuleAssessmentResource"},"scope":{"type":"string","example":"","description":"The textual representation of the policy rule/group scope. Policy rules or groups that are automatically available have `\"Built-in\"` scope, whereas policy rules or groups created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy rule or group.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"title":{"type":"string","example":"","description":"The title of the policy rule, or group, as visible to the user."},"type":{"type":"string","example":"","description":"Indicates whether the resource represents either a policy rule or group.","enum":["rule","group"]}},"description":""},"PolicyMetadataResource":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy."},"title":{"type":"string","example":"","description":"The title of the policy as visible to the user."},"version":{"type":"string","example":"","description":"The version of the policy."}},"description":""},"PolicyOverride":{"type":"object","required":["scope","state","submit"],"discriminator":"","properties":{"expires":{"type":"string","example":"","description":"The date the policy override is set to expire. Date is represented in ISO 8601 format."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy override.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"review":{"example":"","description":"Details regarding the review and/or approval of the policy override.","readOnly":true,"$ref":"#/definitions/PolicyOverrideReviewer"},"scope":{"example":"","description":"The scope of the policy override. Indicates which assets' policy compliance results are to be affected by the override.","$ref":"#/definitions/PolicyOverrideScope"},"state":{"type":"string","example":"","description":"The state of the policy override. Can be one of the following values: \n| Value | Description | Affects Compliance Results | \n| ---------------- | ----------------------------------------------------------------------------------- |:--------------------------:| \n| `\"deleted\"` | The policy override has been deleted. | | \n| `\"expired\"` | The policy override had an expiration date and it has expired. | | \n| `\"approved\"` | The policy override was submitted and approved. | ✓ | \n| `\"rejected\"` | The policy override was rejected by the reviewer. | | \n| `\"under-review\"` | The policy override was submitted but not yet approved or rejected by the reviewer. | | \n"},"submit":{"example":"","description":"Details regarding the submission of the policy override.","$ref":"#/definitions/PolicyOverrideSubmitter"}},"description":""},"PolicyOverrideReviewer":{"type":"object","discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the reviewer detailing the review. Cannot exceed 1024 characters.","readOnly":true},"date":{"type":"string","example":"","description":"The date the review took place.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The identifier of the user that reviewed the policy override.","readOnly":true},"user":{"type":"integer","format":"int32","example":"","description":"The login name of the user that reviewed the policy override.","readOnly":true}},"description":""},"PolicyOverrideScope":{"type":"object","required":["newResult","rule","type"],"discriminator":"","properties":{"asset":{"type":"integer","format":"int64","example":"","description":"The identifier of the asset whose compliance results are to be overridden. Property is required if the property `scope` is set to either `\"specific-asset\"` or `\"specific-asset-until-next-scan\"`."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"newResult":{"type":"string","example":"","description":"The new policy rule result after the override is applied.","enum":["pass","fail","not-applicable","fixed"]},"originalResult":{"type":"string","example":"","description":"The original policy rule result before the override was applied. This property only applies to overrides with a scope of either `\"specific-asset\"` or `\"specific-asset-until-next-scan\"`.","readOnly":true,"enum":["pass","fail","error","unknown","not-applicable","not-checked","not-selected","informational","fixed"]},"rule":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule whose compliance results are to be overridden."},"type":{"type":"string","example":"","description":"The scope of assets affected by the policy override. Can be one of the following values: \n| Value | Description | \n| ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | \n| `\"all-assets\"` | Overrides the compliance result of all assets evaluated with the specified policy rule. | \n| `\"specific-asset\"` | Overrides the compliance result of a single asset evaluated with the specified policy rule. | \n| `\"specific-asset-until-next-scan\"` | Overrides the compliance result of a single asset evaluated with the specified policy rule until the next time asset is evaluated against that policy rule. | \n"}},"description":""},"PolicyOverrideSubmitter":{"type":"object","required":["comment"],"discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the submitter as to why the policy override was submitted. Cannot exceed 1024 characters."},"date":{"type":"string","example":"","description":"The date the policy override was submitted.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The login name of the user that submitted the policy override.","readOnly":true},"user":{"type":"integer","format":"int32","example":"","description":"The identifier of the user that submitted the policy override.","readOnly":true}},"description":""},"PolicyRule":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"benchmark":{"example":"","description":"Information about the policy benchmark.","$ref":"#/definitions/PolicyBenchmark"},"description":{"type":"string","example":"","description":"A description of the rule."},"id":{"type":"string","example":"","description":"The textual representation of the policy rule identifier."},"isCustom":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule is custom."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the rule."},"role":{"type":"string","example":"","description":"The role of the policy rule. It's value determines how it's results affect compliance.","enum":["full","unscored","unchecked"]},"scope":{"type":"string","example":"","description":"The textual representation of the policy rule scope. Policy rules that are automatically available have `\"Built-in\"` scope, whereas policy rules created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy rule.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"surrogateId":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule."},"title":{"type":"string","example":"","description":"The title of the policy rule as visible to the user."}},"description":""},"PolicyRuleAssessmentResource":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"total":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules."},"totalFailed":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that are not compliant against all assets."},"totalNotApplicable":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that are not applicable against all assets."},"totalPassed":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that are compliant against all assets."},"unscored":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that have a role of `\"unscored\"`."}},"description":""},"PolicySummaryResource":{"type":"object","discriminator":"","properties":{"decreasedCompliance":{"type":"integer","format":"int32","example":"","description":"The total number of policies whose overall compliance has decreased between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets."},"increasedCompliance":{"type":"integer","format":"int32","example":"","description":"The total number of policies whose overall compliance has increased between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"numberOfPolicies":{"type":"integer","format":"int32","example":"","description":"The total number of policies available in the Security Console."},"overallCompliance":{"type":"number","format":"float","example":"","description":"The ratio of compliant rules to the total number of rules across all policies."},"scannedPolicies":{"type":"integer","format":"int32","example":"","description":"The total number of policies that were evaluated against assets and have applicable results. The assets considered in the calculation are based on the user's list of accessible assets."}},"description":""},"Privileges":{"type":"object","discriminator":"","properties":{"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","items":{"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}}},"description":""},"ReferenceWithEndpointIDLink":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"port":{"type":"integer","format":"int32","example":22,"description":"The port of the service."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]}},"description":""},"ReferenceWithReportIDLink":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the report instance."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«AlertID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«AssetID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«EngineID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«ScanScheduleID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«SiteID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«TagID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«UserID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferencesWith«AssetGroupID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«AssetID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int64"}}},"description":""},"ReferencesWith«EngineID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«ReferenceWithEndpointIDLink,ServiceLink»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/ServiceLink"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"$ref":"#/definitions/ReferenceWithEndpointIDLink"}}},"description":""},"ReferencesWith«SiteID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«SolutionNaturalID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«TagID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«UserID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«VulnerabilityCheckID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«VulnerabilityCheckTypeID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«VulnerabilityNaturalID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«WebApplicationID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int64"}}},"description":""},"RepeatResource":{"type":"object","required":["every","interval"],"discriminator":"","properties":{"dayOfWeek":{"type":"string","example":"","description":"The day of the week the scheduled task should repeat. This property only applies to schedules with a `every` value of `\"day-of-month\"`."},"every":{"type":"string","example":"date-of-month","description":"The frequency schedule repeats. Each value represents a different unit of time and is used in conjunction with the property `interval`. For example, a schedule can repeat hourly, daily, monthly, etc. The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| hour | Specifies the schedule repeats in hourly increments. | \n| day | Specifies the schedule repeats in daily increments. | \n| week | Specifies the schedule repeats in weekly increments. | \n| date-of-month | Specifies the schedule repeats nth day of the `interval` month. Requires the property `dateOfMonth` to be specified. For example, if `dateOfMonth` is `17` and the `interval` is `2`, then the schedule will repeat every 2 months on the 17th day of the month. | \n| day-of-month | Specifies the schedule repeats on a monthly interval but instead of a specific date being specified, the day of the week and week of the month are specified. Requires the properties `dayOfWeek` and `weekOfMonth` to be specified. For example, if `dayOfWeek` is `\"friday\"`, `weekOfMonth` is `3`, and the `interval` is `4`, then the schedule will repeat every 4 months on the 3rd Friday of the month. | \n"},"interval":{"type":"integer","format":"int32","example":1,"description":"The interval time the schedule should repeat. The is depends on the value set in `every`. For example, if the value in property `every` is set to `\"day\"` and `interval` is set to `2`, then the schedule will repeat every 2 days.","minimum":1},"lastDayOfMonth":{"type":"boolean","example":false,"description":"${schedule.repeat.last.day.of.month}"},"weekOfMonth":{"type":"integer","format":"int32","example":"","description":"The week of the month the scheduled task should repeat. For This property only applies to schedules with a `every` value of `\"day-of-month\"`. Each week of the month is counted in 7-day increments. For example, week 1 consists of days 1-7 of the month while week 2 consists of days 8-14 of the month and so forth.","minimum":1,"maximum":6}},"description":""},"RepeatSchedule":{"type":"object","required":["every","interval"],"discriminator":"","properties":{"dayOfWeek":{"type":"string","example":"","description":"The day of the week the scheduled task should repeat. This property only applies to schedules with a `every` value of `\"day-of-month\"`."},"every":{"type":"string","example":"date-of-month","description":"The frequency schedule repeats. Each value represents a different unit of time and is used in conjunction with the property `interval`. For example, a schedule can repeat hourly, daily, monthly, etc. The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| hour | Specifies the schedule repeats in hourly increments. | \n| day | Specifies the schedule repeats in daily increments. | \n| week | Specifies the schedule repeats in weekly increments. | \n| date-of-month | Specifies the schedule repeats nth day of the `interval` month. Requires the property `dateOfMonth` to be specified. For example, if `dateOfMonth` is `17` and the `interval` is `2`, then the schedule will repeat every 2 months on the 17th day of the month. | \n| day-of-month | Specifies the schedule repeats on a monthly interval but instead of a specific date being specified, the day of the week and week of the month are specified. Requires the properties `dayOfWeek` and `weekOfMonth` to be specified. For example, if `dayOfWeek` is `\"friday\"`, `weekOfMonth` is `3`, and the `interval` is `4`, then the schedule will repeat every 4 months on the 3rd Friday of the month. | \n"},"interval":{"type":"integer","format":"int32","example":1,"description":"The interval time the schedule should repeat. The is depends on the value set in `every`. For example, if the value in property `every` is set to `\"day\"` and `interval` is set to `2`, then the schedule will repeat every 2 days.","minimum":1},"lastDayOfMonth":{"type":"boolean"},"weekOfMonth":{"type":"integer","format":"int32","example":"","description":"The week of the month the scheduled task should repeat. For This property only applies to schedules with a `every` value of `\"day-of-month\"`. Each week of the month is counted in 7-day increments. For example, week 1 consists of days 1-7 of the month while week 2 consists of days 8-14 of the month and so forth.","minimum":1,"maximum":6}},"description":""},"Report":{"type":"object","discriminator":"","properties":{"bureau":{"type":"string","example":"Bureau","description":"The name of the bureau for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`."},"component":{"type":"string","example":"Component","description":"The name of the component for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`."},"database":{"example":"","description":"Configuration for database export. Only used when the format is `\"database-export\"`.","$ref":"#/definitions/ReportConfigDatabaseResource"},"email":{"example":"","description":"Email distribution settings for the report.","readOnly":true,"$ref":"#/definitions/ReportEmail"},"enclave":{"type":"string","example":"Enclave","description":"The name of the enclave for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`."},"filters":{"example":"","description":"Filters applied to the contents of the report. The supported filters for a report vary \nby format and template. \n \n
\n
categories Object \n
The vulnerability categories to include or exclude in the report. Only included or excluded may be specified, not both.
\n
\n
\n
\n
included Array[string] \n
The identifiers of the vulnerability categories to included in the report.
\n
\n
\n
excluded Array[string] \n
The identifiers of the vulnerability categories to exclude in the report.
\n
\n
\n
\n
severity string \n
\n\"all\" \n\"critical\" \n\"critical-and-severe\" \n
\n
The vulnerability severities to include in the report.
\n
\n
\n
statuses Array[string] \n
\n\"vulnerable\" \n\"vulnerable-version\" \n\"potentially-vulnerable\" \n\"vulnerable-and-validated\" \n
\n
The vulnerability statuses to include in the report. If \"vulnerable-and-validated\"
is selected \nno other values can be specified.\n
\n
\n
\n\nThe following filter elements may be defined for non-templatized report formats: \n| Format | Categories | Severity | Statuses | \n| ------------------------------------- |:--------------:|:----------:|:----------:| \n| `arf-xml` | | | | \n| `csv-export` | ✓ | ✓ | ✓ | \n| `cyberscope-xml` | | | | \n| `database-export` | | | | \n| `nexpose-simple-xml` | ✓ | ✓ | | \n| `oval-xml` | | | | \n| `qualys-xml` | ✓ | ✓ | | \n| `scap-xml` | ✓ | ✓ | | \n| `sql-query` | ✓ | ✓ | ✓ | \n| `xccdf-csv` | | | | \n| `xccdf-xml` | ✓ | ✓ | | \n| `xml-export` | ✓ | ✓ | ✓ | \n| `xml-export-v2` | ✓ | ✓ | ✓ | \n\nThe following filter elements may be defined for templatized report formats: \n| Template | Categories | Severity | Statuses | \n| --------------------------------------- |:--------------:|:----------:|:----------:| \n| `audit-report` | ✓ | ✓ | | \n| `baseline-comparison` | | | | \n| `basic-vulnerability-check-results` | ✓ | ✓ | ✓ | \n| `executive-overview` | | | | \n| `highest-risk-vulns` | | | | \n| `pci-attestation-v12` | | | | \n| `pci-executive-summary-v12` | | | | \n| `pci-vuln-details-v12` | | | | \n| `policy-details` | ✓ | ✓ | ✓ | \n| `policy-eval` | | | | \n| `policy-summary` | ✓ | ✓ | ✓ | \n| `prioritized-remediations` | ✓ | ✓ | ✓ | \n| `prioritized-remediations-with-details` | ✓ | ✓ | ✓ | \n| `r7-discovered-assets` | ✓ | ✓ | ✓ | \n| `r7-vulnerability-exceptions` | ✓ | ✓ | ✓ | \n| `remediation-plan` | ✓ | ✓ | | \n| `report-card` | ✓ | ✓ | | \n| `risk-scorecard` | ✓ | ✓ | ✓ | \n| `rule-breakdown-summary` | ✓ | ✓ | ✓ | \n| `top-policy-remediations` | ✓ | ✓ | ✓ | \n| `top-policy-remediations-with-details` | ✓ | ✓ | ✓ | \n| `top-riskiest-assets` | ✓ | ✓ | ✓ | \n| `top-vulnerable-assets` | ✓ | ✓ | ✓ | \n| `vulnerability-trends` | ✓ | ✓ | ✓ | \n","$ref":"#/definitions/ReportConfigFiltersResource"},"format":{"type":"string","example":"pdf","description":"The output format of the report. The format will restrict the available templates and parameters that can be specified."},"frequency":{"example":"","description":"The recurring frequency with which to generate the report.","$ref":"#/definitions/ReportFrequency"},"id":{"type":"integer","format":"int32","example":17,"description":"The identifier of the report.","readOnly":true},"language":{"type":"string","example":"en-US","description":"The locale (language) in which the report is generated"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Monthly Corporate Site Summary","description":"The name of the report."},"organization":{"type":"string","example":"Acme, Inc.","description":"The organization used for a XCCDF XML report. Only used when the format is `\"xccdf-xml\"`."},"owner":{"type":"integer","format":"int32","example":1,"description":"The identifier of the report owner."},"policy":{"type":"integer","format":"int64","example":789,"description":"The policy to report on. Only used when the format is `\"oval-xml\"`, `\"\"xccdf-csv\"`, or `\"xccdf-xml\"`."},"query":{"type":"string","example":"SELECT * FROM dim_asset ORDER BY ip_address ASC","description":"SQL query to run against the Reporting Data Model. Only used when the format is `\"sql-query\"`."},"scope":{"example":"","description":"The scope of the report. Scope is an object that has the following properties that vary by format and template: \n \n
\n
assets Array[integer <int32>] \n
The identifiers of the assets to report on.
\n
\n
\n
sites Array[integer <int32>] \n
The identifiers of the sites to report on.
\n
\n
\n
assetGroups Array[integer <int32>] \n
The identifiers of the asset to report on.
\n
\n
\n
tags Array[integer <int32>] \n
The identifiers of the tag to report on.
\n
\n
\n
scan integer <int32> \n
The identifier of the scan to report on.
\n
\n
\n\nThe following scope elements may be defined for non-templatized report formats: \n| Format | Assets | Sites | Asset Groups | Tags | Scan | \n| ------------------------------------- |:----------:|:-------:|:------------:|:-------:|:---------:| \n| `arf-xml` | ✓ | ✓ | ✓ | ✓ | | \n| `csv-export` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `cyberscope-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `database-export` | | ✓ | | | | \n| `nexpose-simple-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `oval-xml` | ✓ | ✓ | ✓ | ✓ | | \n| `qualys-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `scap-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `sql-query` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `xccdf-csv` | ✓ | | | | | \n| `xccdf-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `xml-export` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `xml-export-v2` | ✓ | ✓ | ✓ | ✓ | ✓ | \n\nThe following scope elements may be defined for templatized report formats: \n| Template | Assets | Sites | Asset Groups | Tags | Scan | \n| -----------------------------------------|:----------:|:-------:|:------------:|:-------:|:-------:| \n| `audit-report` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `baseline-comparison` | ✓ | ✓ | ✓ | ✓ | | \n| `basic-vulnerability-check-results` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `executive-overview` | ✓ | ✓ | ✓ | ✓ | | \n| `highest-risk-vulns` | ✓ | ✓ | ✓ | ✓ | | \n| `pci-attestation-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `pci-executive-summary-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `pci-vuln-details-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `policy-details` | ✓ | ✓ | ✓ | ✓ | | \n| `policy-eval` | ✓ | ✓ | ✓ | ✓ | | \n| `policy-summary` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `prioritized-remediations` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `prioritized-remediations-with-details` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `r7-discovered-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `r7-vulnerability-exceptions` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `remediation-plan` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `report-card` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `risk-scorecard` | ✓ | ✓ | ✓ | ✓ | | \n| `rule-breakdown-summary` | ✓ | ✓ | ✓ | ✓ | | \n| `top-policy-remediations` | ✓ | ✓ | ✓ | ✓ | | \n| `top-policy-remediations-with-details` | ✓ | ✓ | ✓ | ✓ | | \n| `top-riskiest-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `top-vulnerable-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `vulnerability-trends` | ✓ | ✓ | ✓ | ✓ | | \nIf a report supports specifying a scan as the scope and a scan is specified, no other scope elements may be defined. \nIn all other cases as many different types of supported scope elements can be specified in any combination. All \nreports except the `sql-query` format require at least one element to be specified as the scope.\n","$ref":"#/definitions/ReportConfigScopeResource"},"storage":{"example":"","description":"The additional storage location and path.","$ref":"#/definitions/ReportStorage"},"template":{"type":"string","example":"executive-overview","description":"The template for the report (only required if the format is templatized)."},"timezone":{"type":"string","example":"America/Los_Angeles","description":"The timezone the report generates in, such as `\"America/Los_Angeles\"`."},"users":{"type":"array","example":"7","description":"The identifiers of the users granted explicit access to the report.","items":{"type":"integer","format":"int32"}},"version":{"type":"string","example":"2.3.0","description":"The version of the report Data Model to report against. Only used when the format is `\"sql-query\"`."}},"description":""},"ReportConfigCategoryFilters":{"type":"object","discriminator":"","properties":{"excluded":{"type":"array","description":"The vulnerability categories to exclude. Defaults to no categories.","items":{"type":"string"}},"included":{"type":"array","description":"The vulnerability categories to include. Defaults to all categories.","items":{"type":"string"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReportConfigDatabaseCredentialsResource":{"type":"object","discriminator":"","properties":{"password":{"type":"string","example":"******","description":"${report.config.database.credential.password.description}","readOnly":true},"username":{"type":"string","example":"admin","description":"${report.config.database.credential.username.description}"}},"description":""},"ReportConfigDatabaseResource":{"type":"object","discriminator":"","properties":{"credentials":{"example":"","description":"${report.config.database.credentials.description}","readOnly":true,"$ref":"#/definitions/ReportConfigDatabaseCredentialsResource"},"host":{"type":"string","example":"database.acme.com","description":"The database server host to export to."},"name":{"type":"string","example":"database","description":"The name of the database to export to."},"port":{"type":"integer","format":"int32","example":3306,"description":"The database server port to export to."},"vendor":{"type":"string","example":"mysql","description":"The type of the database server.","enum":["oracle","mssql","mysql"]}},"description":""},"ReportConfigFiltersResource":{"type":"object","discriminator":"","properties":{"categories":{"example":"","description":"Vulnerability categories to include or exclude. Only `included` or `excluded` may be specified, but not both.","$ref":"#/definitions/ReportConfigCategoryFilters"},"severity":{"type":"string","example":"","description":"The vulnerability severities to include. Defaults to `all`.","enum":["all","critical","critical-and-severe"]},"statuses":{"type":"array","description":"The vulnerability statuses to include. Defaults to [ `vulnerable`, `vulnerable-version`, `potentially-vulnerable` ].","items":{"type":"string","enum":["vulnerable","vulnerable-version","potentially-vulnerable","vulnerable-and-validated"]}}},"description":""},"ReportConfigScopeResource":{"type":"object","discriminator":"","properties":{"assetGroups":{"type":"array","description":"${report.config.asset.groups.description}","items":{"type":"integer","format":"int32"}},"assets":{"type":"array","description":"${report.config.assets.description}","items":{"type":"integer","format":"int64"}},"scan":{"type":"integer","format":"int64","example":68,"description":"${report.config.scans.description}"},"sites":{"type":"array","description":"${report.config.sites.description}","items":{"type":"integer","format":"int32"}},"tags":{"type":"array","description":"${report.config.tags.description}","items":{"type":"integer","format":"int32"}}},"description":""},"ReportEmail":{"type":"object","discriminator":"","properties":{"access":{"type":"string","example":"zip","description":"The format to distribute the report in when sending to users who have explicit access to the report.","enum":["file","zip","url","none"]},"additional":{"type":"string","example":"file","description":"The format to distribute the report to additional recipients.","enum":["file","zip","none"]},"additionalRecipients":{"type":"array","description":"The email address of additional recipients to distribute the report to.","items":{"type":"string"}},"assetAccess":{"type":"boolean","example":true,"description":"${report.config.email.additional.asset.access.description}"},"owner":{"type":"string","example":"file","description":"The format to distribute the report to the owner.","enum":["file","url","zip","none"]},"smtp":{"example":"","description":"SMTP delivery settings.","$ref":"#/definitions/ReportEmailSmtp"}},"description":""},"ReportEmailSmtp":{"type":"object","discriminator":"","properties":{"global":{"type":"boolean","example":true,"description":"Whether to use global SMTP settings. If enabled, `sender` and `relay` may not be specified."},"relay":{"type":"string","example":"mail.acme.com","description":"SMTP relay host or IP address."},"sender":{"type":"string","example":"john_smith@acme.com","description":"SMTP sender address."}},"description":""},"ReportFilters":{"type":"object","discriminator":"","description":""},"ReportFrequency":{"type":"object","required":["repeat","start"],"discriminator":"","properties":{"nextRuntimes":{"type":"array","description":"List the next 10 dates in the future the schedule will launch. ","readOnly":true,"items":{"type":"string"}},"repeat":{"example":"","description":"Settings for repeating a scheduled task.","$ref":"#/definitions/RepeatSchedule"},"start":{"type":"string","example":"2018-03-01T04:31:56Z","description":"The scheduled start date and time. Date is represented in ISO 8601 format. Repeating schedules will determine the next schedule to begin based on this date and time."}},"description":""},"ReportInstance":{"type":"object","discriminator":"","properties":{"generated":{"type":"string","example":"2018-06-01T18:56:03Z","description":"The date the report finished generation."},"id":{"type":"integer","format":"int32","example":5,"description":"The identifier of the report instance."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"size":{"example":"","description":"The size of the report, uncompressed.","$ref":"#/definitions/ReportSize"},"status":{"type":"string","example":"complete","description":"The status of the report generation process.","enum":["aborted","failed","complete","running","unknown"]},"uri":{"type":"string","example":"https://hostname:3780/reports/...","description":"The URI of the report accessible through the web console. Refer to the `Download` relation hyperlink for a download URI."}},"description":""},"ReportScope":{"type":"object","discriminator":"","description":""},"ReportSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":24789050,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"23.6 MB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"ReportStorage":{"type":"object","discriminator":"","properties":{"location":{"type":"string","example":"monthly_reports/site/corporate","description":"The location to storage an additional copy of the report. This is a sub-path post-fixed to `$(install_dir)/nsc/reports/$(user)/`."},"path":{"type":"string","example":"$(install_dir)/nsc/reports/$(user)/monthly_reports/site/corporate","description":"The full path to the additional copy storage location.","readOnly":true}},"description":""},"ReportTemplate":{"type":"object","discriminator":"","properties":{"builtin":{"type":"boolean","example":true,"description":"Whether the report template is builtin."},"description":{"type":"string","example":"Provides comprehensive details about discovered assets, vulnerabilities, and users.","description":"The description of the report template."},"id":{"type":"string","example":"audit-report","description":"The identifier of the report template;"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Audit Report","description":"The name of the report template."},"sections":{"type":"array","description":"The sections that comprise the `document` report template.","items":{"type":"string"}},"type":{"type":"string","example":"document","description":"The type of the report template. `document` is a templatized, typically printable, report that has various sections of content. `export` is data-oriented output, typically CSV. `file` is a printable report template using a report template file.","enum":["document","export","file"]}},"description":""},"Resources«Alert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Alert"}}},"description":""},"Resources«AssetGroup»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AssetGroup"}}},"description":""},"Resources«AssetTag»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AssetTag"}}},"description":""},"Resources«AuthenticationSource»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AuthenticationSource"}}},"description":""},"Resources«AvailableReportFormat»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AvailableReportFormat"}}},"description":""},"Resources«Configuration»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Configuration"}}},"description":""},"Resources«Database»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Database"}}},"description":""},"Resources«DiscoveryAsset»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","items":{"$ref":"#/definitions/DiscoveryAsset"}}},"description":""},"Resources«EnginePool»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/EnginePool"}}},"description":""},"Resources«File»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/File"}}},"description":""},"Resources«GroupAccount»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/GroupAccount"}}},"description":""},"Resources«MatchedSolution»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/MatchedSolution"}}},"description":""},"Resources«PolicyOverride»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/PolicyOverride"}}},"description":""},"Resources«ReportInstance»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ReportInstance"}}},"description":""},"Resources«ReportTemplate»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ReportTemplate"}}},"description":""},"Resources«Role»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Role"}}},"description":""},"Resources«ScanEngine»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ScanEngine"}}},"description":""},"Resources«ScanSchedule»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ScanSchedule"}}},"description":""},"Resources«ScanTemplate»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ScanTemplate"}}},"description":""},"Resources«SharedCredential»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SharedCredential"}}},"description":""},"Resources«SiteCredential»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SiteCredential"}}},"description":""},"Resources«SiteSharedCredential»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SiteSharedCredential"}}},"description":""},"Resources«SmtpAlert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SmtpAlert"}}},"description":""},"Resources«SnmpAlert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SnmpAlert"}}},"description":""},"Resources«Software»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Software"}}},"description":""},"Resources«Solution»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Solution"}}},"description":""},"Resources«SonarQuery»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SonarQuery"}}},"description":""},"Resources«SyslogAlert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SyslogAlert"}}},"description":""},"Resources«Tag»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Tag"}}},"description":""},"Resources«UserAccount»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/UserAccount"}}},"description":""},"Resources«User»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/User"}}},"description":""},"Resources«VulnerabilityValidationResource»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/VulnerabilityValidationResource"}}},"description":""},"Resources«WebFormAuthentication»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/WebFormAuthentication"}}},"description":""},"Resources«WebHeaderAuthentication»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/WebHeaderAuthentication"}}},"description":""},"Review":{"type":"object","discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the reviewer detailing the review. ","readOnly":true},"date":{"type":"string","example":"","description":"The date and time the review took place.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The identifier of the user that reviewed the vulnerability exception.","readOnly":true},"user":{"type":"integer","format":"int32","example":"","description":"The login name of the user that reviewed the vulnerability exception.","readOnly":true}},"description":""},"RiskModifierSettings":{"type":"object","discriminator":"","properties":{"high":{"type":"number","format":"double","example":1.5,"description":"${settings.risk.modifier.high}"},"low":{"type":"number","format":"double","example":0.75,"description":"${settings.risk.modifier.low}"},"medium":{"type":"number","format":"double","example":1.0,"description":"${settings.risk.modifier.medium}"},"veryHigh":{"type":"number","format":"double","example":2.0,"description":"${settings.risk.modifier.veryHigh}"},"veryLow":{"type":"number","format":"double","example":0.5,"description":"${settings.risk.modifier.veryLow}"}},"description":""},"RiskSettings":{"type":"object","discriminator":"","properties":{"adjustWithCriticality":{"type":"boolean","example":true,"description":"Whether risk is adjusted using criticality tags."},"criticalityModifiers":{"example":"","description":"If `adjustWithCriticality` is enabled, details the risk modifiers by criticality tag.","$ref":"#/definitions/RiskModifierSettings"},"model":{"type":"string","example":"real_risk","description":"The risk model used to compute risk."}},"description":""},"Role":{"type":"object","required":["description","id","name"],"discriminator":"","properties":{"description":{"type":"string","example":"","description":"The description of the role."},"id":{"type":"string","example":"","description":"The identifier of the role."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The human readable name of the role."},"privileges":{"type":"array","description":"The privileges granted to the role.","items":{"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}}},"description":""},"Scan":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":"","description":"The number of assets found in the scan."},"duration":{"type":"string","example":"","description":"The duration of the scan in ISO8601 format."},"endTime":{"type":"string","example":"","description":"The end time of the scan in ISO8601 format."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine."},"engineName":{"type":"string","example":"","description":"The name of the scan engine."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the scan."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"","description":"The reason for the scan status."},"scanName":{"type":"string","example":"","description":"The user-driven scan name for the scan."},"scanType":{"type":"string","example":"","description":"The scan type (automated, manual, scheduled). "},"startTime":{"type":"string","example":"","description":"The start time of the scan in ISO8601 format."},"startedBy":{"type":"string","example":"","description":"The name of the user that started the scan."},"status":{"type":"string","example":"","description":"The scan status.","enum":["aborted","unknown","running","finished","stopped","error","paused","dispatched","integrating"]},"vulnerabilities":{"example":"","description":"The vulnerability synopsis of the scan.","$ref":"#/definitions/Vulnerabilities"}},"description":""},"ScanEngine":{"type":"object","required":["address","id","name","port"],"discriminator":"","properties":{"address":{"type":"string","example":"corporate-scan-engine-001.acme.com","description":"The address the scan engine is hosted."},"contentVersion":{"type":"string","example":"","description":"The content version of the scan engine.","readOnly":true},"enginePools":{"type":"array","description":"A list of identifiers of engine pools this engine is included in.","readOnly":true,"items":{"type":"integer","format":"int32"}},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the scan engine."},"lastRefreshedDate":{"type":"string","example":"","description":"The date the engine was last refreshed. Date format is in ISO 8601.","readOnly":true},"lastUpdatedDate":{"type":"string","example":"","description":"The date the engine was last updated. Date format is in ISO 8601.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Corporate Scan Engine 001","description":"The name of the scan engine."},"port":{"type":"integer","format":"int32","example":40894,"description":"The port used by the scan engine to communicate with the Security Console."},"productVersion":{"type":"string","example":"","description":"The product version of the scan engine.","readOnly":true},"sites":{"type":"array","description":"A list of identifiers of each site the scan engine is assigned to.","items":{"type":"integer","format":"int32"}}},"description":""},"ScanEvents":{"type":"object","required":["failed","paused","started","stopped"],"discriminator":"","properties":{"failed":{"type":"boolean","example":false,"description":"Generates an alert when a scan fails. Default value is `false`."},"paused":{"type":"boolean","example":false,"description":"Generates an alert when a scan pauses. Default value is `false`."},"resumed":{"type":"boolean","example":false,"description":"Generates an alert when a scan resumes. Default value is `false`."},"started":{"type":"boolean","example":false,"description":"Generates an alert when a scan starts. Default value is `false`."},"stopped":{"type":"boolean","example":false,"description":"Generates an alert when a scan stops. Default value is `false`."}},"description":""},"ScanSchedule":{"type":"object","required":["enabled","onScanRepeat","start"],"discriminator":"","properties":{"assets":{"example":"","description":"Allows one or more assets defined within the site to be scanned for this scan schedule. This property is only supported for static sites. When this property is `null`, or not defined in schedule, then all assets defined in the static site will be scanned.","$ref":"#/definitions/ScheduledScanTargets"},"duration":{"type":"string","example":"","description":"Specifies the maximum duration the scheduled scan is allowed to run. Scheduled scans that do not complete within specified duration will be paused. The scan duration are represented by the format `\"P[n]DT[n]H[n]M\"`. In these representations, the [n] is replaced by a value for each of the date and time elements that follow the [n].The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| P | The duration designator. It must be placed at the start of the duration representation. | \n| D | The day designator that follows the value for the number of days. | \n| T | The time designator that precedes the time portion of the representation. | \n| H | The hour designator that follows the value for the number of hours. | \n| M | The minute designator that follows the value for the number of minutes. | \nFor example, `\"P5DT10H30M\"` represents a duration of \"5 days, 10 hours, and 30 minutes\". Each duration designator is optional; however, at least one must be specified and it must be preceded by the `\"P\"` designator. \n"},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the scan schedule is enabled."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan schedule."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"nextRuntimes":{"type":"array","description":"List the next 10 dates in the future the schedule will launch. ","readOnly":true,"items":{"type":"string"}},"onScanRepeat":{"type":"string","example":"","description":"Specifies the desired behavior of a repeating scheduled scan when the previous scan was paused due to reaching is maximum duration. The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| restart-scan | Stops the previously-paused scan and launches a new scan if the previous scan did not complete within the specified duration. If the previous scheduled scan was not paused, then a new scan is launched. | \n| resume-scan | Resumes the previously-paused scan if the previous scan did not complete within the specified duration. If the previous scheduled scan was not paused, then a new scan is launched. | \n"},"repeat":{"example":"","description":"Settings for repeating a scheduled task.","$ref":"#/definitions/RepeatResource"},"scanEngineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine to be used for this scan schedule. If not set, the site's assigned scan engine will be used."},"scanName":{"type":"string","example":"","description":"A user-defined name for the scan launched by the schedule. If not explicitly set in the schedule, the scan name will be generated prior to the scan launching. Names must be unique."},"scanTemplateId":{"type":"string","example":"","description":"The identifier of the scan template to be used for this scan schedule. If not set, the site's assigned scan template will be used."},"start":{"type":"string","example":"2018-03-01T04:31:56Z","description":"The scheduled start date and time. Date is represented in ISO 8601 format. Repeating schedules will determine the next schedule to begin based on this date and time."}},"description":""},"ScanScope":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"Specify assets to be included in site scans as well as assets to be excluded from site scans. If the property is defined, then at least one address or asset group must be specified for scanning. Property is required when creating a static site.","$ref":"#/definitions/StaticSite"},"connection":{"example":"","description":"Specify discovery connection settings for a dynamic site. Property is required when creating a dynamic site.","$ref":"#/definitions/DynamicSite"}},"description":""},"ScanSettings":{"type":"object","discriminator":"","properties":{"connectionTimeout":{"type":"string","example":"PT15S","description":"The connection timeout when establishing connections to remote scan engines, in ISO 8601 format. For example: `\"PT15S\"`."},"incremental":{"type":"boolean","example":true,"description":"Whether incremental scan results is enabled."},"maximumThreads":{"type":"integer","format":"int32","example":-1,"description":"The maximum number of scan threads to use in any scan. -1 means this is set by the scan template."},"readTimeout":{"type":"string","example":"PT15M","description":"The read timeout when establishing connections to remote scan engines, in ISO 8601 format. For example: `\"PT15M\"`."},"statusIdleTimeout":{"type":"string","example":"PT3M","description":"The idle timeout when checking the status of running scans, in ISO 8601 format. For example: `\"PT3M\"`."},"statusThreads":{"type":"integer","format":"int32","example":3,"description":"The number of threads to use when checking the status of running scans."}},"description":""},"ScanSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":1370433223,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"1.3 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"ScanTargetsResource":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"ScanTemplate":{"type":"object","discriminator":"","properties":{"checks":{"example":"","description":"Settings for which vulnerability checks to run during a scan.
\nThe rules for inclusion of checks is as follows: \n \n- Enabled checks by category and by check type are included
\n- Disabled checks in by category and by check type are removed
\n- Enabled checks in by individual check are added (even if they are disabled in by category or check type)
\n- Disabled checks in by individual check are removed
\n- If unsafe is disabled, unsafe checks are removed
\n- If potential is disabled, potential checks are removed
\n","$ref":"#/definitions/ScanTemplateVulnerabilityChecks"},"database":{"example":"","description":"Settings for discovery databases.","$ref":"#/definitions/ScanTemplateDatabase"},"description":{"type":"string","example":"Performs a full network audit of all systems using only safe checks...","description":"A verbose description of the scan template.."},"discovery":{"example":"","description":"Discovery settings used during a scan.","$ref":"#/definitions/ScanTemplateDiscovery"},"discoveryOnly":{"type":"boolean","example":false,"description":"Whether only discovery is performed during a scan."},"enableWindowsServices":{"type":"boolean","example":false,"description":"Whether Windows services are enabled during a scan. Windows services will be temporarily reconfigured when this option is selected. Original settings will be restored after the scan completes, unless it is interrupted."},"enhancedLogging":{"type":"boolean","example":false,"description":"Whether enhanced logging is gathered during scanning. Collection of enhanced logs may greatly increase the disk space used by a scan."},"id":{"type":"string","example":"full-audit-without-web-spider","description":"The identifier of the scan template","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"maxParallelAssets":{"type":"integer","format":"int32","example":10,"description":"The maximum number of assets scanned simultaneously per scan engine during a scan."},"maxScanProcesses":{"type":"integer","format":"int32","example":10,"description":"The maximum number of scan processes simultaneously allowed against each asset during a scan."},"name":{"type":"string","example":"Full audit","description":"A concise name for the scan template."},"policy":{"example":"","description":"Policy configuration settings used during a scan.","$ref":"#/definitions/Policy"},"policyEnabled":{"type":"boolean","example":true,"description":"Whether policy assessment is performed during a scan."},"telnet":{"example":"","description":"Settings for interacting with the Telnet protocol.","$ref":"#/definitions/Telnet"},"vulnerabilityEnabled":{"type":"boolean","example":true,"description":"Whether vulnerability assessment is performed during a scan."},"web":{"example":"","description":"Web spider settings used during a scan.","$ref":"#/definitions/ScanTemplateWebSpider"},"webEnabled":{"type":"boolean","example":true,"description":"Whether web spidering and assessment are performed during a scan."}},"description":""},"ScanTemplateAssetDiscovery":{"type":"object","discriminator":"","properties":{"collectWhoisInformation":{"type":"boolean","example":false,"description":"Whether to query Whois during discovery. Defaults to `false`."},"fingerprintMinimumCertainty":{"type":"number","format":"double","example":0.16,"description":"The minimum certainty required for a fingerprint to be considered valid during a scan. Defaults to `0.16`.","minimum":0,"maximum":1},"fingerprintRetries":{"type":"integer","format":"int32","example":0,"description":"The number of fingerprinting attempts made to determine the operating system fingerprint. Defaults to `4`.","minimum":0,"maximum":1000},"ipFingerprintingEnabled":{"type":"boolean","example":true,"description":"Whether to fingerprint TCP/IP stacks for hardware, operating system and software information."},"sendArpPings":{"type":"boolean","example":true,"description":"Whether ARP pings are sent during asset discovery. Defaults to `true`."},"sendIcmpPings":{"type":"boolean","example":true,"description":"Whether ICMP pings are sent during asset discovery. Defaults to `false`."},"tcpPorts":{"type":"array","description":"TCP ports to send packets and perform discovery. Defaults to no ports.","items":{"type":"integer","format":"int32"}},"treatTcpResetAsAsset":{"type":"boolean","example":true,"description":"Whether TCP reset responses are treated as live assets. Defaults to `true`."},"udpPorts":{"type":"array","description":"UDP ports to send packets and perform discovery. Defaults to no ports.","items":{"type":"integer","format":"int32"}}},"description":""},"ScanTemplateDatabase":{"type":"object","discriminator":"","properties":{"db2":{"type":"string","example":"database","description":"Database name for DB2 database instance."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"oracle":{"type":"array","example":"default","description":"Database name (SID) for an Oracle database instance.","items":{"type":"string"}},"postgres":{"type":"string","example":"postgres","description":"Database name for PostgesSQL database instance."}},"description":""},"ScanTemplateDiscovery":{"type":"object","discriminator":"","properties":{"asset":{"example":"","description":"Asset discovery settings used during a scan.","$ref":"#/definitions/ScanTemplateAssetDiscovery"},"perfomance":{"example":"","description":"Discovery performance settings used during a scan.","$ref":"#/definitions/ScanTemplateDiscoveryPerformance"},"service":{"example":"","description":"Service discovery settings used during a scan.","$ref":"#/definitions/ScanTemplateServiceDiscovery"}},"description":""},"ScanTemplateDiscoveryPerformance":{"type":"object","discriminator":"","properties":{"packetRate":{"example":"","description":"The number of packets to send per second during scanning.","$ref":"#/definitions/ScanTemplateDiscoveryPerformancePacketsRate"},"parallelism":{"example":"","description":"The number of discovery connection requests to be sent to target host simultaneously. These settings has no effect if values have been set for `scanDelay`.","$ref":"#/definitions/ScanTemplateDiscoveryPerformanceParallelism"},"retryLimit":{"type":"integer","format":"int32","example":3,"description":"The maximum number of attempts to contact target assets. If the limit is exceeded with no response, the given asset is not scanned. Defaults to `3`.","minimum":1,"maximum":15},"scanDelay":{"example":"","description":"The duration to wait between sending packets to each target host during a scan.","$ref":"#/definitions/ScanTemplateDiscoveryPerformanceScanDelay"},"timeout":{"example":"","description":"The duration to wait between retry attempts.","$ref":"#/definitions/ScanTemplateDiscoveryPerformanceTimeout"}},"description":""},"ScanTemplateDiscoveryPerformancePacketsRate":{"type":"object","discriminator":"","properties":{"defeatRateLimit":{"type":"boolean","example":true,"description":"Whether defeat rate limit (defeat-rst-ratelimit) is enforced on the minimum packet setting, which can improve scan speed. If it is disabled, the minimum packet rate setting may be ignored when a target limits its rate of RST (reset) responses to a port scan. This can increase scan accuracy by preventing the scan from missing ports. Defaults to `true`."},"maximum":{"type":"integer","format":"int32","example":15000,"description":"The minimum number of packets to send each second during discovery attempts. Defaults to `0`.","minimum":0,"maximum":15000},"minimum":{"type":"integer","format":"int32","example":450,"description":"The minimum number of packets to send each second during discovery attempts. Defaults to `0`.","minimum":0,"maximum":15000}},"description":""},"ScanTemplateDiscoveryPerformanceParallelism":{"type":"object","discriminator":"","properties":{"maximum":{"type":"integer","format":"int32","example":0,"description":"The maximum number of discovery connection requests send in parallel. Defaults to `0`.","minimum":0,"maximum":1000},"minimum":{"type":"integer","format":"int32","example":0,"description":"The minimum number of discovery connection requests send in parallel. Defaults to `0`.","minimum":0,"maximum":1000}},"description":""},"ScanTemplateDiscoveryPerformanceScanDelay":{"type":"object","discriminator":"","properties":{"maximum":{"type":"string","example":"PT0S","description":"The minimum duration to wait between sending packets to each target host. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P30S` (30s). Defaults to `PT0S`."},"minimum":{"type":"string","example":"PT0S","description":"The maximum duration to wait between sending packets to each target host. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P30S` (30s). Defaults to `PT0S`."}},"description":""},"ScanTemplateDiscoveryPerformanceTimeout":{"type":"object","discriminator":"","properties":{"initial":{"type":"string","example":"PT0.5S","description":"The initial timeout to wait between retry attempts. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT0.5S`."},"maximum":{"type":"string","example":"PT3S","description":"The maximum time to wait between retries. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT3S`."},"minimum":{"type":"string","example":"PT0S","description":"The minimum time to wait between retries. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT0.5S`."}},"description":""},"ScanTemplateServiceDiscovery":{"type":"object","discriminator":"","properties":{"serviceNameFile":{"type":"string","example":"","description":"An optional file that lists each port and the service that commonly resides on it. If scans cannot identify actual services on ports, service names will be derived from this file in scan results. Defaults to empty."},"tcp":{"example":"","description":"TCP service discovery settings.","$ref":"#/definitions/ScanTemplateServiceDiscoveryTcp"},"udp":{"example":"","description":"UDP service discovery settings.","$ref":"#/definitions/ScanTemplateServiceDiscoveryUdp"}},"description":""},"ScanTemplateServiceDiscoveryTcp":{"type":"object","discriminator":"","properties":{"additionalPorts":{"type":"array","example":"3078,8000-8080","description":"Additional TCP ports to scan. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"excludedPorts":{"type":"array","example":"1024","description":"TCP ports to exclude from scanning. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"method":{"type":"string","example":"SYN","description":"The method of TCP discovery. Defaults to `SYN`.","enum":["SYN","SYN+RST","SYN+FIN","SYN+ECE","Full"]},"ports":{"type":"string","example":"well-known","description":"The TCP ports to scan. Defaults to `well-known`.","enum":["all","well-known","custom","none"]}},"description":""},"ScanTemplateServiceDiscoveryUdp":{"type":"object","discriminator":"","properties":{"additionalPorts":{"type":"array","example":"4020-4032","description":"Additional UDP ports to scan. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"excludedPorts":{"type":"array","example":"9899","description":"UDP ports to exclude from scanning. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"ports":{"type":"string","example":"well-known","description":"The UDP ports to scan. Defaults to `well-known`.","enum":["all","well-known","custom","none"]}},"description":""},"ScanTemplateVulnerabilityCheckCategories":{"type":"object","discriminator":"","properties":{"disabled":{"type":"array","description":"The categories of vulnerability checks to disable during a scan.","items":{"type":"string"}},"enabled":{"type":"array","description":"The categories of vulnerability checks to enable during a scan.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"ScanTemplateVulnerabilityCheckIndividual":{"type":"object","discriminator":"","properties":{"disabled":{"type":"array","description":"The individual vulnerability checks to disable during a scan.","items":{"type":"string"}},"enabled":{"type":"array","description":"The individual vulnerability checks to enable during a scan.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"ScanTemplateVulnerabilityChecks":{"type":"object","discriminator":"","properties":{"categories":{"example":"","description":"The vulnerability check categories enabled or disabled during a scan.","$ref":"#/definitions/ScanTemplateVulnerabilityCheckCategories"},"correlate":{"type":"boolean","example":false,"description":"Whether an extra step is performed at the end of the scan where more trust is put in OS patch checks to attempt to override the results of other checks which could be less reliable."},"individual":{"example":"","description":"The individual vulnerability checks enabled or disabled during a scan.","$ref":"#/definitions/ScanTemplateVulnerabilityCheckIndividual"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"potential":{"type":"boolean","example":false,"description":"Whether checks that result in potential vulnerabilities are assessed during a scan."},"types":{"example":"","description":"The vulnerability check types enabled or disabled during a scan.","$ref":"#/definitions/VulnerabilityCheckType"},"unsafe":{"type":"boolean","example":false,"description":"Whether checks considered \"unsafe\" are assessed during a scan."}},"description":""},"ScanTemplateWebSpider":{"type":"object","discriminator":"","properties":{"dontScanMultiUseDevices":{"type":"boolean","example":true,"description":"Whether scanning of multi-use devices, such as printers or print servers should be avoided."},"includeQueryStrings":{"type":"boolean","example":false,"description":"Whether query strings are using in URLs when web spidering. This causes the web spider to make many more requests to the Web server. This will increase overall scan time and possibly affect the Web server's performance for legitimate users."},"paths":{"example":"","description":"Paths to use when web spidering.","$ref":"#/definitions/ScanTemplateWebSpiderPaths"},"patterns":{"example":"","description":"Patterns to match responses during web spidering.","$ref":"#/definitions/ScanTemplateWebSpiderPatterns"},"performance":{"example":"","description":"Performance settings used during web spidering.","$ref":"#/definitions/ScanTemplateWebSpiderPerformance"},"testCommonUsernamesAndPasswords":{"type":"boolean","example":false,"description":"Whether to determine if discovered logon forms accept commonly used user names or passwords. The process may cause authentication services with certain security policies to lock out accounts with these credentials."},"testXssInSingleScan":{"type":"boolean","example":false,"description":"Whether to test for persistent cross-site scripting during a single scan. This test helps to reduce the risk of dangerous attacks via malicious code stored on Web servers. Enabling it may increase Web spider scan times."},"userAgent":{"type":"string","example":"Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)","description":"The `User-Agent` to use when web spidering. Defaults to `\"Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)\"`."}},"description":""},"ScanTemplateWebSpiderPaths":{"type":"object","discriminator":"","properties":{"boostrap":{"type":"string","example":"/root","description":"Paths to bootstrap spidering with."},"excluded":{"type":"string","example":"/root/sensitive.html","description":"Paths excluded from spidering."},"honorRobotDirectives":{"type":"boolean","example":false,"description":"${scan.template.web.spider.paths.robot.directives.description}"}},"description":""},"ScanTemplateWebSpiderPatterns":{"type":"object","discriminator":"","properties":{"sensitiveContent":{"type":"string","example":"","description":"A regular expression that is used to find sensitive content on a page."},"sensitiveField":{"type":"string","example":"(p|pass)(word|phrase|wd|code)","description":"A regular expression that is used to find fields that may contain sensitive input. Defaults to `\"(p|pass)(word|phrase|wd|code)\"`."}},"description":""},"ScanTemplateWebSpiderPerformance":{"type":"object","discriminator":"","properties":{"httpDaemonsToSkip":{"type":"array","description":"The names of HTTP Daemons (HTTPd) to skip when spidering. For example, `\"CUPS\"`.","items":{"type":"string"}},"maximumDirectoryLevels":{"type":"integer","format":"int32","example":6,"description":"The directory depth limit for web spidering. Limiting directory depth can save significant time, especially with large sites. A value of `0` signifies unlimited directory traversal. Defaults to `6`.","minimum":1,"maximum":100},"maximumForeignHosts":{"type":"integer","format":"int32","example":100,"description":"The maximum number of unique host names that the spider may resolve. This function adds substantial time to the spidering process, especially with large Web sites, because of frequent cross-link checking involved. Defaults to `100`."},"maximumLinkDepth":{"type":"integer","format":"int32","example":6,"description":"The maximum depth of links to traverse when spidering. Defaults to `6`.","minimum":0,"maximum":100},"maximumPages":{"type":"integer","format":"int32","example":3000,"description":"The maximum the number of pages that are spidered. This is a time-saving measure for large sites. Defaults to `3000`.","minimum":0,"maximum":1000000},"maximumRetries":{"type":"integer","format":"int32","example":2,"description":"The maximum the number of times to retry a request after a failure. A value of `0` means no retry attempts are made. Defaults to `2`.","minimum":0,"maximum":999},"maximumTime":{"type":"string","example":"PT0S","description":"The maximum length of time to web spider. This limit prevents scans from taking longer than the allotted scan schedule. A value of `PT0S` means no limit is applied. The acceptable range is `PT1M` to `PT16666.6667H`."},"responseTimeout":{"type":"string","example":"PT2M","description":"The duration to wait for a response from a target web server. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P1H` (1 hour). Defaults to `PT2M`."},"threadsPerServer":{"type":"integer","format":"int32","example":3,"description":"The number of threads to use per web server being spidered. Defaults to `3`.","minimum":0,"maximum":999}},"description":""},"ScheduledScanTargets":{"type":"object","discriminator":"","properties":{"excludedAssetGroups":{"example":"","description":"Assets associated with these asset groups will be excluded from the site's scan.","$ref":"#/definitions/ExcludedAssetGroups"},"excludedTargets":{"example":"","description":"Addresses to be excluded from the site's scan. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","$ref":"#/definitions/ExcludedScanTargets"},"includedAssetGroups":{"example":"","description":"Allows users to specify a subset of the site's included asset groups to be included in the scan. If the property is defined, then at least one valid already defined as an included asset group must be specified.","$ref":"#/definitions/IncludedAssetGroups"},"includedTargets":{"example":"","description":"Allows users to specify a subset of the site's scan targets to be included in the scan. If the property is defined, then at least one address must be specified.","$ref":"#/definitions/IncludedScanTargets"}},"description":""},"SearchCriteria":{"type":"object","discriminator":"","properties":{"filters":{"type":"array","description":"Filters used to match assets. See Search Criteria for more information on the structure and format.","items":{"$ref":"#/definitions/SwaggerSearchCriteriaFilter"}},"match":{"type":"string","example":"all","description":"Operator to determine how to match filters. `all` requires that all filters match for an asset to be included. `any` requires only one filter to match for an asset to be included.","enum":["any","all"]}},"description":""},"Service":{"type":"object","required":["port","protocol"],"discriminator":"","properties":{"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the service.","items":{"$ref":"#/definitions/Configuration"}},"databases":{"type":"array","description":"The databases enumerated on the service.","items":{"$ref":"#/definitions/Database"}},"family":{"type":"string","example":"","description":"The family of the service."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"CIFS Name Service","description":"The name of the service."},"port":{"type":"integer","format":"int32","example":139,"description":"The port of the service."},"product":{"type":"string","example":"Samba","description":"The product running the service."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},"userGroups":{"type":"array","description":"The group accounts enumerated on the service.","items":{"$ref":"#/definitions/GroupAccount"}},"users":{"type":"array","description":"The user accounts enumerated on the service.","items":{"$ref":"#/definitions/UserAccount"}},"vendor":{"type":"string","example":"","description":"The vendor of the service."},"version":{"type":"string","example":"3.5.11","description":"The version of the service."},"webApplications":{"type":"array","description":"The web applications found on the service.","items":{"$ref":"#/definitions/WebApplication"}}},"description":""},"ServiceLink":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"https://hostname:3780/api/3/...","description":"A hypertext reference, which is either a URI (see RFC 3986) or URI template (see RFC 6570). "},"port":{"type":"integer","format":"int32","example":22,"description":"The port of the service."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},"rel":{"type":"string","example":"Service","description":"The link relation type. This value is one from the Link Relation Type Registry or is the type of resource being linked to."}},"description":""},"ServiceUnavailableError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"503","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["503"]}},"description":""},"Settings":{"type":"object","discriminator":"","properties":{"assetLinking":{"type":"boolean","example":true,"description":"Whether asset linking is enabled."},"authentication":{"example":"","description":"Details the authentication settings.","$ref":"#/definitions/AuthenticationSettings"},"database":{"example":"","description":"Details the database settings.","$ref":"#/definitions/DatabaseSettings"},"directory":{"type":"string","example":"/opt/rapid7/nexpose","description":"The root directory of the console."},"insightPlatform":{"type":"boolean","example":true,"description":"Whether the usage of the Insight Platform is enabled."},"insightPlatformRegion":{"type":"string","example":"us-east-1","description":"The region used for the Insight Platform, if enabled."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"risk":{"example":"","description":"Details risk configuration and settings.","$ref":"#/definitions/RiskSettings"},"scan":{"example":"","description":"Details the global settings for scanning.","$ref":"#/definitions/ScanSettings"},"serialNumber":{"type":"string","example":"729F31B1C92F3C91DFA8A649F4D5C883C269BD45","description":"The console serial number."},"smtp":{"example":"","description":"Global SMTP distribution settings.","$ref":"#/definitions/SmtpSettings"},"updates":{"example":"","description":"Details the update settings.","$ref":"#/definitions/UpdateSettings"},"uuid":{"type":"string","example":"7231036a-e052-11e7-80c1-9a214cf093ae","description":"The universally unique identifier (UUID) of the console."},"web":{"example":"","description":"Details the web server settings.","$ref":"#/definitions/WebSettings"}},"description":""},"SharedCredential":{"type":"object","required":["account","name","siteAssignment"],"discriminator":"","properties":{"account":{"example":"","description":"Specify the type of service to authenticate as well as all of the information required by that service. \n
\n
service string \n
\n\"as400\" \n\"cifs\" \n\"cifshash\" \n\"cvs\" \n\"db2\" \n\"ftp\" \n\"http\" \n\"ms-sql\" \n\"mysql\" \n\"notes\" \n\"oracle\" \n\"pop\" \n\"postgresql\" \n\"remote-exec\" \n\"snmp\" \n\"snmpv3\" \n\"ssh\" \n\"ssh-key\" \n\"sybase\" \n\"telnet\" \n
\n
The type of service to authenticate with.
\n
\n
\n\nThe following are the names of the valid values for service: \n| Value | Service | \n| ------------- | ----------------------------------------------- | \n| `as400` | IBM AS/400 | \n| `cifs` | Microsoft Windows/Samba (SMB/CIFS) | \n| `cifshash` | Microsoft Windows/Samba LM/NTLM Hash (SMB/CIFS) | \n| `cvs` | Concurrent Versioning System (CVS) | \n| `db2` | DB2 | \n| `ftp` | File Transfer Protocol (FTP) | \n| `http` | Web Site HTTP Authentication | \n| `ms-sql` | Microsoft SQL Server | \n| `mysql` | MySQL Server | \n| `notes` | Lotus Notes/Domino | \n| `oracle` | Oracle | \n| `pop` | Post Office Protocol (POP) | \n| `postgresql` | PostgreSQL | \n| `remote-exec` | Remote Execution | \n| `snmp` | Simple Network Management Protocol v1/v2c | \n| `snmpv3` | Simple Network Management Protocol v3 | \n| `ssh` | Secure Shell (SSH) | \n| `ssh-key` | Secure Shell (SSH) Public Key | \n| `sybase` | Sybase SQL Server | \n| `telnet` | Telnet | \n\nThe following is a specification of supported credential properties for each type of service. These properties are to be specified within the account
object.
\n\n`as400` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifshash` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
ntlmHash string Required \n
The NTLM password hash. Note: This property is not returned in responses for security.
\n
\n
\n\n`cvs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`db2` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ftp` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`http` supported properties:\n \n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ms-sql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`mysql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The Notes ID password. Note: This property is not returned in responses for security.
\n
\n
\n\n`notes` supported properties:\n \n
\n
notesIDPassword string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`oracle` supported properties:\n \n
\n
sid string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
enumerateSids boolean \n
\n
\nBoolean flag instructing the scan engine to attempt to enumerate SIDs from your environment. If set to true
, set the Oracle Net Listener password in property oracleListenerPassword
.
\n
\n
\n
\n
oracleListenerPassword string \n
The Oracle Net Listener password. Used to enumerate SIDs from your environment.
\n
\n
\n\n`pop` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`postgresql` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`remote-exec` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmp` supported properties:\n \n
\n
communityName string Required \n
The community name that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmpv3` supported properties:\n \n
\n
authenticationType string Required \n
\n\"no-authentication\" \n\"md5\" \n\"sha\" \n
\n
The authentication protocols available to use in SNMP v3.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string \n
\n
\nThe password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
. Note: This property is not returned in responses for security.
\n
\n
\n
\n
privacyType string \n
\n\"no-privacy\" \n\"des\" \n\"aes-128\" \n\"aes-192\" \n\"aes-192-with-3-des-key-extension\" \n\"aes-256\" \n\"aes-265-with-3-des-key-extension\" \n
\n
The privacy protocols available to use in SNMP v3.
\n
\n
\n
privacyPassword string \n
\n
\nThe privacy password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
and when the privacyType
is set to a valid value other than code>\"no-privacy\". Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh-key` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
privateKeyPassword string Required \n
The password for private key. Note: This property is not returned in responses for security.
\n
\n
\n
pemKey string Required \n
The PEM-format private key. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`sybase` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`telnet` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n","$ref":"#/definitions/SharedCredentialAccount"},"description":{"type":"string","example":"","description":"The description of the credential."},"hostRestriction":{"type":"string","example":"","description":"The host name or IP address that you want to restrict the credentials to."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the credential."},"name":{"type":"string","example":"","description":"The name of the credential."},"portRestriction":{"type":"integer","format":"int32","example":"","description":"Further restricts the credential to attempt to authenticate on a specific port. The port can only be restricted if the property `hostRestriction` is specified.","minimum":1,"maximum":65535},"siteAssignment":{"type":"string","example":"","description":"Assigns the shared scan credential either to be available to all sites or to a specific list of sites.\nThe following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| `\"all-sites\"` | The shared scan credential is assigned to all current and future sites. | \n| `\"specific-sites\"` | The shared scan credential is assigned to zero sites by default. Administrators must explicitly assign sites to the shared credential. | \nShared scan credentials assigned to a site can disabled within the site configuration, if needed."},"sites":{"type":"array","description":"List of site identifiers. These sites are explicitly assigned access to the shared scan credential, allowing the site to use the credential for authentication during a scan. This property can only be set if the value of property `siteAssignment` is set to `\"specific-sites\"`. When the property `siteAssignment` is set to `\"all-sites\"`, this property will be `null`.","items":{"type":"integer","format":"int32"}}},"description":""},"SharedCredentialAccount":{"type":"object","discriminator":"","properties":{"authenticationType":{"type":"string"},"communityName":{"type":"string"},"database":{"type":"string"},"domain":{"type":"string"},"enumerateSids":{"type":"boolean"},"notesIDPassword":{"type":"string"},"ntlmHash":{"type":"string"},"oracleListenerPassword":{"type":"string"},"password":{"type":"string"},"pemKey":{"type":"string"},"permissionElevation":{"type":"string"},"permissionElevationPassword":{"type":"string"},"permissionElevationUserName":{"type":"string"},"privacyPassword":{"type":"string"},"privacyType":{"type":"string"},"privateKeyPassword":{"type":"string"},"realm":{"type":"string"},"service":{"type":"string"},"sid":{"type":"string"},"useWindowsAuthentication":{"type":"boolean"},"username":{"type":"string"}},"description":""},"Site":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":768,"description":"The number of assets that belong to the site.","readOnly":true},"connectionType":{"type":"string","example":"","description":"The type of discovery connection configured for the site. This property only applies to dynamic sites.","readOnly":true,"enum":["activesync-ldap","activesync-office365","activesync-powershell","aws","dhcp","sonar","vsphere"]},"description":{"type":"string","example":"","description":"The site description."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the site."},"importance":{"type":"string","example":"","description":"The site importance."},"lastScanTime":{"type":"string","example":"","description":"The date and time of the site's last scan.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The site name."},"riskScore":{"type":"number","format":"double","example":4457823.78,"description":"The risk score (with criticality adjustments) of the site.","readOnly":true},"scanEngine":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine configured in the site."},"scanTemplate":{"type":"string","example":"","description":"The identifier of the scan template configured in the site."},"type":{"type":"string","example":"","description":"The type of the site.","readOnly":true,"enum":["agent","dynamic","static"]},"vulnerabilities":{"example":"","description":"Summary information for distinct vulnerabilities found on the assets.","readOnly":true,"$ref":"#/definitions/Vulnerabilities"}},"description":""},"SiteCreateResource":{"type":"object","required":["name"],"discriminator":"","properties":{"description":{"type":"string","example":"","description":"The site's description."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of a scan engine. Default scan engine is selected when not specified."},"importance":{"type":"string","example":"","description":"The site importance. Defaults to `\"normal\"` if not specified.","enum":["very_low","low","normal","high","very_high"]},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The site name. Name must be unique."},"scan":{"example":"","description":"Defines the scope of scan targets for the site, which can be addresses, or asset groups, for static sites and a discovery configuration for dynamic sites. Only one property must be set by the user when saving a site.","$ref":"#/definitions/ScanScope"},"scanTemplateId":{"type":"string","example":"","description":"The identifier of a scan template. Default scan template is selected when not specified."}},"description":""},"SiteCredential":{"type":"object","required":["account","name"],"discriminator":"","properties":{"account":{"example":"","description":"Specify the type of service to authenticate as well as all of the information required by that service. \n
\n
service string \n
\n\"as400\" \n\"cifs\" \n\"cifshash\" \n\"cvs\" \n\"db2\" \n\"ftp\" \n\"http\" \n\"ms-sql\" \n\"mysql\" \n\"notes\" \n\"oracle\" \n\"pop\" \n\"postgresql\" \n\"remote-exec\" \n\"snmp\" \n\"snmpv3\" \n\"ssh\" \n\"ssh-key\" \n\"sybase\" \n\"telnet\" \n
\n
The type of service to authenticate with.
\n
\n
\n\nThe following are the names of the valid values for service: \n| Value | Service | \n| ------------- | ----------------------------------------------- | \n| `as400` | IBM AS/400 | \n| `cifs` | Microsoft Windows/Samba (SMB/CIFS) | \n| `cifshash` | Microsoft Windows/Samba LM/NTLM Hash (SMB/CIFS) | \n| `cvs` | Concurrent Versioning System (CVS) | \n| `db2` | DB2 | \n| `ftp` | File Transfer Protocol (FTP) | \n| `http` | Web Site HTTP Authentication | \n| `ms-sql` | Microsoft SQL Server | \n| `mysql` | MySQL Server | \n| `notes` | Lotus Notes/Domino | \n| `oracle` | Oracle | \n| `pop` | Post Office Protocol (POP) | \n| `postgresql` | PostgreSQL | \n| `remote-exec` | Remote Execution | \n| `snmp` | Simple Network Management Protocol v1/v2c | \n| `snmpv3` | Simple Network Management Protocol v3 | \n| `ssh` | Secure Shell (SSH) | \n| `ssh-key` | Secure Shell (SSH) Public Key | \n| `sybase` | Sybase SQL Server | \n| `telnet` | Telnet | \n\nThe following is a specification of supported credential properties for each type of service. These properties are to be specified within the account
object.
\n\n`as400` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifshash` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
ntlmHash string Required \n
The NTLM password hash. Note: This property is not returned in responses for security.
\n
\n
\n\n`cvs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`db2` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ftp` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`http` supported properties:\n \n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ms-sql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`mysql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The Notes ID password. Note: This property is not returned in responses for security.
\n
\n
\n\n`notes` supported properties:\n \n
\n
notesIDPassword string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`oracle` supported properties:\n \n
\n
sid string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
enumerateSids boolean \n
\n
\nBoolean flag instructing the scan engine to attempt to enumerate SIDs from your environment. If set to true
, set the Oracle Net Listener password in property oracleListenerPassword
.
\n
\n
\n
\n
oracleListenerPassword string \n
The Oracle Net Listener password. Used to enumerate SIDs from your environment.
\n
\n
\n\n`pop` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`postgresql` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`remote-exec` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmp` supported properties:\n \n
\n
communityName string Required \n
The community name that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmpv3` supported properties:\n \n
\n
authenticationType string Required \n
\n\"no-authentication\" \n\"md5\" \n\"sha\" \n
\n
The authentication protocols available to use in SNMP v3.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string \n
\n
\nThe password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
. Note: This property is not returned in responses for security.
\n
\n
\n
\n
privacyType string \n
\n\"no-privacy\" \n\"des\" \n\"aes-128\" \n\"aes-192\" \n\"aes-192-with-3-des-key-extension\" \n\"aes-256\" \n\"aes-265-with-3-des-key-extension\" \n
\n
The privacy protocols available to use in SNMP v3.
\n
\n
\n
privacyPassword string \n
\n
\nThe privacy password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
and when the privacyType
is set to a valid value other than code>\"no-privacy\". Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh-key` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
privateKeyPassword string Required \n
The password for private key. Note: This property is not returned in responses for security.
\n
\n
\n
pemKey string Required \n
The PEM-format private key. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`sybase` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`telnet` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n","$ref":"#/definitions/Account"},"description":{"type":"string","example":"","description":"The description of the credential."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the credential is enabled for use during the scan."},"hostRestriction":{"type":"string","example":"","description":"The host name or IP address that you want to restrict the credentials to."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the credential."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the credential."},"portRestriction":{"type":"integer","format":"int32","example":"","description":"Further restricts the credential to attempt to authenticate on a specific port. The port can only be restricted if the property `hostRestriction` is specified.","minimum":1,"maximum":65535}},"description":""},"SiteDiscoveryConnection":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the discovery connection.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the discovery connection.","readOnly":true},"type":{"type":"string","example":"","description":"The type of discovery connection configured for the site. This property only applies to dynamic sites.","readOnly":true,"enum":["activesync-ldap","activesync-office365","activesync-powershell","aws","dhcp","sonar","vsphere"]}},"description":""},"SiteOrganization":{"type":"object","discriminator":"","properties":{"address":{"type":"string","example":"","description":"The address."},"city":{"type":"string","example":"","description":"The city."},"contact":{"type":"string","example":"","description":"The contact person name."},"country":{"type":"string","example":"","description":"The country."},"email":{"type":"string","example":"","description":"The e-mail address."},"jobTitle":{"type":"string","example":"","description":"The job title."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The organization name."},"phone":{"type":"string","example":"","description":"The phone number."},"state":{"type":"string","example":"","description":"The state."},"url":{"type":"string","example":"","description":"The organization URL."},"zipCode":{"type":"string","example":"","description":"The zip or region code."}},"description":""},"SiteSharedCredential":{"type":"object","discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the shared credential is enabled for the site's scans.","readOnly":true},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the shared credential.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the shared credential.","readOnly":true},"service":{"type":"string","example":"","description":"The type of service the credential is configured to authenticate with.","readOnly":true,"enum":["as400","cifs","cifshash","cvs","db2","ftp","http","ms-sql","mysql","notes","oracle","pop","postgresql","remote-exec","snmp","snmpv3","ssh","ssh-key","sybase","telnet"]}},"description":""},"SiteUpdateResource":{"type":"object","required":["engineId","importance","name","scanTemplateId"],"discriminator":"","properties":{"description":{"type":"string","example":"","description":"The site's description."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of a scan engine."},"importance":{"type":"string","example":"","description":"The site importance.","enum":["very_low","low","normal","high","very_high"]},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The site name. Name must be unique."},"scanTemplateId":{"type":"string","example":"","description":"The identifier of a scan template."}},"description":""},"SmtpAlert":{"type":"object","required":["enabled","name","notification","recipients","relayServer"],"discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"limitAlertText":{"type":"boolean","example":false,"description":"Reports basic information in the alert, if enabled."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]},"recipients":{"type":"array","description":"The recipient list. At least one recipient must be specified. Each recipient must be a valid e-mail address.","items":{"type":"string"}},"relayServer":{"type":"string","example":"","description":"The SMTP server/relay to send messages through."},"senderEmailAddress":{"type":"string","example":"","description":"The sender e-mail address that will appear in the from field."}},"description":""},"SmtpSettings":{"type":"object","discriminator":"","properties":{"host":{"type":"string","example":"mail@acme.com","description":"The host to send to."},"port":{"type":"integer","format":"int32","example":25,"description":"The port to send to."},"sender":{"type":"string","example":"security@acme.com","description":"The sender to send from."}},"description":""},"SnmpAlert":{"type":"object","required":["community","enabled","name","notification","server"],"discriminator":"","properties":{"community":{"type":"string","example":"","description":"The SNMP community name."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]},"server":{"type":"string","example":"","description":"The SNMP management server."}},"description":""},"Software":{"type":"object","discriminator":"","properties":{"configurations":{"type":"array","description":"${software.attributes.description}","items":{"$ref":"#/definitions/Configuration"}},"cpe":{"example":"","description":"The Common Platform Enumeration (CPE) of the software.","$ref":"#/definitions/SoftwareCpe"},"description":{"type":"string","example":"Microsoft Outlook 2013 15.0.4867.1000","description":"The description of the software."},"family":{"type":"string","example":"Office 2013","description":"The family of the software."},"id":{"type":"integer","format":"int64"},"product":{"type":"string","example":"Outlook 2013","description":"The product of the software."},"type":{"type":"string","example":"Productivity","description":"The version of the software."},"vendor":{"type":"string","example":"Microsoft","description":"The vendor of the software."},"version":{"type":"string","example":"15.0.4867.1000","description":"The version of the software."}},"description":""},"SoftwareCpe":{"type":"object","required":["part"],"discriminator":"","properties":{"edition":{"type":"string","example":"enterprise","description":"Edition-related terms applied by the vendor to the product. "},"language":{"type":"string","example":"","description":"Defines the language supported in the user interface of the product being described. The format is of the language tag adheres to RFC5646."},"other":{"type":"string","example":"","description":"Captures any other general descriptive or identifying information which is vendor- or product-specific and which does not logically fit in any other attribute value. "},"part":{"type":"string","example":"o","description":"A single letter code that designates the particular platform part that is being identified.","enum":["o","a","h"]},"product":{"type":"string","example":"windows_server_2008","description":"the most common and recognizable title or name of the product."},"swEdition":{"type":"string","example":"","description":"Characterizes how the product is tailored to a particular market or class of end users. "},"targetHW":{"type":"string","example":"","description":"Characterize the instruction set architecture on which the product operates. "},"targetSW":{"type":"string","example":"","description":"Characterize the software computing environment within which the product operates."},"update":{"type":"string","example":"sp1","description":"Vendor-specific alphanumeric strings characterizing the particular update, service pack, or point release of the product."},"v2.2":{"type":"string","example":"cpe:/o:microsoft:windows_server_2008:-:sp1:enterprise","description":"The full CPE string in the CPE 2.2 format."},"v2.3":{"type":"string","example":"cpe:2.3:o:microsoft:windows_server_2008:-:sp1:enterprise:*:*:*:*:*","description":"The full CPE string in the CPE 2.3 format."},"vendor":{"type":"string","example":"microsoft","description":"The person or organization that manufactured or created the product."},"version":{"type":"string","example":"-","description":"Vendor-specific alphanumeric strings characterizing the particular release version of the product."}},"description":""},"Solution":{"type":"object","discriminator":"","properties":{"additionalInformation":{"example":"","description":"Additional information or resources that can assist in applying the remediation.","$ref":"#/definitions/AdditionalInformation"},"appliesTo":{"type":"string","example":"libexpat1 on Ubuntu Linux","description":"The systems or software the solution applies to."},"estimate":{"type":"string","example":"PT10M","description":"The estimated duration to apply the solution, in ISO 8601 format. For example: `\"PT5M\"`."},"id":{"type":"string","example":"ubuntu-upgrade-libexpat1","description":"The identifier of the solution."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"steps":{"example":"","description":"The steps required to remediate the vulnerability.","$ref":"#/definitions/Steps"},"summary":{"example":"","description":"The summary of the solution.","$ref":"#/definitions/Summary"},"type":{"type":"string","example":"configuration","description":"The type of the solution. One of: `\"Configuration\"`, `\"Rollup patch\"`, `\"Patch\"`","enum":["configuration","rollup-patch","patch","unknown"]}},"description":""},"SolutionMatch":{"type":"object","discriminator":"","properties":{"check":{"type":"string","example":"","description":"The identifier of the vulnerability check used to match the solution, if type is `check`."},"confidence":{"type":"string","example":"","description":"The confidence of the matching process for the solution.","enum":["exact","partial","none"]},"fingerprint":{"example":"","description":"The fingerprint used to perform solution matching, if type is `operating-system`, `service`, or `software`.","$ref":"#/definitions/Fingerprint"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"solution":{"type":"string","example":"ubuntu-upgrade-libexpat1","description":"The identifier of the matched solution."},"type":{"type":"string","example":"software","description":"The means by which a solution was matched.","enum":["none","check","operating-system","service","software"]}},"description":""},"SonarCriteria":{"type":"object","discriminator":"","properties":{"filters":{"type":"array","description":"The filters in the Sonar query.","items":{"$ref":"#/definitions/SonarCriterion"}}},"description":""},"SonarCriterion":{"type":"object","discriminator":"","properties":{"days":{"type":"integer","format":"int32","example":"","description":"If the field is `scan-date-within-the-last`, the number of days to search against."},"lower":{"type":"string","example":"","description":"If the field is `ip-address-range`, the lower limit of the search."},"searchDomain":{"type":"string","example":"acme.com","description":"If the field is `domain-contains`, the domain to search against."},"type":{"type":"string","example":"domain-contains","description":"The type of query to perform.","enum":["domain-contains","scan-date-within-the-last","ip-address-range"]},"upper":{"type":"string","example":"","description":"If the field is `ip-address-range`, the upper limit of the search."}},"description":""},"SonarQuery":{"type":"object","discriminator":"","properties":{"criteria":{"example":"","description":"The search criteria used to search for assets from the Sonar API.","$ref":"#/definitions/SonarCriteria"},"id":{"type":"integer","format":"int64","example":14,"description":"The identifier of the Sonar query.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Assets in Domain","description":"The name of the Sonar query."}},"description":""},"StaticSite":{"type":"object","discriminator":"","properties":{"excludedAssetGroups":{"example":"","description":"Assets associated with these asset groups will be excluded from the site's scan.","$ref":"#/definitions/ExcludedAssetGroups"},"excludedTargets":{"example":"","description":"Addresses to be excluded from the site's scan. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","$ref":"#/definitions/ExcludedScanTargets"},"includedAssetGroups":{"example":"","description":"Assets associated with these asset groups will be included in the site's scan.","$ref":"#/definitions/IncludedAssetGroups"},"includedTargets":{"example":"","description":"Addresses to be included in the site's scan. At least one address must be specified in a static site. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","$ref":"#/definitions/IncludedScanTargets"}},"description":""},"Steps":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"\n Use `apt-get upgrade` to upgrade libexpat1 to the latest version.\n
","description":"Textual representation of the content."},"text":{"type":"string","example":"Use `apt-get upgrade` to upgrade libexpat1 to the latest version.","description":"Textual representation of the content."}},"description":""},"Submission":{"type":"object","discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the submitter as to why the exception was submitted."},"date":{"type":"string","example":"","description":"The date and time the vulnerability exception was submitted.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The login name of the user that submitted the vulnerability exception.","readOnly":true},"reason":{"type":"string","example":"","description":"The reason the vulnerability exception was submitted. One of: `\"False Positive\"`, `\"Compensating Control\"`, `\"Acceptable Use\"`, `\"Acceptable Risk\"`, `\"Other\"`"},"user":{"type":"integer","format":"int32","example":"","description":"The identifier of the user that submitted the vulnerability exception.","readOnly":true}},"description":""},"Summary":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"Upgrade libexpat1","description":"Textual representation of the content."},"text":{"type":"string","example":"Upgrade libexpat1","description":"Textual representation of the content."}},"description":""},"SwaggerDiscoverySearchCriteriaFilter":{"type":"object","discriminator":"","properties":{"field":{"type":"string","example":"","description":"The filter field for the search criteria."},"lower":{"type":"string","example":"","description":"The lower value to match in a range criteria."},"operator":{"type":"string","example":"","description":"The operator on how to match the search criteria."},"upper":{"type":"string","example":"","description":"The upper value to match in a range criteria."},"value":{"type":"string","example":"","description":"The single value to match using the operator."},"values":{"type":"array","description":"An array of values to match using the operator.","items":{"type":"string"}}},"description":""},"SwaggerSearchCriteriaFilter":{"type":"object","discriminator":"","properties":{"field":{"type":"string","example":"","description":"The filter field for the search criteria."},"lower":{"type":"string","example":"","description":"The lower value to match in a range criteria."},"operator":{"type":"string","example":"","description":"The operator on how to match the search criteria."},"upper":{"type":"string","example":"","description":"The upper value to match in a range criteria."},"value":{"type":"string","example":"","description":"The single value to match using the operator."},"values":{"type":"array","description":"An array of values to match using the operator.","items":{"type":"string"}}},"description":""},"SyslogAlert":{"type":"object","required":["enabled","name","notification","server"],"discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]},"server":{"type":"string","example":"","description":"The Syslog server to send messages to."}},"description":""},"Tag":{"type":"object","required":["name","type"],"discriminator":"","properties":{"color":{"type":"string","example":"default","description":"The color to use when rendering the tag in a user interface."},"created":{"type":"string","example":"2017-10-07T23:50:01.205Z","description":"The date and time the tag was created."},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the tag.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Very High","description":"The name (label) of the tab."},"riskModifier":{"type":"number","format":"double","example":2.0,"description":"The amount to adjust risk of an asset tagged with this tag. "},"searchCriteria":{"$ref":"#/definitions/SearchCriteria"},"source":{"type":"string","example":"built-in","description":"The source of the tag.","readOnly":true,"enum":["built-in","custom"]},"type":{"type":"string","example":"criticality","description":"The type of the tag."}},"description":""},"TagAssetSource":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":92,"description":"If the `source` is `\"asset-group\"` or `\"site\"` the identifier of the asset group or site that causes the tag to apply to the asset."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"source":{"type":"string","example":"site","description":"The source by which a tag applies to an asset.","enum":["site","asset-group","criteria","tag","unknown"]}},"description":""},"TagLink":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":78,"description":"The identifier of the tagged asset."},"sources":{"type":"array","description":"The source(s) by which a tag is applied to an asset.","items":{"type":"string","enum":["site","asset-group","criteria","tag","unknown"]}}},"description":""},"TaggedAssetReferences":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"$ref":"#/definitions/TagLink"}}},"description":""},"Telnet":{"type":"object","discriminator":"","properties":{"characterSet":{"type":"string","example":"ASCII","description":"The character set to use."},"failedLoginRegex":{"type":"string","example":"(?:[i,I]ncorrect|[u,U]nknown|[f,F]ail|[i,I]nvalid|[l,L]ogin|[p,P]assword|[p,P]asswd|[u,U]sername|[u,U]nable|[e,E]rror|[d,D]enied|[r,R]eject|[r,R]efuse|[c,C]lose|[c,C]losing|Not on system console|% Bad)","description":"Regular expression to match a failed login response."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"loginRegex":{"type":"string","example":"(?:[l,L]ogin|[u,U]ser.?[nN]ame) *\\:","description":"Regular expression to match a login response."},"passwordPromptRegex":{"type":"string","example":"(?:[p,P]assword|[p,P]asswd) *\\:","description":"Regular expression to match a password prompt."},"questionableLoginRegex":{"type":"string","example":"(?:[l,L]ast [l,L]ogin *\\:|allows only .* Telnet Client License)","description":"Regular expression to match a potential false negative login response."}},"description":""},"TokenResource":{"type":"object","discriminator":"","properties":{"key":{"type":"string","example":"","description":"The two-factor authentication token seed (key)."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"UnauthorizedError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"401","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["401"]}},"description":""},"UniqueId":{"type":"object","required":["id"],"discriminator":"","properties":{"id":{"type":"string","example":"c56b2c59-4e9b-4b89-85e2-13f8146eb071","description":"The unique identifier."},"source":{"type":"string","example":"WQL","description":"The source of the unique identifier."}},"description":""},"UpdateId":{"type":"object","discriminator":"","properties":{"productId":{"type":"string","example":"281474976711146","description":"Product update identifier."},"versionId":{"type":"string","example":"490","description":"Version update identifier."}},"description":""},"UpdateInfo":{"type":"object","discriminator":"","properties":{"content":{"type":"string","example":"3192129162","description":"The most recent content update."},"contentPartial":{"type":"string","example":"723680177","description":"The most recent, partially-applied (in-memory), content update."},"id":{"example":"","description":"Details of update identifiers.","$ref":"#/definitions/UpdateId"},"product":{"type":"string","example":"2200922472","description":"The most recent product update."}},"description":""},"UpdateSettings":{"type":"object","discriminator":"","properties":{"contentAutoUpdate":{"type":"boolean","example":true,"description":"Whether automatic content updates are enabled."},"enabled":{"type":"boolean","example":true,"description":"Whether updates are enabled."},"productAutoUpdate":{"type":"boolean","example":true,"description":"Whether automatic product updates are enabled."}},"description":""},"User":{"type":"object","required":["login","name","password","role"],"discriminator":"","properties":{"authentication":{"example":"","description":"The details of the authentication source used to authenticate the user.","$ref":"#/definitions/CreateAuthenticationSource"},"email":{"type":"string","example":"","description":"The email address of the user."},"enabled":{"type":"boolean","example":false,"description":"Whether the user account is enabled. Defaults to `true`."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the user.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"locale":{"example":"","description":"The locale and language preferences for the user.","$ref":"#/definitions/LocalePreferences"},"locked":{"type":"boolean","example":false,"description":"Whether the user account is locked (exceeded maximum password retry attempts).","readOnly":true},"login":{"type":"string","example":"","description":"The login name of the user."},"name":{"type":"string","example":"","description":"The full name of the user."},"password":{"type":"string","example":"","description":"The password to use for the user."},"passwordResetOnLogin":{"type":"boolean","example":false,"description":"Whether to require a reset of the user's password upon first login. Defaults to `false`."},"role":{"example":"","description":"The privileges and role to assign the user.","$ref":"#/definitions/UserCreateRole"}},"description":""},"UserAccount":{"type":"object","required":["name"],"discriminator":"","properties":{"fullName":{"type":"string","example":"Smith, John","description":"The full name of the user account."},"id":{"type":"integer","format":"int32","example":8952,"description":"The identifier of the user account."},"name":{"type":"string","example":"john_smith","description":"The name of the user account."}},"description":""},"UserCreateRole":{"type":"object","required":["id"],"discriminator":"","properties":{"allAssetGroups":{"type":"boolean","example":false,"description":"Whether to grant the user access to all asset groups. Defaults to `false`."},"allSites":{"type":"boolean","example":false,"description":"Whether to grant the user access to all sites. Defaults to `false`."},"id":{"type":"string","example":"","description":"The identifier of the role the user is assigned to."},"superuser":{"type":"boolean","example":false,"description":"Whether the user is a superuser. Defaults to `false`."}},"description":""},"UserRole":{"type":"object","discriminator":"","properties":{"allAssetGroups":{"type":"boolean","example":false,"description":"Whether the user has access to all asset groups."},"allSites":{"type":"boolean","example":false,"description":"Whether the user has access to all sites."},"id":{"type":"string","example":"","description":"The identifier of the role the user is assigned to."},"name":{"type":"string","example":"","description":"The name of the role the user is assigned to."},"privileges":{"type":"array","description":"The privileges granted to the user by their role.","items":{"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}},"superuser":{"type":"boolean","example":false,"description":"Whether the user is a superuser."}},"description":""},"VersionInfo":{"type":"object","discriminator":"","properties":{"build":{"type":"string","example":"2017-12-10-14-11","description":"The build number."},"changeset":{"type":"string","example":"7061fb4e7c355160df79a77d8983bed2af01f2bf","description":"The changeset of the source build."},"platform":{"type":"string","example":"Linux64","description":"The platform of the build."},"semantic":{"type":"string","example":"6.4.65","description":"The semantic version number of the installation."},"update":{"example":"","description":"Version update details.","$ref":"#/definitions/UpdateInfo"}},"description":""},"Vulnerabilities":{"type":"object","discriminator":"","properties":{"critical":{"type":"integer","format":"int64","example":16,"description":"The number of critical vulnerabilities.","readOnly":true},"moderate":{"type":"integer","format":"int64","example":3,"description":"The number of moderate vulnerabilities.","readOnly":true},"severe":{"type":"integer","format":"int64","example":76,"description":"The number of severe vulnerabilities.","readOnly":true},"total":{"type":"integer","format":"int64","example":95,"description":"The total number of vulnerabilities.","readOnly":true}},"description":""},"Vulnerability":{"type":"object","discriminator":"","properties":{"added":{"type":"string","example":"2017-10-10","description":"The date the vulnerability coverage was added. The format is an ISO 8601 date, `YYYY-MM-DD`."},"categories":{"type":"array","description":"All vulnerability categories assigned to this vulnerability.","items":{"type":"string"}},"cves":{"type":"array","description":"All CVEs assigned to this vulnerability.","items":{"type":"string"}},"cvss":{"example":"","description":"The CVSS vector(s) for the vulnerability.","$ref":"#/definitions/VulnerabilityCvss"},"denialOfService":{"type":"boolean","example":false,"description":"Whether the vulnerability can lead to Denial of Service (DoS)."},"description":{"example":"","description":"The description of the vulnerability.","$ref":"#/definitions/ContentDescription"},"exploits":{"type":"integer","format":"int32","example":"","description":"The exploits that can be used to exploit a vulnerability."},"id":{"type":"string","example":"msft-cve-2017-11804","description":"The identifier of the vulnerability."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"malwareKits":{"type":"integer","format":"int32","example":"","description":"The malware kits that are known to be used to exploit the vulnerability."},"modified":{"type":"string","example":"2017-10-10","description":"The last date the vulnerability was modified. The format is an ISO 8601 date, `YYYY-MM-DD`."},"pci":{"example":"","description":"Details the Payment Card Industry (PCI) details of the vulnerability.","$ref":"#/definitions/PCI"},"published":{"type":"string","example":"2017-10-10","description":"The date the vulnerability was first published or announced. The format is an ISO 8601 date, `YYYY-MM-DD`."},"riskScore":{"type":"number","format":"double","example":123.69,"description":"The risk score of the vulnerability, rounded to a maximum of to digits of precision. If using the default Rapid7 Real Riskâ„¢ model, this value ranges from 0-1000."},"severity":{"type":"string","example":"Severe","description":"The severity of the vulnerability, one of: `\"Moderate\"`, `\"Severe\"`, `\"Critical\"`."},"severityScore":{"type":"integer","format":"int32","example":4,"description":"The severity score of the vulnerability, on a scale of 0-10."},"title":{"type":"string","example":"Microsoft CVE-2017-11804: Scripting Engine Memory Corruption Vulnerability","description":"The title (summary) of the vulnerability."}},"description":""},"VulnerabilityCategory":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":23,"description":"The identifier of the vulnerability category."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Microsoft","description":"The name of the category."}},"description":""},"VulnerabilityCheck":{"type":"object","discriminator":"","properties":{"id":{"type":"string","example":"WINDOWS-HOTFIX-MS14-009-01123281-bac0-44d8-a729-cd31c19d6bd1","description":"The identifier of the vulnerability check."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"plugin":{"type":"string","example":"WindowsHotfixScanner","description":"The name of the plugin (module) the check belongs to."},"potential":{"type":"boolean","example":false,"description":"Whether the check results in potential vulnerabilities."},"requiresCredentials":{"type":"boolean","example":true,"description":"Whether the check requires credentials in order to run."},"safe":{"type":"boolean","example":true,"description":"Whether the checked is deemed to be \"safe\" to run. A safe check is one that can be run without negatively impacting the host it is run against."},"service":{"type":"boolean","example":false,"description":"Whether the check operates against a service, or false it it is a local check."},"unique":{"type":"boolean","example":false,"description":"Whether the check may only register a result once during a scan of host. Otherwise, the tests in the check can run multiple times, possibly registering multiple results."},"vulnerability":{"type":"string","example":"windows-hotfix-ms14-009","description":"The identifier of the vulnerability the check results in."}},"description":""},"VulnerabilityCheckType":{"type":"object","discriminator":"","properties":{"disabled":{"type":"array","description":"The types of vulnerability checks to disable during a scan.","items":{"type":"string"}},"enabled":{"type":"array","description":"The types of vulnerability checks to enable during a scan.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"VulnerabilityCvss":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"v2":{"example":"","description":"The Common Vulnerability Scoring System (CVSS v2) information for the vulnerability.","$ref":"#/definitions/VulnerabilityCvssV2"},"v3":{"example":"","description":"The Common Vulnerability Scoring System (CVSS v3) information for the vulnerability.","$ref":"#/definitions/VulnerabilityCvssV3"}},"description":""},"VulnerabilityCvssV2":{"type":"object","discriminator":"","properties":{"accessComplexity":{"type":"string","example":"M","description":"Access Complexity (AC) component which measures the complexity of the attack required to exploit the vulnerability once an attacker has gained access to the target system. \n| Access Complexity | Description | \n| ----------------------- | ------------------------------------------------------------------------ | \n| High (`\"H\"`) | Specialized access conditions exist. | \n| Medium (`\"M\"`) | The access conditions are somewhat specialized. | \n| Low (`\"L\"`) | Specialized access conditions or extenuating circumstances do not exist. |","enum":["L","M","H"]},"accessVector":{"type":"string","example":"L","description":"Access Vector (Av) component which reflects how the vulnerability is exploited. \n| Access Vector | Description | \n| -------------------------- | ----------- | \n| Local (`\"L\"`) | A vulnerability exploitable with only local access requires the attacker to have either physical access to the vulnerable system or a local (shell) account. | \n| Adjacent Network (`\"A\"`) | A vulnerability exploitable with adjacent network access requires the attacker to have access to either the broadcast or collision domain of the vulnerable software. | \n| Network (`\"N\"`) | A vulnerability exploitable with network access means the vulnerable software is bound to the network stack and the attacker does not require local network access or local access. Such a vulnerability is often termed \"remotely exploitable\". | \n","enum":["L","A","N"]},"authentication":{"type":"string","example":"N","description":"Authentication (Au) component which measures the number of times an attacker must authenticate to a target in order to exploit a vulnerability. \n| Authentication | Description | \n| -------------------- | ----------- | \n| Multiple (`\"M\"`) | Exploiting the vulnerability requires that the attacker authenticate two or more times, even if the same credentials are used each time. | \n| Single (`\"S\"`) | The vulnerability requires an attacker to be logged into the system. | \n| None (`\"N\"`) | Authentication is not required to exploit the vulnerability. |","enum":["N","S","M"]},"availabilityImpact":{"type":"string","example":"P","description":"Availability Impact (A) component which measures the impact to availability of a successfully exploited vulnerability. \n| Availability Impact | Description | \n| -------------------------- | ------------ | \n| None (`\"N\"`) | There is no impact to the availability of the system. | \n| Partial (`\"P\"`) | There is reduced performance or interruptions in resource availability. | \n| Complete (`\"C\"`) | There is a total shutdown of the affected resource. The attacker can render the resource completely unavailable. |","enum":["N","P","C"]},"confidentialityImpact":{"type":"string","example":"P","description":"Confidentiality Impact (C) component which measures the impact on confidentiality of a successfully exploited vulnerability. \n| Confidentiality Impact | Description | \n| -------------------------- | ------------ | \n| None (`\"N\"`) | There is no impact to the confidentiality of the system. | \n| Partial (`\"P\"`) | There is considerable informational disclosure. Access to some system files is possible, but the attacker does not have control over what is obtained, or the scope of the loss is constrained. | \n| Complete (`\"C\"`) | There is total information disclosure, resulting in all system files being revealed. The attacker is able to read all of the system's data (memory, files, etc.) | ","enum":["N","P","C"]},"exploitScore":{"type":"number","format":"double","example":3.3926,"description":"The CVSS exploit score."},"impactScore":{"type":"number","format":"double","example":6.443,"description":"The CVSS impact score."},"integrityImpact":{"type":"string","example":"P","description":"Integrity Impact (I) component measures the impact to integrity of a successfully exploited vulnerability. \n| Integrity Impact | Description | \n| -------------------------- | ------------ | \n| None (`\"N\"`) | There is no impact to the integrity of the system. | \n| Partial (`\"P\"`) | Modification of some system files or information is possible, but the attacker does not have control over what can be modified, or the scope of what the attacker can affect is limited. | \n| Complete (`\"C\"`) | There is a total compromise of system integrity. There is a complete loss of system protection, resulting in the entire system being compromised. The attacker is able to modify any files on the target system. |","enum":["N","P","C"]},"score":{"type":"number","format":"double","example":4.4,"description":"The CVSS score, which ranges from 0-10."},"vector":{"type":"string","example":"AV:L/AC:M/Au:N/C:P/I:P/A:P","description":"The CVSS v2 vector."}},"description":""},"VulnerabilityCvssV3":{"type":"object","discriminator":"","properties":{"attackComplexity":{"type":"string","example":"H","description":"Access Complexity (AC) component with measures the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. \n| Access Complexity | Description | \n| ---------------------- | ------------------------------------------------------------------------ | \n| Low (`\"L\"`) | Specialized access conditions or extenuating circumstances do not exist. | \n| High (`\"H\"`) | A successful attack depends on conditions beyond the attacker's control. |","enum":["L","H"]},"attackVector":{"type":"string","example":"N","description":"Attack Vector (AV) component which measures context by which vulnerability exploitation is possible. \n| Access Vector | Description | \n| ---------------------- | ------------------------------------------------------------------------ | \n| Local (`\"L\"`) | A vulnerability exploitable with only local access requires the attacker to have either physical access to the vulnerable system or a local (shell) account. | \n| Adjacent (`\"A\"`) | A vulnerability exploitable with adjacent network access requires the attacker to have access to either the broadcast or collision domain of the vulnerable software. | \n| Network (`\"N\"`) | A vulnerability exploitable with network access means the vulnerable software is bound to the network stack and the attacker does not require local network access or local access. Such a vulnerability is often termed \"remotely exploitable\". | \n","enum":["N","A","L","P"]},"availabilityImpact":{"type":"string","example":"H","description":"Availability Impact (A) measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. \n| Availability Impact | Description | \n| -------------------------- | ------------ | \n| High (`\"H\"`) | There is total loss of availability, resulting in the attacker being able to fully deny access to resources in the impacted component; this loss is either sustained (while the attacker continues to deliver the attack) or persistent (the condition persists even after the attack has completed). | \n| Low (`\"L\"`) | There is reduced performance or interruptions in resource availability. Even if repeated exploitation of the vulnerability is possible, the attacker does not have the ability to completely deny service to legitimate users. | \n| None (`\"N\"`) | There is no impact to availability within the impacted component. |","enum":["N","L","H"]},"confidentialityImpact":{"type":"string","example":"H","description":"Confidentiality Impact (C) component which measures the impact on confidentiality of a successfully exploited vulnerability. \n| Confidentiality Impact | Description | \n| -------------------------- | ------------ | \n| High (`\"H\"`) | There is total loss of confidentiality, resulting in all resources within the impacted component being divulged to the attacker. | \n| Low (`\"L\"`) | There is some loss of confidentiality. Access to some restricted information is obtained, but the attacker does not have control over what information is obtained, or the amount or kind of loss is constrained. | \n| None (`\"N\"`) | There is no loss of confidentiality within the impacted component. |","enum":["N","L","H"]},"exploitScore":{"type":"number","format":"double","example":1.6201,"description":"The CVSS impact score."},"impactScore":{"type":"number","format":"double","example":5.8731,"description":"The CVSS exploit score."},"integrityImpact":{"type":"string","example":"H","description":"Integrity Impact (I) measures the impact to integrity of a successfully exploited vulnerability. Integrity refers to the trustworthiness and veracity of information. \n| Integrity Impact | Description | \n| ------------------- | ------------ | \n| High (`\"H\"`) | There is a total loss of integrity, or a complete loss of protection. | \n| Low (`\"L\"`) | Modification of data is possible, but the attacker does not have control over the consequence of a modification, or the amount of modification is constrained. | \n| None (`\"N\"`) | There is no loss of integrity within the impacted component. |","enum":["N","L","H"]},"privilegeRequired":{"type":"string","example":"N","description":"Privileges Required (PR) measures the level of privileges an attacker must possess before successfully exploiting the vulnerability. \n| Privileges Required (PR) | Description | \n| ---------------------------- | ------------------------------------------------------------------------ | \n| None (`\"N\"`) | The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files to carry out an attack. | \n| Low (`\"L\"`) | The attacker is authorized with (i.e. requires) privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. | \n| High (`\"H\"`) | The attacker is authorized with (i.e. requires) privileges that provide significant (e.g. administrative) control over the vulnerable component that could affect component-wide settings and files. |","enum":["N","L","H"]},"scope":{"type":"string","example":"U","description":"Scope (S) measures the collection of privileges defined by a computing authority (e.g. an application, an operating system, or a sandbox environment) when granting access to computing resources (e.g. files, CPU, memory, etc). These privileges are assigned based on some method of identification and authorization. \n| Scope (S) | Description | \n| -------------------- | ------------------------------------------------------------------------ | \n| Unchanged (`\"U\"`) | An exploited vulnerability can only affect resources managed by the same authority. In this case the vulnerable component and the impacted component are the same. | \n| Changed (`\"C\"`) | An exploited vulnerability can affect resources beyond the authorization privileges intended by the vulnerable component. In this case the vulnerable component and the impacted component are different. |","enum":["U","C"]},"score":{"type":"number","format":"double","example":7.5,"description":"The CVSS score, which ranges from 0-10."},"userInteraction":{"type":"string","example":"R","description":"User Interaction (UI) measures the requirement for a user, other than the attacker, to participate in the successful compromise of the vulnerable component. \n| User Interaction (UI) | Description | \n| ---------------------------- | ------------------------------------------------------------------------- | \n| None (`\"N\"`) | The vulnerable system can be exploited without interaction from any user. | \n| Required (`\"R\"`) | Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited. |","enum":["N","R"]},"vector":{"type":"string","example":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","description":"The CVSS v3 vector."}},"description":""},"VulnerabilityEvents":{"type":"object","required":["confirmedVulnerabilities","potentialVulnerabilities","unconfirmedVulnerabilities","vulnerabilitySeverity"],"discriminator":"","properties":{"confirmedVulnerabilities":{"type":"boolean","example":false,"description":"Generates an alert for vulnerability results of confirmed vulnerabilties. A vulnerability is \"confirmed\" when asset-specific vulnerability tests, such as exploits, produce positive results. Default value is `true`."},"potentialVulnerabilities":{"type":"boolean","example":false,"description":"Generates an alert for vulnerability results of potential vulnerabilties. A vulnerability is \"potential\" if a check for a potential vulnerabilty is positive. Default value is `true`."},"unconfirmedVulnerabilities":{"type":"boolean","example":false,"description":"Generates an alert for vulnerability results of unconfirmed vulnerabilties. A vulnerability is \"unconfirmed\" when a version of a scanned service or software is known to be vulnerable, but there is no positive verification. Default value is `true`."},"vulnerabilitySeverity":{"type":"string","example":"","description":"Generates an alert for vulnerability results of the selected vulnerability severity. Default value is `\"any_severity\"`.","enum":["any_severity","severe_and_critical","only_critical"]}},"description":""},"VulnerabilityException":{"type":"object","discriminator":"","properties":{"expires":{"type":"string","example":"","description":"The date and time the vulnerability exception is set to expire."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the vulnerability exception.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"review":{"example":"","description":"Details regarding the review and/or approval of the exception.","readOnly":true,"$ref":"#/definitions/Review"},"scope":{"example":"","description":"The scope of the vulnerability exception, indicating the results it applies to.","$ref":"#/definitions/ExceptionScope"},"state":{"type":"string","example":"","description":"The state of the vulnerability exception. One of: `\"Deleted\"`, `\"Expired\"`, `\"Approved\"`, `\"Rejected\"`, `\"Under Review\"."},"submit":{"example":"","description":"Details regarding the submission of the exception.","readOnly":true,"$ref":"#/definitions/Submission"}},"description":""},"VulnerabilityFinding":{"type":"object","required":["id","instances","status"],"discriminator":"","properties":{"id":{"type":"string","example":"ssh-openssh-x11uselocalhost-x11-forwarding-session-hijack","description":"The identifier of the vulnerability."},"instances":{"type":"integer","format":"int32","example":1,"description":"The number of vulnerable occurrences of the vulnerability. This does not include `invulnerable` instances."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"results":{"type":"array","description":"The vulnerability check results for the finding. Multiple instances may be present if one or more checks fired, or a check has multiple independent results.","items":{"$ref":"#/definitions/AssessmentResult"}},"status":{"type":"string","example":"vulnerable","description":"The status of the finding.","enum":["vulnerable","invulnerable","no-results"]}},"description":""},"VulnerabilityReference":{"type":"object","discriminator":"","properties":{"advisory":{"example":"","description":"Hypermedia link to the destination of the vulnerability reference.","$ref":"#/definitions/AdvisoryLink"},"id":{"type":"integer","format":"int32","example":157986,"description":"The identifier of the vulnerability reference."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"reference":{"type":"string","example":"4041689","description":"The contents of the reference, typically an identifier or hyperlink. Example: `\"CVE-2011-0762\"`"},"source":{"type":"string","example":"mskb","description":"The originating source of the reference. Examples: `\"url\"`, `\"cve\"`, `\"bid\"`, `\"redhat\"`"}},"description":""},"VulnerabilityValidationResource":{"type":"object","discriminator":"","properties":{"date":{"type":"string","example":"2017-12-21T04:54:32.314Z","description":"The date and time the vulnerability was validated, in the ISO8601 format."},"id":{"type":"integer","format":"int64","example":46,"description":"The identifier of the vulnerability validation.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"source":{"example":"","description":"The source used to validate the vulnerability.","$ref":"#/definitions/VulnerabilityValidationSource"}},"description":""},"VulnerabilityValidationSource":{"type":"object","discriminator":"","properties":{"key":{"type":"string","example":"exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"The identifier or name of the exploit that was used to validate the vulnerability."},"name":{"type":"string","example":"metasploit","description":"The name of the source used to validate the vulnerability.","enum":["metasploit","other"]}},"description":""},"WebApplication":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":30712,"description":"The identifier of the web application."},"pages":{"type":"array","description":"The pages discovered on the web application.","items":{"$ref":"#/definitions/WebPage"}},"root":{"type":"string","example":"/","description":"The web root of the web application."},"virtualHost":{"type":"string","example":"102.89.22.253","description":"The virtual host of the web application."}},"description":""},"WebFormAuthentication":{"type":"object","discriminator":"","properties":{"baseURL":{"type":"string","example":"","description":"The base URL is the main address from which all paths in the target Web site begin. Includes the protocol. Example: http://acme.com."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the HTML form web authentication is enabled for the site's scans."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the HTML form web authentication."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"loginRegularExpression":{"type":"string","example":"","description":"The regular expression matches the message that the Web server returns if the login attempt fails."},"loginURL":{"type":"string","example":"","description":"The login page URL contains form for logging on. Include the base URL. Example: http://acme.com/login."},"name":{"type":"string","example":"","description":"The HTML form web authentication name."},"service":{"type":"string","example":"","description":"Value indicating whether this web authentication configuration is for HTML form authentication or HTTP header authentication.","enum":["html-form","http-header"]}},"description":""},"WebHeaderAuthentication":{"type":"object","discriminator":"","properties":{"baseURL":{"type":"string","example":"","description":"The base URL is the main address from which all paths in the target Web site begin. Includes the protocol. Example: http://acme.com."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the HTTP header web authentication is enabled for the site's scans."},"headers":{"type":"object","example":"","description":"A map of HTTP headers the scan engine will use when negotiating with the Web server for an \"authenticated\" page. Make sure that the session ID is valid between the time you save this ID for the site and when you start the scan. Note: This property is not returned in responses for security.","additionalProperties":{"type":"string"}},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the HTTP header web authentication."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"loginRegularExpression":{"type":"string","example":"","description":"The regular expression matches the message that the Web server returns if the login attempt fails."},"name":{"type":"string","example":"","description":"The HTTP header web authentication name."},"service":{"type":"string","example":"","description":"Value indicating whether this web authentication configuration is for HTML form authentication or HTTP header authentication.","enum":["html-form","http-header"]}},"description":""},"WebPage":{"type":"object","discriminator":"","properties":{"linkType":{"type":"string","example":"html-ref","description":"The type of link used to traverse or detect the page.","enum":["seed","html-ref","robots","js-string","query-param","pdf","css","implied-dir","rss","redirection","sitemap","backup","vck-rewrite","non-ref-guess","soft-404"]},"path":{"type":"string","example":"/docs/config/index.html","description":"The path to the page (URI)."},"response":{"type":"integer","format":"int32","example":200,"description":"The HTTP response code observed with retrieving the page."}},"description":""},"WebSettings":{"type":"object","discriminator":"","properties":{"maxThreads":{"type":"integer","format":"int32","example":100,"description":"The maximum number of request handling threads."},"minThreads":{"type":"integer","format":"int32","example":10,"description":"The minimum number of request handling threads."},"port":{"type":"integer","format":"int32","example":3780,"description":"The port the web server is accepting requests."},"sessionTimeout":{"type":"string","example":"PT10M","description":"Session timeout duration, in ISO 8601 format. For example: `\"PT10M\"`."}},"description":""}}}
\ No newline at end of file
diff --git a/api-files/console-swagger-6.5.2.json b/api-files/console-swagger-6.5.2.json
new file mode 100644
index 0000000..93073ee
--- /dev/null
+++ b/api-files/console-swagger-6.5.2.json
@@ -0,0 +1 @@
+{"swagger":"2.0","info":{"description":"# Overview \n\nThis guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the\nRepresentation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the\n`application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and\nis hypermedia friendly. All API connections must be made to the security console using HTTPS.\n\n## Versioning\n\nVersioning is specified in the URL and the base path of this API is: `https://:/api/3/`.\n\n## Specification\n\nAn OpenAPI v2 specification (also \nknown as Swagger 2) of this API is available. Tools such as swagger-codegen\ncan be used to generate an API client in the language of your choosing using this specification document.\n\nDownload the specification: Download
\n\n## Authentication\n\nAuthorization to the API uses HTTP Basic Authorization \n(see RFC 2617 for more information). Requests must \nsupply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`.\n\n\n\n### 2FA\n\nThis API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic\nAuthorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this\nmust be enabled on the console and be configured for the account accessing the API.\n\n## Resources\n\n### Naming\n\nResource names represent nouns and identify the entity being manipulated or accessed. All collection resources are \npluralized to indicate to the client they are interacting with a collection of multiple resources of the same type.\nSingular resource names are used when there exists only one resource available to interact with.\n\nThe following naming conventions are used by this API:\n\n| Type | Case |\n| --------------------------------------------- | ------------------------ |\n| Resource names | `lower_snake_case` |\n| Header, body, and query parameters parameters | `camelCase` |\n| JSON fields and property names | `camelCase` |\n\n#### Collections\n\nA collection resource is a parent resource for instance resources, but can itself be retrieved and operated on \nindependently. Collection resources use a pluralized resource name. The resource path for collection resources follow \nthe convention:\n\n```\n/api/3/{resource_name}\n```\n\n#### Instances\n\nAn instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource.\nInstance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows \nthe convention:\n\n```\n/api/3/{resource_name}/{instance_id}...\n```\n\n## Verbs\n\nThe following HTTP operations are supported throughout this API. The general usage of the operation and both\nits failure and success status codes are outlined below. \n \n| Verb | Usage | Success | Failure |\n| --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- |\n| `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` |\n| `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` |\n| `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` |\n| `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` |\n\n### Common Operations\n\n#### OPTIONS\n\nAll resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. \nThe `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response\nis always a `200 OK` status.\n\n### Collection Resources\n\nCollection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations.\n\n#### GET\n\nThe `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities \ncontained within the collection. This also includes the optional capability to filter or search resources during\nthe request. The response from a collection listing is a paginated document. See \n[hypermedia links](#section/Overview/Paging) for more information.\n\n#### POST\n\nThe `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier \nis not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The\ncontent of the `POST` request is sent in the request body. The response to a successful `POST` request should be a \n`201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly \ncreated resource. \n\nThe `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, \ninstead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully \ncomplete but has been accepted for future processing. This request will respond similarly with a `Location` header with \nlink to the job-oriented asynchronous resource that was created and/or queued.\n\n#### PUT\n\nThe `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace\nor update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created`\nwith a valid `Location` header field set to the URI that can be used to access to the newly created resource.\n\n`PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that \nupdates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes \nperformed.\n\n#### DELETE\n\nThe `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources.\nThe typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the \nside-effects of the changes performed.\n\n### Instance Resources\n\nInstance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations.\n\n#### GET\n\nRetrieves the details of a specific resource by its identifier. The details retrieved can be controlled through \nproperty selection and property views. The content of the resource is returned within the body of the response in the \nacceptable media type. \n\n#### PUT\n\nAllows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, \nit will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to \nbe undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. \n\nThe content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL \n(not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, \nwith a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) \nresource. \n\n#### POST\n\nPerforms a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the \nuse of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance \nresource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource \ncreated/persisted as a result of the operation. This varies by endpoint.\n\n#### PATCH\n\nThe `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that\nenforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the \nresource it is applied to. If a property is missing, it is assumed to not have changed.\n\n#### DELETE\n\nPermanently removes the individual resource from the system. If the resource is an association between resources, only \nthe association is removed, not the resources themselves. A successful deletion of the resource should return \n`204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a \nnon-existent resource should return a `404 NOT FOUND`.\n\n## Requests\n\nUnless otherwise indicated, the default request body media type is `application/json`.\n\n### Headers\n\nCommonly used request headers include:\n\n| Header | Example | Purpose | \n| ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- |\n| `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. |\n| `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). |\n| `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). |\n| `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication |\n| `Token ` | `123456` | Two-factor authentication token (if enabled) |\n\n### Dates & Times\n\nDates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input:\n\n| Value | Format | Notes |\n| --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- |\n| Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time |\n| Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC |\n| Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | |\n| Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | |\n| Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | |\n \n### Timezones\n\nTimezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`.\n \n### Paging\n\nPagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. \nAs these are control parameters, they are prefixed with the underscore character. The page parameter dictates the \nzero-based index of the page to retrieve, and the `size` indicates the size of the page. \n\nFor example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30.\n\nThe maximum page size for a request is 500.\n\n### Sorting\n\nSorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports \nidentifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is:\n\n```\nsort=property[,ASC|DESC]...\n```\n\nTherefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title \ndescending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order \nsorting, all properties are sorted in the same direction. To sort the results with varying orders by property,\n multiple sort parameters are passed. \n \nFor example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title \ndescending, in that order.\n\n## Responses\n\nThe following response statuses may be returned by this API.\n \n| Status | Meaning | Usage |\n| ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. |\n| `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. |\n| `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. |\n| `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. |\n| `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. |\n| `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. |\n| `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. |\n| `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. |\n| `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. |\n| `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. |\n| `415` | Unsupported Media Type | The media type is not supported for the requested resource. |\n| `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. |\n\n### Security\n\nThe response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, \nerror statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a \nguideline for privileged resource response statuses:\n\n| Use Case | Access | Resource | Permission | Status |\n| ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ |\n| Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` |\n| Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` |\n| Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` |\n| Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` |\n| Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` |\n| Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` |\n| Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` |\n\n### Headers\n\nCommonly used response headers include:\n\n| Header | Example | Purpose |\n| -------------------------- | --------------------------------- | --------------------------------------------------------------- |\n| `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. |\n| `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). |\n| `Content-Encoding` | `gzip` | The encoding of the response body (if any). |\n| `Location` | | Refers to the URI of the resource created by a request. |\n| `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. |\n| `Retry-After` | 5000 | Indicates the time to wait before retrying a request. |\n| `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. |\n| `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. |\n| `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. |\n| `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. |\n\n### Format\n\nWhen `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). \nAdditionally, gzip compression/encoding is supported on all responses. \n\n#### Dates & Times\n\nDates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC.\n\nFor example:\n\n| Value | Format | Example |\n| --------------- | ------------------------------ | --------------------- |\n| Date | `YYYY-MM-DD` | 2017-12-03 |\n| Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z |\n\n#### Content\n\nIn some resources a Content data type is used. This allows for multiple formats of representation to be returned\nwithin resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable\nfor output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML \nelement. Note, the HTML returned is not a valid stand-alone HTML document.\n\n#### Paging\n\nThe response to a paginated request follows the format:\n\n```json\n{\n resources\": [ \n ... \n ],\n \"page\": { \n \"number\" : ...,\n \"size\" : ...,\n \"totalResources\" : ...,\n \"totalPages\" : ...\n },\n \"links\": [ \n \"first\" : {\n \"href\" : \"...\"\n },\n \"prev\" : {\n \"href\" : \"...\"\n },\n \"self\" : {\n \"href\" : \"...\"\n },\n \"next\" : {\n \"href\" : \"...\"\n },\n \"last\" : {\n \"href\" : \"...\"\n } \n ]\n}\n```\n\nThe `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at \nminimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total\npossible pages. The object for the page includes the following properties:\n\n- number - The page number (zero-based) of the page returned.\n- size - The size of the pages, which is less than or equal to the maximum page size.\n- totalResources - The total amount of resources available across all pages.\n- totalPages - The total amount of pages.\n\nThe last property of the paged response is the `links` array, which contains all available hypermedia links. For \npaginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must\nalways be returned and should contain a link to allow the client to replicate the original request against the \ncollection resource in an identical manner to that in which it was invoked. \n\nThe \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. \nThe \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters \nrequired to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first\nand last pages respectively. \n\nRequests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \n\"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may \nchange while pagination is being traversed, and the total number of pages and resources may change between requests \nwithin the same filtered/queries resource collection.\n\n#### Property Views\n\nThe \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can \ntune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). \nView are specified using a query parameter, in this format:\n\n```bash\n/?view={viewName}\n```\n\n#### Error\n\nAny error responses can provide a response body with a message to the client indicating more information (if applicable) \nto aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the \nresponse is as follows:\n\n```json\n{\n \"status\": ,\n \"message\": ,\n \"links\" : [ {\n \"rel\" : \"...\",\n \"href\" : \"...\"\n } ]\n} \n ```\n \nThe `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message \nproperty is a localized message in the request client's locale (if applicable) that articulates the nature of the \nerror. The last property is the `links` property. This may contain additional \n[hypermedia links](#section/Overview/Authentication) to troubleshoot.\n\n#### Search Criteria \n\nMultiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each \nsearch filter has a generic format of:\n\n```json\n{ \n \"field\": \"\", \n \"operator\": \"\", \n [\"value\": \"\",]\n [\"lower\": \"\",]\n [\"upper\": \"\"]\n}\n \n```\n\nEvery filter defines two required properties `field` and `operator`. The field is the name of an asset property that\nis being filtered on. The operator is a type and property-specific operating performed on the filtered property. The\nvalid values for fields and operators are outlined in the table below.\n\nEvery filter also defines one or more values that are supplied to the operator. The valid values vary by operator\nand are outlined below.\n\n##### Fields\n\nThe following table outlines the search criteria fields and the available operators:\n\n| Field | Operators |\n| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |\n| `alternate-address-type` | `in` |\n| `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` |\n| `container-status` | `is` ` is not` |\n| `containers` | `are` |\n| `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` |\n| `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` |\n| `cve` | `is` ` is not` ` contains` ` does not contain` |\n| `cvss-access-complexity` | `is` ` is not` |\n| `cvss-authentication-required` | `is` ` is not` |\n| `cvss-access-vector` | `is` ` is not` |\n| `cvss-availability-impact` | `is` ` is not` |\n| `cvss-confidentiality-impact` | `is` ` is not` |\n| `cvss-integrity-impact` | `is` ` is not` |\n| `cvss-v3-confidentiality-impact` | `is` ` is not` |\n| `cvss-v3-integrity-impact` | `is` ` is not` |\n| `cvss-v3-availability-impact` | `is` ` is not` |\n| `cvss-v3-attack-vector` | `is` ` is not` |\n| `cvss-v3-attack-complexity` | `is` ` is not` |\n| `cvss-v3-user-interaction` | `is` ` is not` |\n| `cvss-v3-privileges-required` | `is` ` is not` |\n| `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` |\n| `host-type` | `in` ` not in` |\n| `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` |\n| `ip-address-type` | `in` ` not in` |\n| `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` |\n| `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` |\n| `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` |\n| `open-ports` | `is` ` is not` ` in range` |\n| `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` |\n| `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` |\n| `pci-compliance` | `is` |\n| `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` |\n| `service-name` | `contains` ` does not contain` |\n| `site-id` | `in` ` not in` |\n| `software` | `contains` ` does not contain` |\n| `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` |\n| `vAsset-datacenter` | `is` ` is not` |\n| `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` |\n| `vAsset-power-state` | `in` ` not in` |\n| `vAsset-resource-pool-path` | `contains` ` does not contain` |\n| `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` |\n| `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` |\n| `vulnerability-cvss-v3-score` | `is` ` is not` |\n| `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` |\n| `vulnerability-exposures` | `includes` ` does not include` |\n| `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` |\n| `vulnerability-validated-status` | `are` |\n\n##### Enumerated Properties\n\nThe following fields have enumerated values:\n\n| Field | Acceptable Values |\n| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- |\n| `alternate-address-type` | 0=IPv4, 1=IPv6 |\n| `containers` | 0=present, 1=not present |\n| `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` |\n| `cvss-access-complexity` | L
= LowM
= MediumH
= High
|\n| `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
|\n| `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
|\n| `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
|\n| `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
|\n| `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
|\n| `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
|\n| `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
|\n| `cvss-v3-availability-impact` | |\n| `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
|\n| `cvss-v3-attack-complexity` | |\n| `cvss-v3-user-interaction` | |\n| `cvss-v3-privileges-required` | |\n| `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile |\n| `ip-address-type` | 0=IPv4, 1=IPv6 |\n| `pci-compliance` | 0=fail, 1=pass |\n| `vulnerability-validated-status` | 0=present, 1=not present |\n\n##### Operator Properties \n\nThe following table outlines which properties are required for each operator and the appropriate data type(s):\n\n| Operator | `value` | `lower` | `upper` |\n| ----------------------|-----------------------|-----------------------|-----------------------|\n| `are` | `string` | | |\n| `contains` | `string` | | |\n| `does-not-contain` | `string` | | |\n| `ends with` | `string` | | |\n| `in` | `Array[ string ]` | | |\n| `in-range` | | `numeric` | `numeric` |\n| `includes` | `Array[ string ]` | | |\n| `is` | `string` | | |\n| `is-applied` | | | |\n| `is-between` | | `numeric` | `numeric` |\n| `is-earlier-than` | `numeric` | | |\n| `is-empty` | | | |\n| `is-greater-than` | `numeric` | | |\n| `is-on-or-after` | `string` (yyyy-MM-dd) | | |\n| `is-on-or-before` | `string` (yyyy-MM-dd) | | |\n| `is-not` | `string` | | |\n| `is-not-applied` | | | |\n| `is-not-empty` | | | |\n| `is-within-the-last` | `string` | | |\n| `less-than` | `string` | | |\n| `like` | `string` | | |\n| `not-contains` | `string` | | |\n| `not-in` | `Array[ string ]` | | |\n| `not-in-range` | | `numeric` | `numeric` |\n| `not-like` | `string` | | |\n| `starts-with` | `string` | | |\n\n#### Discovery Connection Search Criteria \n\nDynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. \n\nEach search filter has a generic format of:\n\n```json\n{ \n \"field\": \"\", \n \"operator\": \"\", \n [\"value\": \"\",]\n [\"lower\": \"\",]\n [\"upper\": \"\"]\n}\n \n```\n\nEvery filter defines two required properties `field` and `operator`. The field is the name of an asset property that\nis being filtered on. The list of supported fields vary depending on the type of discovery connection configured \nfor the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating \nperformed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the \ntype of connection. \n\nEvery filter also defines one or more values that are supplied to the operator. See \nSearch Criteria Operator Properties for more \ninformation on the valid values for each operator. \n\n##### Fields (ActiveSync)\n\nThis section documents search criteria information for ActiveSync discovery connections. The discovery connections \nmust be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. \n\nThe following table outlines the search criteria fields and the available operators for ActiveSync connections:\n\n| Field | Operators |\n| --------------------------------- | ------------------------------------------------------------- |\n| `last-sync-time` | `is-within-the-last` ` is-earlier-than` |\n| `operating-system` | `contains` ` does-not-contain` |\n| `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Fields (AWS)\n\nThis section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. \n\nThe following table outlines the search criteria fields and the available operators for AWS connections:\n\n| Field | Operators |\n| ----------------------- | ------------------------------------------------------------- |\n| `availability-zone` | `contains` ` does-not-contain` |\n| `guest-os-family` | `contains` ` does-not-contain` |\n| `instance-id` | `contains` ` does-not-contain` |\n| `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `instance-state` | `in` ` not-in` |\n| `instance-type` | `in` ` not-in` |\n| `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` |\n| `region` | `in` ` not-in` |\n| `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Fields (DHCP)\n\nThis section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. \n\nThe following table outlines the search criteria fields and the available operators for DHCP connections:\n\n| Field | Operators |\n| --------------- | ------------------------------------------------------------- |\n| `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` |\n| `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Fields (Sonar)\n\nThis section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. \n\nThe following table outlines the search criteria fields and the available operators for Sonar connections:\n\n| Field | Operators |\n| ------------------- | -------------------- |\n| `search-domain` | `contains` ` is` |\n| `ip-address` | `in-range` ` is` |\n| `sonar-scan-date` | `is-within-the-last` |\n\n##### Fields (vSphere)\n\nThis section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. \n\nThe following table outlines the search criteria fields and the available operators for vSphere connections:\n\n| Field | Operators |\n| -------------------- | ------------------------------------------------------------------------------------------ |\n| `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `data-center` | `is` ` is-not` |\n| `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` |\n| `guest-os-family` | `contains` ` does-not-contain` |\n| `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n| `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` |\n| `power-state` | `in` ` not-in` |\n| `resource-pool-path` | `contains` ` does-not-contain` |\n| `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` |\n| `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` |\n\n##### Enumerated Properties (vSphere)\n\nThe following fields have enumerated values:\n\n| Field | Acceptable Values |\n| ------------- | ------------------------------------ |\n| `power-state` | `poweredOn` `poweredOff` `suspended` |\n\n## HATEOAS\n\nThis API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. \nHyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to\nthe corresponding resource. The format of the hypermedia link adheres to both the\n{json:api} v1 \n\"Link Object\" and \nJSON Hyper-Schema \n\"Link Description Object\"\nformats. For example:\n\n```json\n\"links\": [{\n \"rel\": \"\",\n \"href\": \"\"\n ...\n}]\n```\n\nWhere appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc.\n\nSee the [Root](#tag/Root) resources for the entry points into API discovery.","version":"3","title":"InsightVM API","contact":{"name":"Rapid7","email":"support@rapid7.com"}},"host":"localhost:3780","basePath":"/","tags":[{"name":"Root","description":"Provides access to primary entry point for discovering the available resources in this API."},{"name":"Asset","description":"Resources and operations for managing assets. Assets can be created under the Site Assets resource."},{"name":"Asset Discovery","description":"Resources for managing and viewing the mechanisms used to automatically discover assets."},{"name":"Asset Group","description":"Asset Group Tag"},{"name":"Credential","description":"Resources and operations for managing shared credentials."},{"name":"Policy","description":"Resources and operations for managing policies."},{"name":"Policy Override","description":"Policy Override Resource Controller"},{"name":"Remediation","description":"Resources for determining the details required to remediate vulnerabilities."},{"name":"Report","description":"Resources and operations for managing and generating reports. Reports are broadly categorized into `document`, `export`, and `file` types. `document` reports use section-based report templates to control the output and can be generated in several formats. `export` reports are designed to output their contents into a specific file format. `file` reports are templatized reports that output based on the format of a template file. Reports can be configured to generate on a schedule and be distributed via email to specific recipients."},{"name":"Scan","description":"Resources and operations for managing scans."},{"name":"Scan Engine","description":"Resources and operations for managing scan engines."},{"name":"Scan Template","description":"Scan Template Resource Controller"},{"name":"Site","description":"Resources and operations for managing sites."},{"name":"Tag","description":"Resources and operations for managing tags."},{"name":"User","description":"Resources and operations for managing users, permissions, and privileges."},{"name":"Vulnerability","description":"Resources and operations for viewing vulnerability content and managing exceptions."},{"name":"Vulnerability Check","description":"Resources and operations for view vulnerability checks that can be run as a part of vulnerability content."},{"name":"Vulnerability Exception","description":"Vulnerability Exception Resource Controller"},{"name":"Vulnerability Result","description":"Resources and operations for retrieving vulnerability results on assessed assets."},{"name":"Administration","description":"Provides access administrative operations and procedures."}],"schemes":[],"consumes":[],"produces":[],"paths":{"/api/3":{"get":{"tags":["Root"],"summary":"Resources","description":"Returns a listing of the resources (endpoints) that are available to be invoked in this API.","operationId":"resources","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/commands":{"post":{"tags":["Administration"],"summary":"Console Commands","description":"Executes a console command against the Security Console. Global Administrator","operationId":"executeCommand","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The console command to execute.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ConsoleCommandOutput"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Show Host Info","source":"show host info"},{"lang":"Help","source":"help"}]}},"/api/3/administration/info":{"get":{"tags":["Administration"],"summary":"Information","description":"Returns system details, including host and version information.","operationId":"getInfo","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Info"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/license":{"get":{"tags":["Administration"],"summary":"License","description":"Returns the enabled features and limits of the current license. Global Administrator","operationId":"getLicense","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/License"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Administration"],"summary":"License","description":"Licenses the product with an activation key or a provided license file. If both are provided, the license file is preferred. Global Administrator","operationId":"activateLicense","schemes":[],"consumes":["multipart/form-data"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"license","in":"formData","description":"The contents of a license (.lic) file.","required":false,"type":"file"},{"name":"key","in":"query","description":"A license activation key.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/properties":{"get":{"tags":["Administration"],"summary":"Properties","description":"Returns system details, including host and version information.","operationId":"getProperties","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/EnvironmentProperties"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/administration/settings":{"get":{"tags":["Administration"],"summary":"Settings","description":"Returns the current administration settings. Global Administrator","operationId":"getSettings","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Settings"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups":{"get":{"tags":["Asset Group"],"summary":"Asset Groups","description":"Returns all asset groups.","operationId":"getAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"type","in":"query","description":"The type of asset group.","required":false,"type":"string"},{"name":"name","in":"query","description":"A search pattern for the name of the asset group. Searches are case-insensitive contains.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Asset Group"],"summary":"Asset Groups","description":"Creates a new asset group. The `searchCriteria` field can be passed no matter what the type of the asset group is. The asset group `type` changes when the assets are refreshed. Dynamic asset groups constantly refreshed their membership as assets are scanned whereas static asset groups do not change membership automatically. \nSee the Search Criteria for more information on using dynamic criteria.","operationId":"createAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the asset group.","required":false,"schema":{"$ref":"#/definitions/AssetGroup"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/CreatedReference«AssetGroupID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"An Empty Static Asset Group","source":"{\n \"description\": \"A Static Asset Group With No Assets. In order to add assets to this group you can POST to the /assets endpoint or PUT to the /assets/{assetID} endpoint.\",\n \"name\": \"Empty Static Asset Groups\",\n \"type\": \"static\"\n}"},{"lang":"A static asset group with assets defined by search criteria","source":"{\n \"description\": \"A Static Asset Group with Assets that are Linux Assets running Containers (With Low Access Complexity Vulnerabilities) for remediation purposes.\",\n \"name\": \"Container Hosts - Linux\",\n \"searchCriteria\": {\n \"filters\": [\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"linux\" },\n { \"field\": \"containers\", \"operator\": \"are\", \"value\": 0 },\n { \"field\": \"cvss-access-complexity\", \"operator\": \"is\", \"value\": \"L\" }\n ],\n \"match\": \"all\"\n },\n \"type\": \"static\"\n}"},{"lang":"A dynamic asset group","source":"{\n \"description\": \"A Static Asset Group with Assets that are Linux Assets running Containers (With Low Access Complexity Vulnerabilities) for remediation purposes.\",\n \"name\": \"Container Hosts - Linux\",\n \"searchCriteria\": {\n \"filters\": [\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"linux\" },\n { \"field\": \"containers\", \"operator\": \"are\", \"value\": 0 },\n { \"field\": \"cvss-access-complexity\", \"operator\": \"is\", \"value\": \"L\" }\n ],\n \"match\": \"all\"\n },\n \"type\": \"dynamic\"\n}"}]}},"/api/3/asset_groups/{id}":{"get":{"tags":["Asset Group"],"summary":"Asset Group","description":"Returns an asset group.","operationId":"getAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/AssetGroup"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group","description":"Updates the details of an asset group. See the search criteria endpoint (/search_criteria) for more information about building the search criteria and examples.","operationId":"updateAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the asset group.","required":false,"schema":{"$ref":"#/definitions/AssetGroup"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group","description":"Deletes the asset group.","operationId":"deleteAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/assets":{"get":{"tags":["Asset Group"],"summary":"Asset Group Assets","description":"Returns hypermedia links for the assets that belong to an asset group.","operationId":"getAssetGroupAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Assets","description":"Updates all the assets that belong to a static asset group.","operationId":"updateAssetGroupAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The assets to place in the asset group. ","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int64"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Assets","description":"Removes the assets from the given static asset group.","operationId":"removeAllAssetsFromAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/assets/{assetId}":{"put":{"tags":["Asset Group"],"summary":"Asset Group Asset","description":"Adds an asset to a static asset group.","operationId":"addAssetToAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Asset","description":"Removes an asset from an asset group.","operationId":"removeAssetFromAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/search_criteria":{"get":{"tags":["Asset Group"],"summary":"Asset Group Search Criteria","description":"Returns the search criteria of a dynamic asset group.For a reference of valid search criteria input see the Asset Search resource.","operationId":"getAssetGroupSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SearchCriteria"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Search Criteria","description":"Updates the search criteria of a dynamic asset group. For a reference of valid search criteria input see the Asset Search resource.","operationId":"setAssetGroupSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The search criteria specification.","required":false,"schema":{"$ref":"#/definitions/SearchCriteria"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Unassigned PCI Incompliant Windows Assets","source":"{\n \"description\": \"This is an asset group that contains assets that have not been recently scanned in our Los Angeles Datacenter that are also high risk.\",\n \"name\": \"Stale Los Angeles Assets (High Risk)\",\n \"type\": \"dynamic\",\n \"searchCriteria\": {\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"location-tag\", \"operator\": \"contains\", \"value\": \"Los Angeles Datacenter\" },\n { \"field\": \"risk-score\", \"operator\": \"is-greater-than\", \"value\": 5000 },\n { \"field\": \"last-scan-date\", \"operator\": \"is-on-or-before\", \"value\": \"2016-12-31\" }\n ]\n }\n}"},{"lang":"Stale Los Angeles Assets (High Risk)","source":"{\n \"description\": \"This is an asset group that contains Windows Assets that are not PCI compliant and not assigned to an owner.\",\n \"name\": \"Unassigned PCI Incompliant Windows Assets\",\n \"type\": \"dynamic\",\n \"searchCriteria\": {\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"pci-compliance\", \"operator\": \"is\", \"value\": \"0\" },\n { \"field\": \"owner-tag\", \"operator\": \"is-not-applied\" },\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"windows\" }\n ]\n }\n}"}]}},"/api/3/asset_groups/{id}/tags":{"get":{"tags":["Asset Group"],"summary":"Asset Group Tags","description":"Returns the tags assigned to an asset group.","operationId":"getAssetGroupTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«TagID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Tags","description":"Updates the tags of an asset group.","operationId":"setAssetGroupTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The tags to associate to the asset group.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Tags","description":"Removes all tag associations from the asset group.","operationId":"removeAllAssetGroupTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/tags/{tagId}":{"put":{"tags":["Asset Group"],"summary":"Asset Group Tag","description":"Adds a tag to an asset group.","operationId":"addAssetGroupTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group Tag","description":"Removes a tag from an asset group.","operationId":"removeAssetGroupTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/users":{"get":{"tags":["Asset Group"],"summary":"Asset Group Users","description":"Returns hypermedia links for the users with access to this asset group.","operationId":"getAssetGroupUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Group"],"summary":"Asset Group Users","description":"Grants users with sufficient privileges access to an asset group.","operationId":"setAssetGroupUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The users to grant access to the asset group.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/asset_groups/{id}/users/{userId}":{"put":{"tags":["Asset Group"],"summary":"Asset Group User","description":"Grants a user with sufficient privileges access to the asset group.","operationId":"addAssetGroupUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"userId","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset Group"],"summary":"Asset Group User","description":"Removes a user's access from an asset group.","operationId":"removeAssetGroupUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"},{"name":"userId","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets":{"get":{"tags":["Asset"],"summary":"Assets","description":"Returns all assets for which you have access.","operationId":"getAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Asset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/assets":{"get":{"tags":["Site"],"summary":"Site Assets","description":"Retrieves a paged resource of assets linked with the specified site.","operationId":"getSiteAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Asset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Asset"],"summary":"Assets","description":"Creates or updates an asset with the specified details.","operationId":"createAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the asset being added or updated. \nThe operating system can be specified in one of three ways, with the order of precedence: `\"osFingerprint\"`, `\"os\"`, `\"cpe\"`","required":false,"schema":{"$ref":"#/definitions/AssetCreate"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference"},"examples":{},"headers":{}},"201":{"description":"Created","schema":{"$ref":"#/definitions/CreatedOrUpdatedReference"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Assets","description":"Removes all assets from the specified site. Assets will be deleted entirely from the Security Console if either Asset Linking is disabled or if Asset Linking is enabled and the asset only existed in this site.","operationId":"removeSiteAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/search":{"post":{"tags":["Asset"],"summary":"Asset Search","description":"Returns all assets for which you have access that match the given search criteria.","operationId":"findAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param1","description":"param1","required":true,"schema":{"$ref":"#/definitions/SearchCriteria"}},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Asset»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets Running SSH","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"service-name\", \"operator\": \"contains\", \"value\": \"ssh\"}\n ]\n}"},{"lang":"High Risk Windows Assets Running SSH","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"risk-score\", \"operator\": \"is-greater-than\", \"value\": 5000 },\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"windows\" },\n { \"field\": \"service-name\", \"operator\": \"contains\", \"value\": \"ssh\" }\n ]\n}"},{"lang":"Windows 10 Assets","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"operating-system\", \"operator\": \"contains\", \"value\": \"Microsoft Windows 10\" }\n ]\n}"},{"lang":"Assets with High CVSS Scores assigned to Bob","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"owner-tag\", \"operator\": \"contains\", \"value\": \"Bob\" },\n { \"field\": \"vulnerability-cvss-score\", \"operator\": \"is-greater-than\", \"value\": 8 }\n ]\n}"},{"lang":"Assets with SSH running containers in Los Angeles","source":"{\n \"match\": \"all\",\n \"filters\": [\n { \"field\": \"location-tag\", \"operator\": \"contains\", \"value\": \"Los Angeles Datacenter\" },\n { \"field\": \"containers\", \"operator\": \"are\", \"value\": \"0\" },\n { \"field\": \"service-name\", \"operator\": \"contains\", \"value\": \"ssh\" }\n ]\n}"}]}},"/api/3/assets/{assetId}/policies":{"get":{"tags":["Policy"],"summary":"Policies For Asset","description":"Retrieves the list of policies with compliance results for the specified asset.","operationId":"getPoliciesForAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the policies retrieved should only include those with a policy compliance status of either a PASS of FAIL result. Default value is `false`, which will also include policies with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetPolicy»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy For Asset","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy with rule compliance results for the specified asset.","operationId":"getAssetPolicyChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetPolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy Group For Asset","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy group with rule compliance results for the specified asset.","operationId":"getAssetPolicyGroupChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«AssetPolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules Under Policy Group For Asset","description":"Retrieves the list of policy rules defined directly, or indirectly, underneath the specified policy group and the compliance results for the specified asset.","operationId":"getPolicyGroupRulesWithAssetAssessment","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{assetId}/policies/{policyId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules For Asset","description":"Retrieves the list of policy rules with compliance results for the specified asset and policy.","operationId":"getAssetPolicyRulesSummary","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}":{"get":{"tags":["Asset"],"summary":"Asset","description":"Returns the specified asset.","operationId":"getAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Asset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset"],"summary":"Asset","description":"Deletes the specified asset.","operationId":"deleteAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/databases":{"get":{"tags":["Asset"],"summary":"Asset Databases","description":"Returns the databases enumerated on an asset.","operationId":"getAssetDatabases","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Database»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/files":{"get":{"tags":["Asset"],"summary":"Asset Files","description":"Returns the files discovered on an asset.","operationId":"getAssetFiles","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«File»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/policy_overrides":{"get":{"tags":["Policy Override"],"summary":"Asset Policy Overrides","description":"Retrieves policy overrides defined on policy rules for the specified asset.","operationId":"getAssetPolicyOverrides","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«PolicyOverride»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services":{"get":{"tags":["Asset"],"summary":"Asset Services","description":"Returns the services discovered on an asset.","operationId":"getAssetServices","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«ReferenceWithEndpointIDLink,ServiceLink»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}":{"get":{"tags":["Asset"],"summary":"Asset Service","description":"Returns the service running a port and protocol on the asset.","operationId":"getAssetService","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Service"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/configurations":{"get":{"tags":["Asset"],"summary":"Asset Service Configurations","description":"Returns the configuration (properties) of a port and protocol on an asset.","operationId":"getAssetServiceConfigurations","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Configuration»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/databases":{"get":{"tags":["Asset"],"summary":"Asset Service Databases","description":"Returns the databases running on a port and protocol on an asset.","operationId":"getAssetServiceDatabases","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Database»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/user_groups":{"get":{"tags":["Asset"],"summary":"Asset Service User Groups","description":"Returns the user groups enumerated on a port and protocol on an asset.","operationId":"getAssetServiceUserGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«GroupAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/users":{"get":{"tags":["Asset"],"summary":"Asset Service Users","description":"Returns the users enumerated on a port and protocol on an asset.","operationId":"getAssetServiceUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«UserAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/vulnerabilities":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Service Vulnerabilities","description":"Retrieves the vulnerabilities present on a service running on an asset. A finding may be `invulnerable` if all instances on the service have exceptions applied.","operationId":"getAssetServiceVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityFinding»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/web_applications":{"get":{"tags":["Asset"],"summary":"Asset Service Web Applications","description":"Returns the web applications running on a port and protocol on an asset.","operationId":"getAssetServiceWebApplications","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«WebApplicationID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/services/{protocol}/{port}/web_applications/{webApplicationId}":{"get":{"tags":["Asset"],"summary":"Asset Service Web Application","description":"Returns a web application running on a port and protocol on an asset.","operationId":"getAssetServiceWebApplication","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"protocol","in":"path","description":"The protocol of the service.","required":false,"type":"string","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},{"name":"port","in":"path","description":"The port of the service.","required":false,"type":"integer","format":"int32"},{"name":"webApplicationId","in":"path","description":"The identifier of the web application.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/WebApplication"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/software":{"get":{"tags":["Asset"],"summary":"Asset Software","description":"Returns the software on an asset.","operationId":"getAssetSoftware","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Software»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/tags":{"get":{"tags":["Asset"],"summary":"Asset Tags","description":"Returns tags assigned to an asset.","operationId":"getAssetTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AssetTag»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/tags/{tagId}":{"put":{"tags":["Asset"],"summary":"Asset Tag","description":"Assigns the specified tag to the asset.","operationId":"addAssetTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Asset"],"summary":"Asset Tag","description":"Removes the specified tag from the asset's tags.","operationId":"removeAssetTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/user_groups":{"get":{"tags":["Asset"],"summary":"Asset User Groups","description":"Returns user groups enumerated on an asset.","operationId":"getAssetUserGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«GroupAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/users":{"get":{"tags":["Asset"],"summary":"Asset Users","description":"Returns users enumerated on an asset.","operationId":"getAssetUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«UserAccount»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerabilities","description":"Retrieves all vulnerability findings on an asset. A finding may be `invulnerable` if all instances have exceptions applied.","operationId":"getAssetVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityFinding»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability","description":"Retrieves the details for a vulnerability finding on an asset.","operationId":"getAssetVulnerability","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityFinding"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/solution":{"get":{"tags":["Remediation"],"summary":"Asset Vulnerability Solution","description":"Returns the highest-superceding rollup solutions for a vulnerability on an asset. The solution(s) selected will be the most recent and cost-effective means by which the vulnerability can be remediated.","operationId":"getAssetVulnerabilitySolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«MatchedSolution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validations","description":"Returns all vulnerability validations for a vulnerability on an asset. The asset must be currently vulnerable to the validated vulnerable for the validation to be returned.","operationId":"getVulnerabilityValidations","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«VulnerabilityValidationResource»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validations","description":"Creates a vulnerability validation for a vulnerability on an asset. The validation signifies that the vulnerability has been confirmed exploitable by an external tool, such as Metasploit.","operationId":"createVulnerabilityValidation","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"in":"body","name":"param2","description":"A vulnerability validation for a vulnerability on an asset. The validation signifies that the vulnerability has been confirmed exploitable by an external tool, such as Metasploit.","required":false,"schema":{"$ref":"#/definitions/VulnerabilityValidationResource"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«VulnerabilityValidationID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations/{validationId}":{"get":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validation","description":"Returns a vulnerability validation for a vulnerability on an asset. The asset must be currently vulnerable to the validated vulnerable for the validation to be returned.","operationId":"getVulnerabilityValidation","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"validationId","in":"path","description":"The identifier of the vulnerability validation.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityValidationResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Vulnerability Result"],"summary":"Asset Vulnerability Validation","description":"Removes a vulnerability validation for a vulnerability from an asset.","operationId":"deleteVulnerabilityValidation","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"},{"name":"vulnerabilityId","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"validationId","in":"path","description":"The identifier of the vulnerability validation.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/authentication_sources":{"get":{"tags":["User"],"summary":"Authentication Sources","description":"Returns all available sources of authentication for users.","operationId":"getAuthenticationSources","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AuthenticationSource»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/authentication_sources/{id}":{"get":{"tags":["User"],"summary":"Authentication Source","description":"Returns the details for an authentication source.","operationId":"getAuthenticationSource","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the authentication source.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/AuthenticationSource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/authentication_sources/{id}/users":{"get":{"tags":["User"],"summary":"Authentication Source Users","description":"Returns hypermedia links for the user accounts that use the authentication source to authenticate.","operationId":"getAuthenticationSourceUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the authentication source.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/discovery_connections":{"get":{"tags":["Asset Discovery"],"summary":"Discovery Connections","description":"Returns all discovery connections.","operationId":"getDiscoveryConnections","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«DiscoveryConnection»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/discovery_connections/{id}":{"get":{"tags":["Asset Discovery"],"summary":"Discovery Connection","description":"Returns a discovery connection.","operationId":"getDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the discovery connection.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/DiscoveryConnection"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/discovery_connections/{id}/connect":{"post":{"tags":["Asset Discovery"],"summary":"Discovery Connection Reconnect","description":"Attempts to reconnect the discovery connection.","operationId":"reconnectDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the discovery connection.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/exploits":{"get":{"tags":["Vulnerability"],"summary":"Exploits","description":"Returns all known exploits.","operationId":"getExploits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Exploit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/exploits/{id}":{"get":{"tags":["Vulnerability"],"summary":"Exploit","description":"Returns the details for an exploit.","operationId":"getExploit","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the exploit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Exploit"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/exploits/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Exploitable Vulnerabilities","description":"Returns the vulnerabilities exploitable to a exploit.","operationId":"getExploitVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the exploit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/malware_kits":{"get":{"tags":["Vulnerability"],"summary":"Malware Kits","description":"Returns all known malware kits.","operationId":"getMalwareKits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«MalwareKit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/malware_kits/{id}":{"get":{"tags":["Vulnerability"],"summary":"Malware Kit","description":"Returns the details for a malware kit.","operationId":"getMalwareKit","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the malware kit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/MalwareKit"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/malware_kits/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Malware Kit Vulnerabilities","description":"Returns the vulnerabilities that are susceptible to being attacked by a malware kit.","operationId":"getMalwareKitVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the malware kit.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/operating_systems":{"get":{"tags":["Asset"],"summary":"Operating Systems","description":"Returns all operating systems discovered across all assets. ","operationId":"getOperatingSystems","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«OperatingSystem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/operating_systems/{id}":{"get":{"tags":["Asset"],"summary":"Operating System","description":"Returns the details for an operating system.","operationId":"getOperatingSystem","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the operating system.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/OperatingSystem"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies":{"get":{"tags":["Policy"],"summary":"Policies","description":"Retrieves a paged resource of policies.","operationId":"getPolicies","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"filter","in":"query","description":"Filters the retrieved policies with those whose titles that match the parameter.","required":false,"type":"string"},{"name":"scannedOnly","in":"query","description":"Flag indicating the policies retrieved should only include those with Pass or Fail compliance results. The list of scanned policies is based on the user's list of accessible assets.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Policy»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{id}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy.","operationId":"getPolicyChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}":{"get":{"tags":["Policy"],"summary":"Policy","description":"Retrieves the specified policy.","operationId":"getPolicy","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Policy"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/assets":{"get":{"tags":["Policy"],"summary":"Policy Asset Results","description":"Retrieves asset resources with rule compliance results for the specified policy.","operationId":"getPolicyAssetResults","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/assets/{assetId}":{"get":{"tags":["Policy"],"summary":"Policy Asset Result","description":"Retrieves an asset resource with rule compliance results for the specified asset and policy.","operationId":"getPolicyAssetResult","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyAsset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups":{"get":{"tags":["Policy"],"summary":"Policy Groups","description":"Retrieves a paged resource of policy groups for the specified policy.","operationId":"getPolicyGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}":{"get":{"tags":["Policy"],"summary":"Policy Group","description":"Retrieves the specified policy group.","operationId":"getPolicyGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyGroup"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/assets":{"get":{"tags":["Policy"],"summary":"Assets Compliance For Policy Rules Under Policy Group","description":"Retrieves asset resources with rule compliance status against all rules under the specified policy group.","operationId":"getPolicyGroupAssetResults","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/assets/{assetId}":{"get":{"tags":["Policy"],"summary":"Asset Compliance For Policy Rules Under Policy Group","description":"Retrieves an asset resource with rule compliance status against all rules under the specified policy group.","operationId":"getPolicyGroupAssetResult","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyAsset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/children":{"get":{"tags":["Policy"],"summary":"Policy Rules or Groups Directly Under Policy Group","description":"Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy group.","operationId":"getPolicyGroupChildren","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyItem»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/groups/{groupId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules Under Policy Group","description":"Retrieves the list of policy rules defined directly, or indirectly, underneath the specified policy group.","operationId":"getDescendantPolicyRules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"groupId","in":"path","description":"The identifier of the policy group.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules":{"get":{"tags":["Policy"],"summary":"Policy Rules","description":"Retrieves a paged resource of policy rules for the specified policy.","operationId":"getPolicyRules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/disabled":{"get":{"tags":["Policy"],"summary":"Disabled Policy Rules","description":"Retrieves a paged resource of disabled policy rules for the specified policy.","operationId":"getDisabledPolicyRules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyRule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}":{"get":{"tags":["Policy"],"summary":"Policy Rule","description":"Retrieves the specified policy rule.","operationId":"getPolicyRule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyRule"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/assets":{"get":{"tags":["Policy"],"summary":"Assets Compliance For Policy Rule","description":"Retrieves asset resources with rule compliance results for the specified policy policy rule.","operationId":"getPolicyRuleAssetResults","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"applicableOnly","in":"query","description":"An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.","required":false,"type":"boolean"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId}":{"get":{"tags":["Policy"],"summary":"Asset Compliance For Policy Rule","description":"Retrieves an asset resource with rule compliance results for the specified policy policy rule.","operationId":"getPolicyRuleAssetResult","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyAsset"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId}/proof":{"get":{"tags":["Policy"],"summary":"Policy Rule Proof For Asset","description":"Retrieves the policy rule proof captured during evaluation against the specified asset.","operationId":"getPolicyRuleAssetResultProof","schemes":[],"consumes":["application/json"],"produces":["text/html"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/controls":{"get":{"tags":["Policy"],"summary":"Policy Rule Controls","description":"Retrieves all NIST SP 800-53 controls mappings for each CCE within the specified policy rule.","operationId":"getPolicyRuleControls","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyControl»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/rationale":{"get":{"tags":["Policy"],"summary":"Policy Rule Rationale","description":"Retrieves the policy rule rationale for the specified policy.","operationId":"getPolicyRuleRationale","schemes":[],"consumes":["application/json"],"produces":["text/html"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policies/{policyId}/rules/{ruleId}/remediation":{"get":{"tags":["Policy"],"summary":"Policy Rule Remediation","description":"Retrieves the policy rule remediation for the specified policy.","operationId":"getPolicyRuleRemediation","schemes":[],"consumes":["application/json"],"produces":["text/html"],"parameters":[{"name":"policyId","in":"path","description":"The identifier of the policy","required":false,"type":"integer","format":"int64"},{"name":"ruleId","in":"path","description":"The identifier of the policy rule.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy/summary":{"get":{"tags":["Policy"],"summary":"Policy Compliance Summaries","description":"Retrieves a compliance summary of all policies.","operationId":"getPolicySummary","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicySummaryResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides":{"get":{"tags":["Policy Override"],"summary":"Policy Overrides","description":"Retrieves policy overrides defined on policy rules.","operationId":"getPolicyOverrides","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«PolicyOverride»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Policy Override"],"summary":"Policy Overrides","description":"Submit a policy override. The policy override can be submitted or it can be submitted and approved in a single request.","operationId":"createPolicyOverride","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a policy override. Allows users to override the compliance result of a policy rule.","required":false,"schema":{"$ref":"#/definitions/PolicyOverride"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«PolicyOverrideID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides/{id}":{"get":{"tags":["Policy Override"],"summary":"Policy Override","description":"Retrieve the specified policy override.","operationId":"getPolicyOverride","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PolicyOverride"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Policy Override"],"summary":"Policy Override","description":"Removes a policy override created for a policy rule.","operationId":"deletePolicyOverride","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides/{id}/expires":{"get":{"tags":["Policy Override"],"summary":"Policy Override Expiration","description":"Get the expiration date for a policy override.","operationId":"getPolicyOverrideExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Policy Override"],"summary":"Policy Override Expiration","description":"Set the expiration date for a policy override. This must be a valid date in the future.","operationId":"setPolicyOverrideExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"},{"in":"body","name":"param1","description":"The date the policy override is set to expire. Date is represented in ISO 8601 format.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/policy_overrides/{id}/{status}":{"post":{"tags":["Policy Override"],"summary":"Policy Override Status","description":"Update the status of the specified policy override. The status can be one of the following: `\"recall\"`, `\"approve\"`, or `\"reject\"`.","operationId":"setPolicyOverrideStatus","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the policy override.","required":false,"type":"integer","format":"int64"},{"name":"status","in":"path","description":"Policy Override Status","required":false,"type":"string","enum":["recall","approve","reject"]},{"in":"body","name":"param2","description":"A comment describing the change of the policy override status.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/privileges":{"get":{"tags":["User"],"summary":"Privileges","description":"Returns all privileges that may be granted to a role.","operationId":"getPrivileges","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Privileges"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/privileges/{id}":{"get":{"tags":["User"],"summary":"Privilege","description":"Returns the details for a privilege.","operationId":"getPrivilege","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the privilege.","required":false,"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/privileges/{id}/users":{"get":{"tags":["User"],"summary":"Users With Privilege","description":"Returns hypermedia links for all users granted the specified privilege by their role.","operationId":"getUsersWithPrivilege","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the privilege.","required":false,"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/report_formats":{"get":{"tags":["Report"],"summary":"Report Formats","description":"Returns all available report formats. A report format indicates an output file format specification (e.g. PDF, XML, etc). Some printable formats may be templated, and others may not. The supported templates for each formated are provided.","operationId":"getReportFormats","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AvailableReportFormat»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/report_templates":{"get":{"tags":["Report"],"summary":"Report Templates","description":"Returns all available report templates.","operationId":"getReportTemplates","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ReportTemplate»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/report_templates/{id}":{"get":{"tags":["Report"],"summary":"Report Template","description":"Returns the details of a report template. Report templates govern the contents generated within a report. ","operationId":"getReportTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report template;","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReportTemplate"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports":{"get":{"tags":["Report"],"summary":"Reports","description":"Returns all defined report configurations.","operationId":"getReports","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Report»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Report"],"summary":"Reports","description":"Configures a new report for generation. Report types are controlled through either or both a format and template. Non-templatized (`export`) report formats do not require a template and have their output format preset. Templatized (`document` and `file`) report formats support a report template that governs the content of the output and the output format can be chosen from a list of supported formats.","operationId":"createReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a report configuration.","required":false,"schema":{"$ref":"#/definitions/Report"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«int,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Nexpose™ Simple XML","source":"{\n \"format\": \"nexpose-simple-xml\",\n \"name\": \"Scan Report for February scan\",\n \"filters\": {\n \"statuses\": [ \"vulnerable\", \"vulnerable-version\" ]\n },\n \"scope\": {\n \"scan\": 2\n }\n}"},{"lang":"Qualys XML","source":"{\n \"format\": \"qualys-xml\",\n \"name\": \"Qualys Export\",\n \"filters\": {\n \"severity\": \"critical-and-severe\",\n \"categories\": {\n \"included\": [ \"Adobe\" ]\n }\n },\n \"scope\": {\n \"sites\": [ 3 ]\n }\n}"},{"lang":"OVAL XML","source":"{\n \"format\": \"oval-xml\",\n \"name\": \"OVAL XML\",\n \"policy\": 32, \n \"scope\": {\n \"sites\": [ 17 ]\n }\n}"},{"lang":"XCCDF CSV","source":"{\n \"format\": \"xccdf-csv\",\n \"name\": \"XCDDF CSV Report\",\n \"policy\": 89,\n \"scope\": {\n \"assets\": [ 4, 7, 9, 22 ]\n },\n \"filters\": {\n \"severity\": \"critical\"\n },\n \"frequency\": {\n \"start\": \"2017-11-30\",\n \"repeat\": {\n \"every\": \"week\",\n \"interval\": 2\n }\n }\n}"},{"lang":"XCCDF XML","source":"{\n \"format\": \"xccdf-xml\",\n \"name\": \"XCCDF XML\",\n \"policy\": 12,\n \"organization\": \"Acme Organization\",\n \"scope\": {\n \"tags\": [ 4 ]\n },\n \"filters\": {\n \"severity\": \"critical\"\n },\n \"frequency\": {\n \"start\": \"2018-11-30\",\n \"repeat\": {\n \"every\": \"date-of-month\",\n \"interval\": 3,\n \"dateOfMonth\": \"last\"\n }\n }\n}"}]}},"/api/3/reports/{id}":{"get":{"tags":["Report"],"summary":"Report","description":"Returns the configuration details of a report.","operationId":"getReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Report"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Report"],"summary":"Report","description":"Updates the configuration details of a report.","operationId":"updateReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of a report configuration.","required":false,"schema":{"$ref":"#/definitions/Report"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Report"],"summary":"Report","description":"Deletes the configuration of a report.","operationId":"deleteReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/generate":{"post":{"tags":["Report"],"summary":"Report Generation","description":"Generates a configured report and returns the instance identifier of the report.","operationId":"generateReport","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferenceWithReportIDLink"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/history":{"get":{"tags":["Report"],"summary":"Report Histories","description":"Returns all historical details for generation of the report over time.","operationId":"getReportInstances","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ReportInstance»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/history/{instance}":{"get":{"tags":["Report"],"summary":"Report History","description":"Returns the details for a generation of the report.","operationId":"getReportInstance","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"name":"instance","in":"path","description":"The identifier of the report instance.","required":false,"type":"string","enum":["latest","integer <>"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReportInstance"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Report"],"summary":"Report History","description":"Returns the details for a generation of the report.","operationId":"deleteReportInstance","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"name":"instance","in":"path","description":"The identifier of the report instance.","required":false,"type":"string","enum":["latest","integer <>"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/reports/{id}/history/{instance}/output":{"get":{"tags":["Report"],"summary":"Report Download","description":"Returns the contents of a generated report. The report content is usually returned in a GZip compressed format.","operationId":"downloadReport","schemes":[],"consumes":["application/json"],"produces":["application/octet-stream","application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the report.","required":false,"type":"integer","format":"int32"},{"name":"instance","in":"path","description":"The identifier of the report instance.","required":false,"type":"string","enum":["latest","integer <>"]}],"responses":{"200":{"description":"OK","schema":{"type":"string","format":"byte"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/roles":{"get":{"tags":["User"],"summary":"Roles","description":"Returns all roles for which users may be assigned.","operationId":"getRoles","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Role»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/roles/{id}":{"get":{"tags":["User"],"summary":"Role","description":"Retrieves the details of a role.","operationId":"getRole","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Role"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Role","description":"Updates the details of a role.","operationId":"updateRole","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the role.","required":false,"schema":{"$ref":"#/definitions/Role"}},{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Role","description":"Removes a role with the specified identifier. The role must not be built-in and cannot be currently assigned to any users.","operationId":"deleteRole","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/roles/{id}/users":{"get":{"tags":["User"],"summary":"Users With Role","description":"Returns hypermedia links for the the users currently assigned a role.","operationId":"getRoleUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the role.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«UserID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools":{"get":{"tags":["Scan Engine"],"summary":"Engine Pools","description":"Returns engine pools available to use for scanning.","operationId":"getScanEnginePools","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«EnginePool»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan Engine"],"summary":"Engine Pools","description":"Creates a new engine pool.","operationId":"createScanEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details for the scan engine to update.","required":false,"schema":{"$ref":"#/definitions/EnginePool"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«EngineID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}":{"get":{"tags":["Scan Engine"],"summary":"Engine Pool","description":"Retrieves the details for an engine pool.","operationId":"getEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/EnginePool"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Engine"],"summary":"Engine Pool","description":"Updates the specified engine pool.","operationId":"updateScanEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details for the scan engine to update.","required":false,"schema":{"$ref":"#/definitions/EnginePool"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Engine"],"summary":"Engine Pool","description":"Deletes the specified engine pool.","operationId":"removeScanEnginePool","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}/engines":{"get":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Get the engines in the engine pool.","operationId":"getScanEnginePoolScanEngines","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«EngineID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Set the engines in the engine pool.","operationId":"setScanEnginePoolScanEngines","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The identifiers of the scan engines to place into the engine pool.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}/engines/{engineId}":{"put":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Add an engine to the engine pool.","operationId":"addScanEnginePoolScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"name":"engineId","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Engine"],"summary":"Engine Pool Engines","description":"Remove the specified engine from the engine pool.","operationId":"removeScanEnginePoolScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"},{"name":"engineId","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engine_pools/{id}/sites":{"get":{"tags":["Scan Engine"],"summary":"Engine Pool Sites","description":"Returns links to the sites associated with this engine pool.","operationId":"getScanEnginePoolSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the engine pool.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SiteID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines":{"get":{"tags":["Scan Engine"],"summary":"Scan Engines","description":"Returns scan engines available to use for scanning.","operationId":"getScanEngines","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ScanEngine»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan Engine"],"summary":"Scan Engines","description":"Creates a new scan engine.","operationId":"createScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a scan engine.","required":false,"schema":{"$ref":"#/definitions/ScanEngine"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«EngineID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}":{"get":{"tags":["Scan Engine"],"summary":"Scan Engine","description":"Retrieves the details for a scan engine.","operationId":"getScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanEngine"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Engine"],"summary":"Scan Engine","description":"Updates the specified scan engine.","operationId":"updateScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of the scan engine to update.","required":false,"schema":{"$ref":"#/definitions/ScanEngine"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Engine"],"summary":"Scan Engine","description":"Deletes the specified scan engine.","operationId":"deleteScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}/scan_engine_pools":{"get":{"tags":["Scan Engine"],"summary":"Assigned Engine Pools","description":"Retrieves the list of engine pools the scan engine is currently assigned to.","operationId":"getAssignedEnginePools","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«EnginePool»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}/scans":{"get":{"tags":["Scan Engine"],"summary":"Scan Engine Scans","description":"Returns the scans that have been run on a scan engine.","operationId":"getScanEngineScans","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Scan»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_engines/{id}/sites":{"get":{"tags":["Scan Engine"],"summary":"Scan Engine Sites","description":"Retrieves the list of sites the specified scan engine is assigned to.","operationId":"getScanEngineSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan engine.","required":false,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Site»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_templates":{"get":{"tags":["Scan Template"],"summary":"Scan Templates","description":"Returns all scan templates.","operationId":"getScanTemplates","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ScanTemplate»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan Template"],"summary":"Scan Templates","description":"Creates a new scan template.","operationId":"createScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the scan template.","required":false,"schema":{"$ref":"#/definitions/ScanTemplate"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«ScanTemplateID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scan_templates/{id}":{"get":{"tags":["Scan Template"],"summary":"Scan Template","description":"Returns a scan template.","operationId":"getScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan template","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTemplate"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Scan Template"],"summary":"Scan Template","description":"Updates a scan template.","operationId":"updateScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan template","required":false,"type":"string"},{"in":"body","name":"param1","description":"The details of the scan template.","required":false,"schema":{"$ref":"#/definitions/ScanTemplate"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Scan Template"],"summary":"Scan Template","description":"Deletes a scan template.","operationId":"deleteScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan template","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scans":{"get":{"tags":["Scan"],"summary":"Scans","description":"Returns all scans.","operationId":"getScans","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"active","in":"query","description":"Return running scans or past scans (true/false value).","required":false,"type":"boolean","default":false,"enum":["true","false"]},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«GlobalScan»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scans/{id}":{"get":{"tags":["Scan"],"summary":"Scan","description":"Returns the specified scan.","operationId":"getScan","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Scan"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/scans/{id}/{status}":{"post":{"tags":["Scan"],"summary":"Scan Status","description":"Updates the scan status. Can pause, resume, and stop scans using this resource. In order to stop a scan the scan must be running or paused. In order to resume a scan the scan must be paused. In order to pause a scan the scan must be running.","operationId":"setScanStatus","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the scan.","required":false,"type":"integer","format":"int64"},{"name":"status","in":"path","description":"The status of the scan.","required":false,"type":"string","enum":["pause","stop","resume"]}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/shared_credentials":{"get":{"tags":["Credential"],"summary":"Shared Credentials","description":"Retrieves all defined shared credential resources.","operationId":"getSharedCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SharedCredential»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Credential"],"summary":"Shared Credentials","description":"Creates a new shared credential.","operationId":"createSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The specification of a shared credential.","required":false,"schema":{"$ref":"#/definitions/SharedCredential"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«CredentialID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"A CIFS credential","source":"{\n \"name\": \"CIFS Administrator\",\n \"description\": \"This is a cifs credential for an administrator\",\n \"account\": {\n \"service\": \"cifs\",\n \"username\": \"joe_smith@acme.com\",\n \"password\": \"******\",\n \"domain\": \"acme\"\n },\n \"siteAssignment\": \"all-sites\"\n}"},{"lang":"A Microsoft SQL Server credential","source":"{\n \"name\": \"MS SQL Administrator\",\n \"description\": \"This is an administrator credential for a Microsoft SQL Server database. Configured to use windows authentication. Credential is not assigned to any sites by default.\",\n \"account\": {\n \"service\": \"ms-sql\",\n \"database\": \"usersdb\",\n \"useWindowsAuthentication\": true,\n \"domain\": \"acme\",\n \"username\": \"admin\",\n \"password\": \"******\"\n },\n \"siteAssignment\": \"specific-sites\",\n \"hostRestriction\": \"machine1.acme.com\"\n}\n"},{"lang":"An Oracle database credential","source":"{\n \"name\": \"Oracle DB Administrator\",\n \"description\": \"This is an administrator credential for an Oracle database. Credential is assigned to a single site.\",\n \"account\": {\n \"service\": \"oracle\",\n \"sid\": \"usersdb\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"enumerateSids\": true,\n \"oracleListenerPassword\": \"******\"\n },\n \"siteAssignment\": \"specific-sites\",\n \"sites\": [1],\n \"hostRestriction\": \"192.168.1.1\"\n}\n"},{"lang":"An SNMPv3 credential","source":"{\n \"name\": \"SNMP v3 Administator\",\n \"account\": {\n \"service\": \"snmpv3\",\n \"authenticationType\": \"md5\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"privacyType\": \"aes-256\",\n \"privacyPassword\": \"******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"},{"lang":"An SSH credential","source":"{\n \"name\": \"SSH Administrator\",\n \"description\": \"This is an SSH credential for an administrator. Credential is assigned to all sites.\",\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"admin\",\n \"password\": \"******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"},{"lang":"An SSH credential using sudo+su permission elevation","source":"{\n \"name\": \"SSH User (permission elevation with sudo+su)\",\n \"description\": \"This is an SSH credential for an non-administrative user. Credential is configured to perform permission elevation using sudo+su for additional access.\",\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"jsmith\",\n \"password\": \"******\",\n \"permissionElevation\": \"sudosu\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"},{"lang":"An SSH public key credential","source":"{\n \"name\": \"SSH Public Key credential (permission elevation with sudo)\",\n \"description\": \"This is an SSH credential for a non-administrative user using a PEM-format private key. Credential is also configured to elevate permissions using sudo.\",\n \"account\": {\n \"service\": \"ssh-key\",\n \"username\": \"admin\",\n \"privateKeyPassword\": \"*******\",\n \"pemKey\": \"-----BEGIN RSA PRIVATE KEY-----\\nProc-Type: 4,ENCRYPTED\\nDEK-Info: AES-128-CBC,0D364155CB54D4B485BDB3B11B76BF59\\n\\nGLH7n9qeWzZ43g8d5ZNo9BcSWGXo7i8yd3ig9SLKXJd9GoxOrI4OepxZbhOJFDC9\\nXer799R8M4+ZGUwIC14R4lfzgKjcqEBCzya/c99MxK9Haz8pt5BjTMtUQRWO5y+/\\nyySosHRVebB05TuMhmLnJkNnDfTYwT+Hnvdhu/2ArEm2FN9Rr+guumwhQeGxUha5\\n7zjjSimLYjuU2uayjgFLfnh9g/Fe24qmHCw80z+nuHsm9WMWeoeOdmMrMmxhLxUb\\nb+zYZs/xRYjKgBMTRiXNSK9UIy21t2+7TUzeyDwfvHq0f5KpinhD1vzYSL+N0k/H\\ndg6vqM1gD/DLb+eKoAGpXTE0gpHWcXLg526ivlyZEpAxbuyGPVQ+7IIGytjxN7lG\\nJyvbk3fpKDwIJLDOFN4eb9DUaUoqyarqVl44BZhcs7mM0Cvn49IA7PfhcznLv4rJ\\netAoZ2Tjt0AiM774+4X29EaYBGXKGC3SYKfiznoEEy1Jpi6Akwxz4FKCEazH1wce\\nUaUS/N8VbquMPTqcLjCfoztdOgk65j4FczGt22CtGz4Ns8XB0KRM9fcVQFD4ZmRQ\\ni9Sr2onZUAMuvg3R6ZNdpm7FtQhNEpqV432TJdNZEMbXlDmG61P2vgILugKmu56r\\ngZfgI1QMUSUzZrnH+DXn0GY9KycRKTpY6L8PSUeTVyhDUFlTrTchvbnFf7LpVRRj\\n0+99EUxQFIogXt2rNuj6qioEpabh6rGtIPjICEkue75n2Y4Eu+pdPpSFAPNXLuMB\\nCcvoydmxWkBcq/wrCWcTKdKbGKXEj1xvHXAdUwcmlhXpn1igxcwRtcpwrN8cyRRB\\nddc1dDX6X/6iEnnWdDDWHZYjaMLUWVO0pPXzSEsZMFhS3wPvY1lg1Ertiag6DD0Q\\nwnJq19fJ5M8ehu9qMBdHgPIWdcZBMXSvaQqZ8gBtMO5UyuLA5BTP0yb6Jh3foXCq\\nCPihqYSCGUtXzupJCr/oE+jOaYNWjL5icEU0llA6lr71WWdj3b1OwrUTlrmgA0nK\\nxZu6LrqRT+nxbd4phYbkqmhXccq9H/d8pcZwKwPtF+z8HoZXSddaACYFAqY4eaxa\\nNRk2Zt1JJ+tUsNT9LLV1tUrQ+q1JsKlJp7LW60loljiex8uadsvzwnKIdoom8q0I\\nroXHdrwwqyubf4yYApRckbgzW9gLPbclKSqsVFGsDB+KysDYmg3QlTpkrgGl2555\\naQ7Z2TWWvcVL3y7z1l1F238m11LxKUY8Uvu7enpQ/gTrqQ1qqIi2/yv+LvZmAXWV\\nCFO2lMafpmmHjHEAI5ifXYzZlHCXYBHGHYJdGALFuhODiQqF4pOJI8CX/00msnlJ\\nbMH0+dGnk2AviiaLXb7eCZ7mELCX+Ah+00UU75Vdv7O3vhGHpjuMULvbLW2uo+cw\\n6rogJ4SfUBb0t+yS970Xty650DgpHYxCzDwZZzrQqPuX6SeOD8AnXuJL3cl3B5YU\\n60IPVJPsONIwvJlvZuiij4V8L95usGtvDVsexBKQlj3sSVZ5egICMBjkduEyDl3O\\nxOZtdnqktsWNF5XYUfa/8/HUYnN35g0UktpmKlg0yxhAxUAn4lENAY8xvhMGsSCO\\n-----END RSA PRIVATE KEY-----\",\n \"permissionElevation\": \"sudo\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"*******\"\n },\n \"siteAssignment\": \"all-sites\"\n}\n"}]},"delete":{"tags":["Credential"],"summary":"Shared Credentials","description":"Deletes all shared credentials.","operationId":"deleteAllSharedCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/shared_credentials/{id}":{"get":{"tags":["Credential"],"summary":"Shared Credential","description":"Retrieves the specified shared credential.","operationId":"getSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SharedCredential"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Credential"],"summary":"Shared Credential","description":"Updates the specified shared credential.","operationId":"updateSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the credential.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of the shared credential to update.","required":false,"schema":{"$ref":"#/definitions/SharedCredential"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Credential"],"summary":"Shared Credential","description":"Deletes the specified shared scan credential.","operationId":"deleteSharedCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites":{"get":{"tags":["Site"],"summary":"Sites","description":"Retrieves a paged resource of accessible sites.","operationId":"getSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Site»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Sites","description":"Creates a new site with the specified configuration.","operationId":"createSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a site configuration.","required":false,"schema":{"$ref":"#/definitions/SiteCreateResource"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«SiteID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}":{"get":{"tags":["Site"],"summary":"Site","description":"Retrieves the site with the specified identifier.","operationId":"getSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Site"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site","description":"Updates the configuration of the site with the specified identifier.","operationId":"updateSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating a site configuration.","required":false,"schema":{"$ref":"#/definitions/SiteUpdateResource"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site","description":"site.delete.description","operationId":"deleteSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts":{"get":{"tags":["Site"],"summary":"Site Alerts","description":"Retrieve all alerts defined in the site.","operationId":"getSiteAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Alert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Alerts","description":"Deletes all alerts from the site.","operationId":"deleteAllSiteAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/smtp":{"get":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Retrieves all SMTP alerts defined in the site.","operationId":"getSiteSmtpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SmtpAlert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Creates a new SMTP alert for the specified site.","operationId":"createSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a new SMTP alert.","required":false,"schema":{"$ref":"#/definitions/SmtpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«AlertID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Updates all SMTP alerts for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteSmtpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all SMTP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SmtpAlert"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SMTP Alerts","description":"Deletes all SMTP alerts from the site.","operationId":"deleteAllSiteSmtpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/smtp/{alertId}":{"get":{"tags":["Site"],"summary":"Site SMTP Alert","description":"Retrieves the specified SMTP alert.","operationId":"getSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SmtpAlert"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SMTP Alert","description":"Updates the specified SMTP alert.","operationId":"updateSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified SMTP alert.","required":false,"schema":{"$ref":"#/definitions/SmtpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SMTP Alert","description":"Deletes the specified SMTP alert from the site.","operationId":"deleteSiteSmtpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/snmp":{"get":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Retrieves all SNMP alerts defined in the site.","operationId":"getSiteSnmpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SnmpAlert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Creates a new SNMP alert for the specified site.","operationId":"createSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a new SNMP alert.","required":false,"schema":{"$ref":"#/definitions/SnmpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«AlertID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Updates all SNMP alerts for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteSnmpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all SNMP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SnmpAlert"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SNMP Alerts","description":"Deletes all SNMP alerts from the site.","operationId":"deleteAllSiteSnmpAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/snmp/{alertId}":{"get":{"tags":["Site"],"summary":"Site SNMP Alert","description":"Retrieves the specified SNMP alert.","operationId":"getSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SnmpAlert"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site SNMP Alert","description":"Updates the specified SNMP alert.","operationId":"updateSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified SNMP alert.","required":false,"schema":{"$ref":"#/definitions/SnmpAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site SNMP Alert","description":"Deletes the specified SNMP alert from the site.","operationId":"deleteSiteSnmpAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/syslog":{"get":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Retrieves all Syslog alerts defined in the site.","operationId":"getSiteSyslogAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SyslogAlert»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Creates a new Syslog alert for the specified site.","operationId":"createSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for creating a new Syslog alert.","required":false,"schema":{"$ref":"#/definitions/SyslogAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«AlertID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Updates all Syslog alerts for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteSyslogAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all Syslog alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SyslogAlert"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Syslog Alerts","description":"Deletes all Syslog alerts from the site.","operationId":"deleteAllSiteSyslogAlerts","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/alerts/syslog/{alertId}":{"get":{"tags":["Site"],"summary":"Site Syslog Alert","description":"Retrieves the specified Syslog alert.","operationId":"getSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SyslogAlert"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Syslog Alert","description":"Updates the specified Syslog alert.","operationId":"updateSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified Syslog alert.","required":false,"schema":{"$ref":"#/definitions/SyslogAlert"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Syslog Alert","description":"Deletes the specified Syslog alert from the site.","operationId":"deleteSiteSyslogAlert","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"alertId","in":"path","description":"The identifier of the alert.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/assets/{assetId}":{"delete":{"tags":["Site"],"summary":"Site Asset","description":"Removes an asset from a site. The asset will only be deleted if it belongs to no other sites.","operationId":"removeAssetFromSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/discovery_connection":{"get":{"tags":["Site"],"summary":"Site Discovery Connection","description":"Retrieves the discovery connection assigned to the site.","operationId":"getSiteDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SiteDiscoveryConnection"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Discovery Connection","description":"Updates the discovery connection assigned to the site.","operationId":"setSiteDiscoveryConnection","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the discovery connection.","required":false,"schema":{"type":"integer","format":"int64"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/discovery_search_criteria":{"get":{"tags":["Site"],"summary":"Site Discovery Search Criteria","description":"Retrieve the search criteria of the dynamic site.","operationId":"getSiteDiscoverySearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/DiscoverySearchCriteria"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Discovery Search Criteria","description":"Update the search criteria of the dynamic site.","operationId":"setSiteDiscoverySearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"param1","required":true,"schema":{"$ref":"#/definitions/DiscoverySearchCriteria"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/excluded_asset_groups":{"get":{"tags":["Site"],"summary":"Site Excluded Asset Groups","description":"Retrieves the excluded asset groups in a static site.","operationId":"getExcludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AssetGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Excluded Asset Groups","description":"Updates the excluded asset groups in a static site.","operationId":"updateExcludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of asset group identifiers.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Excluded Asset Groups","description":"Removes all excluded asset groups from the specified static site.","operationId":"removeAllExcludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/excluded_asset_groups/{assetGroupId}":{"delete":{"tags":["Site"],"summary":"Site Excluded Asset Group","description":"Removes the specified asset group from the excluded asset groups configured in the static site.","operationId":"removeExcludedAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/excluded_targets":{"get":{"tags":["Site"],"summary":"Site Excluded Targets","description":"Retrieves the excluded targets in a static site.","operationId":"getExcludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTargetsResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Excluded Targets","description":"Updates the excluded targets in a static site.","operationId":"updateExcludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"List of addresses to be the site's new excluded scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/included_asset_groups":{"get":{"tags":["Site"],"summary":"Site Included Asset Groups","description":"Retrieves the included asset groups in a static site.","operationId":"getIncludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«AssetGroup»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Included Asset Groups","description":"Updates the included asset groups in a static site.","operationId":"updateIncludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of asset group identifiers.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Included Asset Groups","description":"Removes all included asset groups from the specified static site.","operationId":"removeAllIncludedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/included_asset_groups/{assetGroupId}":{"delete":{"tags":["Site"],"summary":"Site Included Asset Group","description":"Removes the specified asset group from the included asset groups configured in the static site.","operationId":"removeIncludedAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/included_targets":{"get":{"tags":["Site"],"summary":"Site Included Targets","description":"Retrieves the included targets in a static site.","operationId":"getIncludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTargetsResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Included Targets","description":"Updates the included targets in a static site.","operationId":"updateIncludedTargets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"List of addresses to be the site's new included scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/organization":{"get":{"tags":["Site"],"summary":"Site Organization Information","description":"Retrieves the site organization information.","operationId":"getSiteOrganization","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SiteOrganization"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Organization Information","description":"Updates the site organization information.","operationId":"updateSiteOrganization","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified site's organization information.","required":false,"schema":{"$ref":"#/definitions/SiteOrganization"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_engine":{"get":{"tags":["Site"],"summary":"Site Scan Engine","description":"Retrieves the resource of the scan engine assigned to the site.","operationId":"getSiteScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanEngine"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Engine","description":"Updates the assigned scan engine to the site.","operationId":"setSiteScanEngine","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the scan engine.","required":false,"schema":{"type":"integer","format":"int32"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_schedules":{"get":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Returns all scan schedules for the site.","operationId":"getSiteScanSchedules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«ScanSchedule»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Creates a new scan schedule for the specified site.","operationId":"createSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for a scan schedule.","required":false,"schema":{"$ref":"#/definitions/ScanSchedule"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«ScanScheduleID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Updates all scan schedules for the specified site in a single request using the array of resources defined in the request body.","operationId":"setSiteScanSchedules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Array of resources for updating all scan schedules defined in the site. Scan schedules defined in the site that are omitted from this request will be deleted from the site.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/ScanSchedule"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Schedules","description":"Deletes all scan schedules from the site.","operationId":"deleteAllSiteScanSchedules","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_schedules/{scheduleId}":{"get":{"tags":["Site"],"summary":"Site Scan Schedule","description":"Retrieves the specified scan schedule.","operationId":"getSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"scheduleId","in":"path","description":"The identifier of the scan schedule.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanSchedule"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Schedule","description":"Updates the specified scan schedule.","operationId":"updateSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Resource for updating the specified scan schedule.","required":false,"schema":{"$ref":"#/definitions/ScanSchedule"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"scheduleId","in":"path","description":"The identifier of the scan schedule.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Schedule","description":"Deletes the specified scan schedule from the site.","operationId":"deleteSiteScanSchedule","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"scheduleId","in":"path","description":"The identifier of the scan schedule.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scan_template":{"get":{"tags":["Site"],"summary":"Site Scan Template","description":"Retrieves the resource of the scan template assigned to the site.","operationId":"getSiteScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ScanTemplate"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Template","description":"Updates the assigned scan template to the site.","operationId":"setSiteScanTemplate","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the scan template.","required":false,"schema":{"type":"string"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/scans":{"get":{"tags":["Scan"],"summary":"Site Scans","description":"Returns the scans for the specified site.","operationId":"getSiteScans","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"active","in":"query","description":"Return running scans or past scans (true/false value).","required":false,"type":"boolean","default":false,"enum":["true","false"]},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Scan»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Scan"],"summary":"Site Scans","description":"Starts a scan for the specified site.","operationId":"startScan","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details for the scan.","required":false,"schema":{"$ref":"#/definitions/AdhocScan"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«ScanID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/shared_credentials":{"get":{"tags":["Site"],"summary":"Assigned Shared Credentials","description":"Retrieve all of the shared credentials assigned to the site. These shared credentials can be enabled/disabled for the site's scan.","operationId":"getSiteSharedCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SiteSharedCredential»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/shared_credentials/{credentialId}/enabled":{"put":{"tags":["Site"],"summary":"Assigned Shared Credential Enablement","description":"Enable or disable the shared credential for the site's scans.","operationId":"enableSharedCredentialOnSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Flag indicating whether the shared credential is enabled for the site's scans.","required":false,"schema":{"type":"boolean"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the shared credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/site_credentials":{"get":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Retrieves all defined site credential resources.","operationId":"getSiteCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SiteCredential»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Creates a new site credential.","operationId":"createSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The specification of a site credential.","required":false,"schema":{"$ref":"#/definitions/SiteCredential"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/CreatedReference«CredentialID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"A CIFS credential","source":"{\n \"name\": \"CIFS Administrator\",\n \"description\": \"This is a cifs credential for an administrator. Credential is disabled for use in site scans and restricted to a single host for authentication.\",\n \"enabled\": false,\n \"account\": {\n \"service\": \"cifs\",\n \"username\": \"joe_smith@acme.com\",\n \"password\": \"******\",\n \"domain\": \"acme\"\n },\n \"hostRestriction\": \"machine1.acme.com\"\n}"},{"lang":"A Microsoft SQL Server credential","source":"{\n \"name\": \"MS SQL Administrator\",\n \"description\": \"This is an administrator credential for a Microsoft SQL Server database. Configured to use windows authentication. Credential is disabled for use in site scans.\",\n \"enabled\": false,\n \"account\": {\n \"service\": \"ms-sql\",\n \"database\": \"usersdb\",\n \"useWindowsAuthentication\": true,\n \"domain\": \"acme\",\n \"username\": \"admin\",\n \"password\": \"******\"\n },\n \"hostRestriction\": \"machine1.acme.com\"\n}\n"},{"lang":"An Oracle database credential","source":"{\n \"name\": \"Oracle DB Administrator\",\n \"description\": \"This is an administrator credential for an Oracle database. Credential is restricted to a single host and port for authentication.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"oracle\",\n \"sid\": \"usersdb\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"enumerateSids\": true,\n \"oracleListenerPassword\": \"******\"\n },\n \"hostRestriction\": \"192.168.1.1\",\n \"portRestriction\": 1521\n}\n"},{"lang":"An SNMPv3 credential","source":"{\n \"name\": \"SNMP v3 Administator\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"snmpv3\",\n \"authenticationType\": \"md5\",\n \"username\": \"admin\",\n \"password\": \"******\",\n \"privacyType\": \"aes-256\",\n \"privacyPassword\": \"******\"\n }\n}\n"},{"lang":"An SSH credential","source":"{\n \"name\": \"SSH Administrator\",\n \"description\": \"This is an SSH credential for an administrator. Credential is enabled for use in site scans.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"admin\",\n \"password\": \"******\"\n }\n}\n"},{"lang":"An SSH credential using sudo+su permission elevation","source":"{\n \"name\": \"SSH User (permission elevation with sudo+su)\",\n \"description\": \"This is an SSH credential for an non-administrative user. Credential is configured to perform permission elevation using sudo+su for additional access.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"ssh\",\n \"username\": \"jsmith\",\n \"password\": \"******\",\n \"permissionElevation\": \"sudosu\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"******\"\n }\n}\n"},{"lang":"An SSH public key credential","source":"{\n \"name\": \"SSH Public Key credential (permission elevation with sudo)\",\n \"description\": \"This is an SSH credential for a non-administrative user using a PEM-format private key. Credential is also configured to elevate permissions using sudo.\",\n \"enabled\": true,\n \"account\": {\n \"service\": \"ssh-key\",\n \"username\": \"admin\",\n \"privateKeyPassword\": \"*******\",\n \"pemKey\": \"-----BEGIN RSA PRIVATE KEY-----\\nProc-Type: 4,ENCRYPTED\\nDEK-Info: AES-128-CBC,0D364155CB54D4B485BDB3B11B76BF59\\n\\nGLH7n9qeWzZ43g8d5ZNo9BcSWGXo7i8yd3ig9SLKXJd9GoxOrI4OepxZbhOJFDC9\\nXer799R8M4+ZGUwIC14R4lfzgKjcqEBCzya/c99MxK9Haz8pt5BjTMtUQRWO5y+/\\nyySosHRVebB05TuMhmLnJkNnDfTYwT+Hnvdhu/2ArEm2FN9Rr+guumwhQeGxUha5\\n7zjjSimLYjuU2uayjgFLfnh9g/Fe24qmHCw80z+nuHsm9WMWeoeOdmMrMmxhLxUb\\nb+zYZs/xRYjKgBMTRiXNSK9UIy21t2+7TUzeyDwfvHq0f5KpinhD1vzYSL+N0k/H\\ndg6vqM1gD/DLb+eKoAGpXTE0gpHWcXLg526ivlyZEpAxbuyGPVQ+7IIGytjxN7lG\\nJyvbk3fpKDwIJLDOFN4eb9DUaUoqyarqVl44BZhcs7mM0Cvn49IA7PfhcznLv4rJ\\netAoZ2Tjt0AiM774+4X29EaYBGXKGC3SYKfiznoEEy1Jpi6Akwxz4FKCEazH1wce\\nUaUS/N8VbquMPTqcLjCfoztdOgk65j4FczGt22CtGz4Ns8XB0KRM9fcVQFD4ZmRQ\\ni9Sr2onZUAMuvg3R6ZNdpm7FtQhNEpqV432TJdNZEMbXlDmG61P2vgILugKmu56r\\ngZfgI1QMUSUzZrnH+DXn0GY9KycRKTpY6L8PSUeTVyhDUFlTrTchvbnFf7LpVRRj\\n0+99EUxQFIogXt2rNuj6qioEpabh6rGtIPjICEkue75n2Y4Eu+pdPpSFAPNXLuMB\\nCcvoydmxWkBcq/wrCWcTKdKbGKXEj1xvHXAdUwcmlhXpn1igxcwRtcpwrN8cyRRB\\nddc1dDX6X/6iEnnWdDDWHZYjaMLUWVO0pPXzSEsZMFhS3wPvY1lg1Ertiag6DD0Q\\nwnJq19fJ5M8ehu9qMBdHgPIWdcZBMXSvaQqZ8gBtMO5UyuLA5BTP0yb6Jh3foXCq\\nCPihqYSCGUtXzupJCr/oE+jOaYNWjL5icEU0llA6lr71WWdj3b1OwrUTlrmgA0nK\\nxZu6LrqRT+nxbd4phYbkqmhXccq9H/d8pcZwKwPtF+z8HoZXSddaACYFAqY4eaxa\\nNRk2Zt1JJ+tUsNT9LLV1tUrQ+q1JsKlJp7LW60loljiex8uadsvzwnKIdoom8q0I\\nroXHdrwwqyubf4yYApRckbgzW9gLPbclKSqsVFGsDB+KysDYmg3QlTpkrgGl2555\\naQ7Z2TWWvcVL3y7z1l1F238m11LxKUY8Uvu7enpQ/gTrqQ1qqIi2/yv+LvZmAXWV\\nCFO2lMafpmmHjHEAI5ifXYzZlHCXYBHGHYJdGALFuhODiQqF4pOJI8CX/00msnlJ\\nbMH0+dGnk2AviiaLXb7eCZ7mELCX+Ah+00UU75Vdv7O3vhGHpjuMULvbLW2uo+cw\\n6rogJ4SfUBb0t+yS970Xty650DgpHYxCzDwZZzrQqPuX6SeOD8AnXuJL3cl3B5YU\\n60IPVJPsONIwvJlvZuiij4V8L95usGtvDVsexBKQlj3sSVZ5egICMBjkduEyDl3O\\nxOZtdnqktsWNF5XYUfa/8/HUYnN35g0UktpmKlg0yxhAxUAn4lENAY8xvhMGsSCO\\n-----END RSA PRIVATE KEY-----\",\n \"permissionElevation\": \"sudo\",\n \"permissionElevationUserName\": \"root\",\n \"permissionElevationPassword\": \"*******\"\n }\n}\n"}]},"put":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Updates multiple site credentials.","operationId":"setSiteCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"A list of site credentials resources.","required":false,"schema":{"type":"array","items":{"$ref":"#/definitions/SiteCredential"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Credentials","description":"Deletes all site credentials from the site.","operationId":"deleteAllSiteCredentials","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/site_credentials/{credentialId}":{"get":{"tags":["Site"],"summary":"Site Scan Credential","description":"Retrieves the specified site credential.","operationId":"getSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SiteCredential"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Scan Credential","description":"Updates the specified site credential.","operationId":"updateSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param2","description":"The specification of the site credential to update.","required":false,"schema":{"$ref":"#/definitions/SiteCredential"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Scan Credential","description":"Deletes the specified site credential.","operationId":"deleteSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/site_credentials/{credentialId}/enabled":{"put":{"tags":["Site"],"summary":"Site Credential Enablement","description":"Enable or disable the site credential for scans.","operationId":"enableSiteCredential","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"Flag indicating whether the credential is enabled for use during the scan.","required":false,"schema":{"type":"boolean"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"credentialId","in":"path","description":"The identifier of the site credential.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/tags":{"get":{"tags":["Site"],"summary":"Site Tags","description":"Retrieves the list of tags added to the sites.","operationId":"getSiteTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Tag»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Tags","description":"Updates the site's list of tags.","operationId":"setSiteTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"A list of tag identifiers to replace the site's tags.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/tags/{tagId}":{"put":{"tags":["Site"],"summary":"Site Tag","description":"Adds a tag to the site.","operationId":"addSiteTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Site"],"summary":"Site Tag","description":"Removes the specified tag from the site's tags.","operationId":"removeSiteTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"tagId","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/users":{"get":{"tags":["Site"],"summary":"Site Users Access","description":"Retrieve the list of non-administrator users that have access to the site.","operationId":"getSiteUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«User»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Site"],"summary":"Site Users Access","description":"Grants a non-administrator user access to the specified site.","operationId":"addSiteUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The identifier of the user.","required":false,"schema":{"type":"integer","format":"int32"}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«UserID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Site"],"summary":"Site Users Access","description":"Updates the site's access list.","operationId":"setSiteUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"A list of user identifiers to replace the site's access list.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/users/{userId}":{"delete":{"tags":["Site"],"summary":"Site User Access","description":"Removes the specified user from the site's access list.","operationId":"removeSiteUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"},{"name":"userId","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/web_authentication/html_forms":{"get":{"tags":["Site"],"summary":"Web Authentication HTML Forms","description":"Retrieves all HTML form authentications configured in the site.","operationId":"getWebAuthHtmlForms","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«WebFormAuthentication»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sites/{id}/web_authentication/http_headers":{"get":{"tags":["Site"],"summary":"Web Authentication HTTP Headers","description":"Retrieves all HTTP header authentications configured in the site.","operationId":"getWebAuthHTTPHeaders","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«WebHeaderAuthentication»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/software":{"get":{"tags":["Asset"],"summary":"Software","description":"Returns all software enumerated on any asset.","operationId":"getSoftwares","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Software»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/software/{id}":{"get":{"tags":["Asset"],"summary":"Software","description":"Returns the details for software.","operationId":"getSoftware","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the software.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Software"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions":{"get":{"tags":["Vulnerability"],"summary":"Solutions","description":"Returns the details for all solutions.","operationId":"getSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Solution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}":{"get":{"tags":["Vulnerability"],"summary":"Solution","description":"Returns the details for a solution that can remediate one or more vulnerabilities.","operationId":"getSolution","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Solution"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}/prerequisites":{"get":{"tags":["Vulnerability"],"summary":"Solution Prerequisites","description":"Returns the solutions that must be executed in order for a solution to resolve a vulnerability.","operationId":"getPrerequisiteSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SolutionNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}/supersedes":{"get":{"tags":["Vulnerability"],"summary":"Superseded Solutions","description":"Returns the solutions that are superseded by this solution.","operationId":"getSupersededSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Solution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/solutions/{id}/superseding":{"get":{"tags":["Vulnerability"],"summary":"Superseding Solutions","description":"Returns the solutions that supersede this solution.","operationId":"getSupersedingSolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the solution.","required":false,"type":"string"},{"name":"rollup","in":"query","description":"Whether to return only highest-level \"rollup\" superseding solutions.","required":false,"type":"boolean","default":true}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«Solution»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sonar_queries":{"get":{"tags":["Asset Discovery"],"summary":"Sonar Queries","description":"Returns all sonar queries.","operationId":"getSonarQueries","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«SonarQuery»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Asset Discovery"],"summary":"Sonar Queries","description":"Creates a sonar query.","operationId":"createSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"param0","required":true,"schema":{"$ref":"#/definitions/SonarQuery"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«DiscoveryQueryID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" }\n ]\n },\n \"name\": \"Assets In IP Range\"\n}"},{"lang":"Recently Scanned Rapid7 Assets","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"domain-contains\", \"domain\": \"acme.com\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned ACME Assets\"\n}"},{"lang":"Recently Scanned Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned Assets in IP Range\"\n}"}]}},"/api/3/sonar_queries/search":{"post":{"tags":["Asset Discovery"],"summary":"Sonar Query Search","description":"Executes a Sonar query to discover assets with the given search criteria.","operationId":"sonarQuerySearch","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"param0","required":true,"schema":{"$ref":"#/definitions/SonarCriteria"}}],"responses":{"200":{"description":"OK","schema":{"type":"array","items":{"$ref":"#/definitions/DiscoveryAsset"}},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets in IP Range","source":"{\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" }\n ]\n}"},{"lang":"Recently Scanned Rapid7 Assets","source":"{\n \"filters\": [\n { \"type\": \"domain-contains\", \"domain\": \"acme.com\"},\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\"}\n ]\n}"},{"lang":"Recently Scanned Assets in IP Range","source":"{\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n}"}]}},"/api/3/sonar_queries/{id}":{"get":{"tags":["Asset Discovery"],"summary":"Sonar Query","description":"Returns a sonar query.","operationId":"getSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SonarQuery"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Asset Discovery"],"summary":"Sonar Query","description":"Updates a sonar query.","operationId":"updateSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"},{"in":"body","name":"param1","description":"param1","required":true,"schema":{"$ref":"#/definitions/SonarQuery"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[],"x-code-samples":[{"lang":"Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" }\n ]\n },\n \"name\": \"Assets In IP Range\"\n}"},{"lang":"Recently Scanned Rapid7 Assets","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"domain-contains\", \"domain\": \"acme.com\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned ACME Assets\"\n}"},{"lang":"Recently Scanned Assets in IP Range","source":"{\n \"criteria\": {\n \"filters\": [\n { \"type\": \"ip-address-range\", \"lower\": \"192.168.1.1\", \"upper\": \"192.168.1.254\" },\n { \"type\": \"scan-date-within-the-last\", \"days\": \"30\" }\n ]\n },\n \"name\": \"Recently Scanned Assets in IP Range\"\n}"}]},"delete":{"tags":["Asset Discovery"],"summary":"Sonar Query","description":"Removes a sonar query.","operationId":"deleteSonarQuery","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/sonar_queries/{id}/assets":{"get":{"tags":["Asset Discovery"],"summary":"Sonar Query Assets","description":"Returns the assets that are discovered by a Sonar query.","operationId":"getSonarQueryAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the Sonar query.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Resources«DiscoveryAsset»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags":{"get":{"tags":["Tag"],"summary":"Tags","description":"Returns all tags.","operationId":"getTags","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"name","in":"query","description":"name","required":false,"type":"string"},{"name":"type","in":"query","description":"type","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Tag»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Tag"],"summary":"Tags","description":"Creates a new tag.","operationId":"createTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the tag.","required":false,"schema":{"$ref":"#/definitions/Tag"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/ReferenceWith«TagID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}":{"get":{"tags":["Tag"],"summary":"Tag","description":"Returns a tag.","operationId":"getTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Tag"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag","description":"Updates the details of a tag. For more information about accepted fields for the tag search criteria see the PUT /search_criteria documentation.","operationId":"updateTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the tag.","required":false,"schema":{"$ref":"#/definitions/Tag"}},{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag","description":"Deletes the tag.","operationId":"deleteTag","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/asset_groups":{"get":{"tags":["Tag"],"summary":"Tag Asset Groups","description":"Returns the asset groups associated with the tag.","operationId":"getTagAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetGroupID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag Asset Groups","description":"Sets the asset groups associated with the tag.","operationId":"setTaggedAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The asset groups to add to the tag.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Asset Groups","description":"Removes the associations between the tag and all asset groups.","operationId":"untagAllAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/asset_groups/{assetGroupId}":{"put":{"tags":["Tag"],"summary":"Tag Asset Group","description":"Adds an asset group to this tag.","operationId":"tagAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The asset group identifier.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Asset Group","description":"Removes an asset group from this tag.","operationId":"untagAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The asset group identifier.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/assets":{"get":{"tags":["Tag"],"summary":"Tag Assets","description":"Returns the assets tagged with a tag.","operationId":"getTaggedAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/TaggedAssetReferences"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/assets/{assetId}":{"put":{"tags":["Tag"],"summary":"Tag Asset","description":"Adds an asset to the tag.","operationId":"tagAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Asset","description":"Removes an asset from the tag. Note: The asset must be added through the asset or tag, if the asset is added using a site, asset group, or search criteria this will not remove the asset.","operationId":"untagAsset","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"assetId","in":"path","description":"The identifier of the asset.","required":false,"type":"integer","format":"int64"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/search_criteria":{"get":{"tags":["Tag"],"summary":"Tag Search Criteria","description":"Returns the search criteria associated with the tag.","operationId":"getTagSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/SearchCriteria"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag Search Criteria","description":"Updates the search criteria associated with the tag. \n\nThe following table outlines the search criteria fields and the available operators: \n| Field | Operators | \n| ---------- | ---------------- | \n| asset name | is,is not,starts with,ends with,contains,does not contain,is empty,is not empty,is like,not like | \n| asset risk score | is,is not,in range,greater than,less than | \n| container image | is,is not,starts with,ends with,contains,does not contain,is like,not like | \n| container status | is,is not | \n| containers | are | \n| CVE IDs | is,is not,contains,does not contain | \n| CVSS Access Complexity | is,is not |\n| CVSS Authentication Required | is,is not |\n| CVSS Access Vector | is,is not |\n| CVSS Availability Impact | is,is not |\n| CVSS Confidentiality Impact | is,is not |\n| CVSS Integrity Impact | is,is not |\n| CVSS Access Complexity | is,is not |\n| host type | in,not in | \n| asset IP Address | is,is not,in range,not in range,is like,not like | \n| asset IP Address Type | in,not in | \n| asset last scan date | is on or before,is on or after,is between,is earlier than,is within the last | \n| mobile device last sync time | is within the last,is earlier than | \n| open ports | is,is not,in range | \n| asset operating system | contains,does not contain,is empty,is not empty | \n| asset alternate address type | in | \n| asset PCI compliance | is | \n| asset service name | contains,does not contain | \n| asset site ID | in,not in | \n| asset software | contains,does not contain| \n| asset Criticality tag | is,is not,is greater than,is less than,is applied,is not applied | \n| asset Custom tag | is,is not,starts with, ends with,contains,does not contain,is applied,is not applied | \n| asset Location tag | is,is not,starts with,ends with,contains,does not contain,is applied,is not applied | \n| asset Owner tag | is,is not,starts with,ends with,contains,does not contain,is applied,is not applied | \n| asset vulnerability validated status | are | \n| asset VAsset cluster | is,is not,contains,does not contain,starts with | \n| asset VAsset datacenter | is,is not | \n| asset VAsset host name | is,is not,contains,does not contain,starts with | \n| asset VAsset power state | in,not in | \n| asset VAsset resource pool path | contains,does not contain | \n| asset vulnerability assessed | is on or before,is on or after,is between,is earlier than,is within the last | \n| asset vulnerability category | is,is not,starts with,ends with,contains,does not contain| \n| asset vulnerability CVSS score | is,is not,in range,is greater than,is less than | \n| asset vulnerability exposures | includes,does not include | \n| asset vulnerability title | contains,does not contain,is,is not,starts with,ends with | \n\nThe following table outlines the operators and the values associated with them: \n| Operator | Values | \n| -------- | ------ | \n| are | A single string property named \"value\" | \n| is between | A number property named \"lower\" and a number property named \"upper\" | \n| contains | A single string property named \"value\" | \n| does not contain | A single string property named \"value\" | \n| is earlier than | A single number property named \"value\" | \n| ends with | A single string property named \"value\" | \n| is greater than | A single number property named \"value\" | \n| in | An array property named \"values\" | \n| not in | An array property named \"values\" | \n| in range | A number property named \"lower\" and a number property named \"upper\" | \n| includes | An array property named \"values\" | \n| is | A single string property named \"value\" | \n| is not | A single string property named \"value\" | \n| is applied | No value | \n| is not applied | No value | \n| is empty | No value | \n| is not empty | No value | \n| less than | A single number property named \"value\" | \n| like | A single string property named \"value\" | \n| not contains | A single string property named \"value\" | \n| not in range | A number property named \"lower\" and a number property named \"upper\" | \n| not like | A single string property named \"value\" | \n| is on or after | A single string property named \"value\", which is the date in ISO8601 format (yyyy-MM-dd) | \n| is on or before | A single string property named \"value\", which is the date in ISO8601 format (yyyy-MM-dd) | \n| starts with | A single string property named \"value\" | \n| is within the last | A single number property named \"value\" | \n\nThe following fields have enumerated values: \n| Field | Acceptable Values | \n| ----- | ----------------- | \n| containers | 0=present, 1=not present | \n| asset vulnerability validated status | 0=present, 1=not present | \n| asset PCI compliance | 0=fail, 1=pass | \n| asset alternate address type | 0=IPv4, 1=IPv6 | \n| asset IP Address Type | 0=IPv4, 1=IPv6 | \n| host type | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | \n| CVSS Access Complexity | L=Low, M=Medium, H=High | \n| CVSS Integrity Impact | N=None, P=Partial, C=Complete | \n| CVSS Confidentiality Impact | N=None, P=Partial, C=Complete | \n| CVSS Availability Impact | N=None, P=Partial, C=Complete | \n| CVSS Access Vector | L=Local, A=Adjacent, N=Network | \n| CVSS Authentication Required | N=None, S=Single, M=Multiple | \n| CVSS Access Complexity | L=Low, M=Medium, H=High | \n| container status | created, running, paused, restarting, exited, dead, unknown | \n","operationId":"updateTagSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the search criteria.","required":false,"schema":{"$ref":"#/definitions/SearchCriteria"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Search Criteria","description":"Removes the search criteria associated with the tag.","operationId":"removeTagSearchCriteria","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/sites":{"get":{"tags":["Tag"],"summary":"Tag Sites","description":"Returns the sites associated with the tag.","operationId":"getTaggedSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SiteID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Tag"],"summary":"Tag Sites","description":"Sets the sites associated with the tag.","operationId":"setTaggedSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The sites to add to the tag.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Sites","description":"Removes the associations between the tag and the sites.","operationId":"removeTaggedSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/tags/{id}/sites/{siteId}":{"put":{"tags":["Tag"],"summary":"Tag Site","description":"Adds a site to this tag.","operationId":"tagSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Tag"],"summary":"Tag Site","description":"Removes a site from this tag.","operationId":"untagSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the tag.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users":{"get":{"tags":["User"],"summary":"Users","description":"Returns all defined users. Global Administrator","operationId":"getUsers","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«User»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["User"],"summary":"Users","description":"Creates a new user. Global Administrator","operationId":"createUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The details of the user.","required":false,"schema":{"$ref":"#/definitions/User"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«UserID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}":{"get":{"tags":["User"],"summary":"User","description":"Returns the details for a user.Global Administrator, Current User","operationId":"getUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/User"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"User","description":"Updates the details of a user. Global Administrator","operationId":"updateUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The details of the user.","required":false,"schema":{"$ref":"#/definitions/User"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/2FA":{"get":{"tags":["User"],"summary":"Two-Factor Authentication","description":"Retrieves the current authentication token seed (key) for the user, if configured.","operationId":"getTwoFactorAuthenticationKey","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/TokenResource"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["User"],"summary":"Two-Factor Authentication","description":"Regenerates a new authentication token seed (key) and updates it for the user. This key may be then be used in the appropriate 2FA authenticator.","operationId":"regenerateTwoFactorAuthentication","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/TokenResource"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Two-Factor Authentication","description":"Sets the authentication token seed (key) for the user. This key may be then be used in the appropriate 2FA authenticator.","operationId":"setTwoFactorAuthentication","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The authentication token seed (key) to use for the user.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/asset_groups":{"get":{"tags":["User"],"summary":"Asset Groups Access","description":"Returns the asset groups to which the user has access.","operationId":"getUserAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetGroupID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Asset Groups Access","description":"Updates the asset groups to which the user has access. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator","operationId":"setUserAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The identifiers of the asset groups to grant the user access to. Ignored if user has access to `allAssetGroups`.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Asset Groups Access","description":"Revokes access to all asset groups from the user.","operationId":"removeAllUserAssetGroups","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/asset_groups/{assetGroupId}":{"put":{"tags":["User"],"summary":"Asset Group Access","description":"Grants the user access to the asset group. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator","operationId":"addUserAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Asset Group Access","description":"Grants the user access to the asset group. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator","operationId":"removeUserAssetGroup","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"assetGroupId","in":"path","description":"The identifier of the asset group.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/lock":{"delete":{"tags":["User"],"summary":"Unlock Account","description":"Unlocks a locked user account that has too many failed authentication attempts. Disabled accounts may not be unlocked.","operationId":"unlockUser","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/password":{"put":{"tags":["User"],"summary":"Password Reset","description":"Changes the password for the user. Users may only change their own password.","operationId":"resetPassword","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The new password to set.","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/privileges":{"get":{"tags":["User"],"summary":"User Privileges","description":"Returns the privileges granted to the user by their role. Global Administrator","operationId":"getUserPrivileges","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Privileges"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/sites":{"get":{"tags":["User"],"summary":"Sites Access","description":"Returns the sites to which the user has access.","operationId":"getUserSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SiteID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["User"],"summary":"Sites Access","description":"Updates the sites to which the user has access. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator","operationId":"setUserSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"The identifiers of the sites to grant the user access to. Ignored if the user has access to `allSites`.","required":false,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Sites Access","description":"Revokes access to all sites from the user.","operationId":"removeAllUserSites","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/users/{id}/sites/{siteId}":{"put":{"tags":["User"],"summary":"Site Access","description":"Grants the user access to the site. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator","operationId":"addUserSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["User"],"summary":"Site Access","description":"Grants the user access to the site. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator","operationId":"removeUserSite","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the user.","required":false,"type":"integer","format":"int32"},{"name":"siteId","in":"path","description":"The identifier of the site.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Vulnerabilities","description":"Returns all vulnerabilities that can be assessed during a scan.","operationId":"getVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Vulnerability»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability","description":"Returns the details for a vulnerability.","operationId":"getVulnerability","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Vulnerability"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/assets":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Affected Assets","description":"Get the assets affected by the vulnerability.","operationId":"getAffectedAssets","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«AssetID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/checks":{"get":{"tags":["Vulnerability Check"],"summary":"Vulnerability Checks","description":"Returns the vulnerability checks that assess for a specific vulnerability during a scan.","operationId":"getVulnerabilityChecksForVulnerability","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityCheckID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/exploits":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Exploits","description":"Returns the exploits that can be used to exploit a vulnerability.","operationId":"getVulnerabilityExploits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Exploit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/malware_kits":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Malware Kits","description":"Returns the malware kits that are known to be used to exploit the vulnerability.","operationId":"getVulnerabilityMalwareKits","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«MalwareKit»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/references":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability References","description":"Returns the external references that may be associated to a vulnerability.","operationId":"getVulnerabilityReferences_1","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityReference»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerabilities/{id}/solutions":{"get":{"tags":["Vulnerability"],"summary":"Vulnerability Solutions","description":"Returns all solutions (across all platforms) that may be used to remediate this vulnerability.","operationId":"getVulnerabilitySolutions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«SolutionNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_categories":{"get":{"tags":["Vulnerability"],"summary":"Categories","description":"Returns all vulnerabilities categories that can be assigned to a vulnerability. These categories group and label vulnerabilities by general purpose, affected systems, vendor, etc.","operationId":"getVulnerabilityCategories","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityCategory»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_categories/{id}":{"get":{"tags":["Vulnerability"],"summary":"Category","description":"Returns the details for a vulnerability category.","operationId":"getVulnerabilityCategory","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability category.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityCategory"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_categories/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Category Vulnerabilities","description":"Returns hypermedia links to the vulnerabilities that are in a vulnerability category.","operationId":"getVulnerabilityCategoryVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability category.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityNaturalID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_checks":{"get":{"tags":["Vulnerability Check"],"summary":"Checks","description":"Returns vulnerability checks. Optional search and filtering parameters may be supplied to refine the results. Searching allows full text search of the vulnerability details a check is related to.","operationId":"getVulnerabilityChecks","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"search","in":"query","description":"Vulnerability search term to find vulnerability checks for. e.g. `\"ssh\"`.","required":false,"type":"string"},{"name":"safe","in":"query","description":"Whether to return vulnerability checks that are considered \"safe\" to run. Defaults to return safe and unsafe checks.","required":false,"type":"boolean"},{"name":"potential","in":"query","description":"Whether to only return checks that result in potentially vulnerable results. Defaults to return all checks.","required":false,"type":"boolean"},{"name":"requiresCredentials","in":"query","description":"Whether to only return checks that require credentials in order to successfully execute. Defaults to return all checks.","required":false,"type":"boolean"},{"name":"unique","in":"query","description":"Whether to only return checks that guarantee to be executed once-and-only once on a host resulting in a unique result. False returns checks that can result in multiple occurrences of the same vulnerability on a host.","required":false,"type":"boolean"},{"name":"type","in":"query","description":"The type of vulnerability checks to return. See Check Types for all available types.","required":false,"type":"string"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityCheck»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_checks/{id}":{"get":{"tags":["Vulnerability Check"],"summary":"Check","description":"Returns the vulnerability check.","operationId":"vulnerabilityCheck","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability check.","required":false,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityCheck"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_checks_types":{"get":{"tags":["Vulnerability Check"],"summary":"Check Types","description":"Returns the vulnerability check types. The type groups related vulnerability checks by their purpose, property, or related characteristic.","operationId":"getVulnerabilityCheckTypes","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/ReferencesWith«VulnerabilityCheckTypeID,Link»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions":{"get":{"tags":["Vulnerability Exception"],"summary":"Exceptions","description":"Returns all exceptions defined on vulnerabilities.","operationId":"getVulnerabilityExceptions","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityException»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"post":{"tags":["Vulnerability Exception"],"summary":"Exceptions","description":"Creates a vulnerability exception.","operationId":"createVulnerabilityException","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"in":"body","name":"param0","description":"The vulnerability exception to create.","required":false,"schema":{"$ref":"#/definitions/VulnerabilityException"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/CreatedReference«VulnerabilityExceptionID,Link»"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions/{id}":{"get":{"tags":["Vulnerability Exception"],"summary":"Exception","description":"Returns an exception made on a vulnerability.","operationId":"getVulnerabilityException","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability exception.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityException"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"delete":{"tags":["Vulnerability Exception"],"summary":"Exception","description":"Removes an exception made on a vulnerability.","operationId":"removeVulnerabilityException","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions/{id}/expires":{"get":{"tags":["Vulnerability Exception"],"summary":"Exception Expiration","description":"Get the expiration date for a vulnerability exception.","operationId":"getVulnerabilityExceptionExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"type":"string"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]},"put":{"tags":["Vulnerability Exception"],"summary":"Exception Expiration","description":"Set the expiration date for a vulnerability exception. This must be a valid date in the future.","operationId":"updateVulnerabilityExceptionExpiration","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"},{"in":"body","name":"param1","description":"param1","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_exceptions/{id}/{status}":{"post":{"tags":["Vulnerability Exception"],"summary":"Exception Status","description":"Update the status of the vulnerability exception. The status can be one of: `\"recall\"`, `\"approve\"`, or `\"reject\"`.","operationId":"updateVulnerabilityExceptionStatus","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"},{"name":"status","in":"path","description":"Exception Status","required":false,"type":"string","enum":["recall","approve","reject"]},{"in":"body","name":"param2","description":"param2","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/Links"},"examples":{},"headers":{}},"400":{"description":"Bad Request","schema":{"$ref":"#/definitions/BadRequestError"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_references":{"get":{"tags":["Vulnerability"],"summary":"References","description":"Returns the external references that may be associated to a vulnerability.","operationId":"getVulnerabilityReferences","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«VulnerabilityReference»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_references/{id}":{"get":{"tags":["Vulnerability"],"summary":"Reference","description":"Returns an external vulnerability reference.","operationId":"getVulnerabilityReference","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"The identifier of the vulnerability reference.","required":false,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/VulnerabilityReference"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}},"/api/3/vulnerability_references/{id}/vulnerabilities":{"get":{"tags":["Vulnerability"],"summary":"Reference Vulnerabilities","description":"Returns the vulnerabilities that are referenced by an external reference.","operationId":"getVulnerabilityReferenceVulnerabilities","schemes":[],"consumes":["application/json"],"produces":["application/json;charset=UTF-8"],"parameters":[{"name":"id","in":"path","description":"id","required":true,"type":"integer","format":"int32"},{"name":"page","in":"query","description":"The index of the page (zero-based) to retrieve.","required":false,"type":"integer","default":0,"format":"int32"},{"name":"size","in":"query","description":"The number of records per page to retrieve.","required":false,"type":"integer","default":10,"format":"int32"},{"name":"sort","in":"query","description":"The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.","required":false,"type":"array","items":{"type":"string"},"collectionFormat":"multi"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/PageOf«Vulnerability»"},"examples":{},"headers":{}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/UnauthorizedError"},"examples":{},"headers":{}},"404":{"description":"Not Found","schema":{"$ref":"#/definitions/NotFoundError"},"examples":{},"headers":{}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/InternalServerError"},"examples":{},"headers":{}},"503":{"description":"Service Unavailable","schema":{"$ref":"#/definitions/ServiceUnavailableError"},"examples":{},"headers":{}}},"security":[]}}},"securityDefinitions":{"Basic":{"type":"basic"}},"definitions":{"Account":{"type":"object","discriminator":"","properties":{"service":{"type":"string"}},"description":""},"AdditionalInformation":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"","description":"Hypertext Markup Language (HTML) representation of the content."},"text":{"type":"string","example":"","description":"Textual representation of the content."}},"description":""},"Address":{"type":"object","discriminator":"","properties":{"ip":{"type":"string","example":"123.245.34.235","description":"The IPv4 or IPv6 address."},"mac":{"type":"string","example":"12:34:56:78:90:AB","description":"The Media Access Control (MAC) address. The format is six groups of two hexadecimal digits separated by colons."}},"description":""},"AdhocScan":{"type":"object","discriminator":"","properties":{"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine."},"hosts":{"type":"array","description":"The hosts that should be included as a part of the scan. This should be a mixture of IP Addresses and Hostnames as a String array.","items":{"type":"string"}},"name":{"type":"string","example":"","description":"The user-driven scan name for the scan."},"templateId":{"type":"string","example":"","description":"The identifier of the scan template"}},"description":""},"AdvisoryLink":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"https://support.microsoft.com/en-us/kb/4041689","description":"The hypertext reference for the vulnerability reference."},"rel":{"type":"string","example":"Advisory","description":"The relation of the hypermedia link, `\"Advisory\"`."}},"description":""},"Alert":{"type":"object","required":["enabled","name","notification"],"discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]}},"description":""},"AssessmentResult":{"type":"object","required":["status"],"discriminator":"","properties":{"checkId":{"type":"string","example":"ssh-openssh-x11uselocalhost-x11-forwarding-session-hijack","description":"The identifier of the vulnerability check."},"exceptions":{"type":"array","description":"If the result is vulnerable with exceptions applied, the identifier(s) of the exceptions actively applied to the result.","items":{"type":"integer","format":"int32"}},"key":{"type":"string","example":"","description":"An additional discriminating key used to uniquely identify between multiple instances of results on the same finding."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"port":{"type":"integer","format":"int32","example":22,"description":"The port of the service the result was discovered on."},"proof":{"type":"string","example":"OpenBSD OpenSSH 4.3 on Linux
","description":"The proof explaining why the result was found vulnerable. The proof may container embedded HTML formatting markup."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service the result was discovered on.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},"status":{"type":"string","example":"vulnerable-version","description":"The status of the vulnerability check result.","enum":["unknown","not-vulnerable","vulnerable","vulnerable-version","vulnerable-potential","vulnerable-with-exception-applied","vulnerable-version-with-exception-applied","vulnerable-potential-with-exception-applied"]}},"description":""},"Asset":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"All addresses discovered on the asset.","items":{"$ref":"#/definitions/Address"}},"assessedForPolicies":{"type":"boolean","example":false,"description":"Whether the asset has been assessed for policies at least once.","readOnly":true},"assessedForVulnerabilities":{"type":"boolean","example":true,"description":"Whether the asset has been assessed for vulnerabilities at least once.","readOnly":true},"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the asset.","items":{"$ref":"#/definitions/Configuration"}},"databases":{"type":"array","description":"The databases enumerated on the asset.","items":{"$ref":"#/definitions/Database"}},"files":{"type":"array","description":"The files discovered with searching on the asset.","items":{"$ref":"#/definitions/File"}},"history":{"type":"array","description":"The history of changes to the asset over time.","readOnly":true,"items":{"$ref":"#/definitions/AssetHistory"}},"hostName":{"type":"string","example":"corporate-workstation-1102DC.acme.com","description":"The primary host name (local or FQDN) of the asset."},"hostNames":{"type":"array","description":"All host names or aliases discovered on the asset.","items":{"$ref":"#/definitions/HostName"}},"id":{"type":"integer","format":"int64","example":282,"description":"The identifier of the asset."},"ids":{"type":"array","description":"Unique identifiers found on the asset, such as hardware or operating system identifiers.","items":{"$ref":"#/definitions/UniqueId"}},"ip":{"type":"string","example":"182.34.74.202","description":"The primary IPv4 or IPv6 address of the asset."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"mac":{"type":"string","example":"AB:12:CD:34:EF:56","description":"The primary Media Access Control (MAC) address of the asset. The format is six groups of two hexadecimal digits separated by colons."},"os":{"type":"string","example":"Microsoft Windows Server 2008 Enterprise Edition SP1","description":"The full description of the operating system of the asset."},"osFingerprint":{"example":"","description":"The details of the operating system of the asset.","$ref":"#/definitions/OperatingSystem"},"rawRiskScore":{"type":"number","format":"double","example":31214.3,"description":"The base risk score of the asset.","readOnly":true},"riskScore":{"type":"number","format":"double","example":37457.16,"description":"The risk score (with criticality adjustments) of the asset.","readOnly":true},"services":{"type":"array","description":"The services discovered on the asset.","items":{"$ref":"#/definitions/Service"}},"software":{"type":"array","description":"The software discovered on the asset.","items":{"$ref":"#/definitions/Software"}},"type":{"type":"string","example":"","description":"The type of asset.","enum":["unknown","guest","hypervisor","physical","mobile"]},"userGroups":{"type":"array","description":"The group accounts enumerated on the asset.","items":{"$ref":"#/definitions/GroupAccount"}},"users":{"type":"array","description":"The user accounts enumerated on the asset.","items":{"$ref":"#/definitions/UserAccount"}},"vulnerabilities":{"example":"","description":"Summary information for vulnerabilities on the asset.","readOnly":true,"$ref":"#/definitions/AssetVulnerabilities"}},"description":""},"AssetCreate":{"type":"object","required":["date"],"discriminator":"","properties":{"addresses":{"type":"array","description":"All addresses discovered on the asset.","items":{"$ref":"#/definitions/Address"}},"assessedForPolicies":{"type":"boolean","example":false,"description":"Whether the asset has been assessed for policies at least once.","readOnly":true},"assessedForVulnerabilities":{"type":"boolean","example":true,"description":"Whether the asset has been assessed for vulnerabilities at least once.","readOnly":true},"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the asset.","items":{"$ref":"#/definitions/Configuration"}},"cpe":{"type":"string","example":"","description":"The Common Platform Enumeration (CPE) of the operating system. This is the tertiary means of specifying the operating system fingerprint. Use `\"osFingerprint\"` or `\"os\"` as a more accurate means of defining the operating system."},"databases":{"type":"array","description":"The databases enumerated on the asset.","items":{"$ref":"#/definitions/Database"}},"date":{"type":"string","example":"","description":"The date the data was collected on the asset."},"description":{"type":"string","example":"","description":"The description of the source or collection of information on the asset. This description will appear in the history of the asset for future auditing purposes."},"files":{"type":"array","description":"The files discovered with searching on the asset.","items":{"$ref":"#/definitions/File"}},"history":{"type":"array","description":"The history of changes to the asset over time.","readOnly":true,"items":{"$ref":"#/definitions/AssetHistory"}},"hostName":{"example":"corporate-workstation-1102DC.acme.com","description":"The primary host name (local or FQDN) of the asset.","$ref":"#/definitions/HostName"},"hostNames":{"type":"array","description":"Additional host names for the asset.","items":{"$ref":"#/definitions/HostName"}},"id":{"type":"integer","format":"int64","example":282,"description":"The identifier of the asset."},"ids":{"type":"array","description":"Unique identifiers found on the asset, such as hardware or operating system identifiers.","items":{"$ref":"#/definitions/UniqueId"}},"ip":{"type":"string","example":"182.34.74.202","description":"The primary IPv4 or IPv6 address of the asset."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"mac":{"type":"string","example":"AB:12:CD:34:EF:56","description":"The primary Media Access Control (MAC) address of the asset. The format is six groups of two hexadecimal digits separated by colons."},"os":{"type":"string","example":"","description":"Free-form textual description of the operating system of the asset, typically from a fingerprinting source. This input will be parsed to produce a full fingerprint. This is the secondary means of specifying the operating system. Use `osFingerprint` for a more accurate definition."},"osFingerprint":{"example":"","description":"The details of the operating system of the asset. At least one of `vendor`, `family`, or `product` must be supplied. This is the preferred means of defining the operating system.","$ref":"#/definitions/OperatingSystem"},"rawRiskScore":{"type":"number","format":"double","example":31214.3,"description":"The base risk score of the asset.","readOnly":true},"riskScore":{"type":"number","format":"double","example":37457.16,"description":"The risk score (with criticality adjustments) of the asset.","readOnly":true},"services":{"type":"array","description":"The services discovered on the asset.","items":{"$ref":"#/definitions/Service"}},"software":{"type":"array","description":"The software discovered on the asset.","items":{"$ref":"#/definitions/Software"}},"type":{"type":"string","example":"","description":"The type of asset."},"userGroups":{"type":"array","description":"The group accounts enumerated on the asset.","items":{"$ref":"#/definitions/GroupAccount"}},"users":{"type":"array","description":"The user accounts enumerated on the asset.","items":{"$ref":"#/definitions/UserAccount"}},"vulnerabilities":{"example":"","description":"Summary information for vulnerabilities on the asset.","readOnly":true,"$ref":"#/definitions/AssetVulnerabilities"}},"description":""},"AssetCreatedOrUpdatedReference":{"type":"object","discriminator":"","properties":{"body":{"$ref":"#/definitions/ReferenceWith«AssetID,Link»"},"statusCode":{"type":"string","enum":["100","101","102","103","200","201","202","203","204","205","206","207","208","226","300","301","302","303","304","305","307","308","400","401","402","403","404","405","406","407","408","409","410","411","412","413","414","415","416","417","418","419","420","421","422","423","424","426","428","429","431","500","501","502","503","504","505","506","507","508","509","510","511"]}},"description":""},"AssetGroup":{"type":"object","required":["name","type"],"discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":768,"description":"The number of assets that belong to the asset group.","readOnly":true},"description":{"type":"string","example":"Assets with unacceptable high risk required immediate remediation.","description":"The description of the asset group."},"id":{"type":"integer","format":"int32","example":61,"description":"The identifier of the asset group.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"High Risk Assets","description":"The name of the asset group."},"riskScore":{"type":"number","format":"double","example":4457823.78,"description":"The total risk score of all assets that belong to the asset group.","readOnly":true},"searchCriteria":{"example":"","description":"Search criteria used to determine dynamic membership, if `type` is `\"dynamic\"`. ","$ref":"#/definitions/SearchCriteria"},"type":{"type":"string","example":"dynamic","description":"The type of the asset group.","enum":["static","dynamic"]},"vulnerabilities":{"example":"","description":"Summary information for distinct vulnerabilities found on the assets.","readOnly":true,"$ref":"#/definitions/Vulnerabilities"}},"description":""},"AssetHistory":{"type":"object","discriminator":"","properties":{"date":{"type":"string","example":"2018-04-09T06:23:49Z","description":"The date the asset information was collected or changed."},"description":{"type":"string","example":"","description":"Additional information describing the change."},"scanId":{"type":"integer","format":"int64","example":12,"description":"If a scan-oriented change, the identifier of the corresponding scan the asset was scanned in."},"type":{"type":"string","example":"SCAN","description":"The type of change. May be one of: \n| Type | Source of Data | \n| ----------------------------------- | ----------------------------------------------------------- | \n| `ASSET-IMPORT`, `EXTERNAL-IMPORT` | External source such as the API | \n| `EXTERNAL-IMPORT-APPSPIDER` | Rapid7 InsightAppSec (previously known as AppSpider) | \n| `SCAN` | Scan engine scan | \n| `ACTIVE-SYNC` | ActiveSync | \n| `SCAN-LOG-IMPORT` | Manual import of a scan log | \n| `VULNERABILITY_EXCEPTION_APPLIED` | Vulnerability exception applied | \n| `VULNERABILITY_EXCEPTION_UNAPPLIED` | Vulnerability exception unapplied |"},"user":{"type":"string","example":"","description":"If a vulnerability exception change, the login name of the user that performed the operation."},"version":{"type":"integer","format":"int32","example":8,"description":"The version number of the change (a chronological incrementing number starting from 1). "},"vulnerabilityExceptionId":{"type":"integer","format":"int32","example":"","description":"If a vulnerability exception change, the identifier of the vulnerability exception that caused the change."}},"description":""},"AssetPolicy":{"type":"object","discriminator":"","properties":{"benchmarkName":{"type":"string","example":"","description":"The name of the policy's benchmark."},"benchmarkVersion":{"type":"string","example":"","description":"The version number of the benchmark that includes the policy."},"category":{"type":"string","example":"","description":"A grouping of similar benchmarks based on their source, purpose, or other criteria. Examples include FDCC, USGCB, and CIS."},"description":{"type":"string","example":"","description":"The description of the policy."},"failedAssetsCount":{"type":"integer","format":"int32","example":"","description":"The number of assets that are not compliant with the policy. The assets considered in the calculation are based on the user's list of accessible assets."},"failedRulesCount":{"type":"integer","format":"int32","example":"","description":"The number of rules in the policy that are not compliant with any scanned assets. The assets considered in the calculation are based on the user's list of accessible assets."},"id":{"type":"string","example":"","description":"The textual representation of the policy identifier."},"isCustom":{"type":"boolean","example":false,"description":"A flag indicating whether the policy is custom."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"notApplicableAssetsCount":{"type":"integer","format":"int32","example":"","description":"The number of assets that were attempted to be scanned, but are not applicable to the policy. The assets considered in the calculation are based on the user's list of accessible assets."},"notApplicableRulesCount":{"type":"integer","format":"int32","example":"","description":"The number of rules in the policy that are not applicable with any scanned assets. The assets considered in the calculation are based on the user's list of accessible assets."},"passedAssetsCount":{"type":"integer","format":"int32","example":"","description":"The number of assets that are compliant with the policy. The assets considered in the calculation are based on the user's list of accessible assets."},"passedRulesCount":{"type":"integer","format":"int32","example":"","description":"The number of rules in the policy that are compliant with all scanned assets. The assets considered in the calculation are based on the user's list of accessible assets."},"policyName":{"type":"string","example":"","description":"The name of the policy."},"ruleCompliance":{"type":"number","format":"double","example":"","description":"The ratio of PASS results for the rules to the total number of rules in each policy."},"ruleComplianceDelta":{"type":"number","format":"double","example":"","description":"The change in rule compliance between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets."},"scope":{"type":"string","example":"","description":"The textual representation of the policy scope. Policies that are automatically available have `\"Built-in\"` scope, whereas policies created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"surrogateId":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy"},"title":{"type":"string","example":"","description":"The title of the policy as visible to the user."},"unscoredRules":{"type":"integer","format":"int32","example":"","description":"The number of rules defined in the policy with a role of \"unscored\". These rules will not affect rule compliance scoring for the policy."}},"description":""},"AssetPolicyAssessment":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"total":{"type":"integer","format":"int32","example":"","description":"The total number of assets."},"totalFailed":{"type":"integer","format":"int32","example":"","description":"The total number of assets that are not compliant."},"totalNotApplicable":{"type":"integer","format":"int32","example":"","description":"The total number of assets that are not applicable."},"totalPassed":{"type":"integer","format":"int32"}},"description":""},"AssetPolicyItem":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"description":{"type":"string","example":"","description":"A description of the policy rule or group."},"hasOverride":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has an active override applied to it. This field only applies to resources representing policy rules. "},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule or group."},"isUnscored":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has a role of `\"unscored\"`. This field only applies to resources representing policy rules."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy rule or group."},"policy":{"example":"","description":"Information about the policy.","$ref":"#/definitions/PolicyMetadataResource"},"rules":{"example":"","description":"A summary of rule compliance for multiple policy rules. This field only applies to resources representing policy groups.","$ref":"#/definitions/PolicyRuleAssessmentResource"},"scope":{"type":"string","example":"","description":"The textual representation of the policy rule/group scope. Policy rules or groups that are automatically available have `\"Built-in\"` scope, whereas policy rules or groups created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The asset's rule compliance status.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"title":{"type":"string","example":"","description":"The title of the policy rule, or group, as visible to the user."},"type":{"type":"string","example":"","description":"Indicates whether the resource represents either a policy rule or group.","enum":["rule","group"]}},"description":""},"AssetTag":{"type":"object","required":["name","type"],"discriminator":"","properties":{"color":{"type":"string","example":"default","description":"The color to use when rendering the tag in a user interface.","enum":["default","blue","green","orange","red","purple"]},"created":{"type":"string","example":"2017-10-07T23:50:01.205Z","description":"The date and time the tag was created."},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the tag.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Very High","description":"The name (label) of the tab."},"riskModifier":{"type":"object","example":"2.0","description":"The amount to adjust risk of an asset tagged with this tag. "},"searchCriteria":{"$ref":"#/definitions/SearchCriteria"},"source":{"type":"string","example":"built-in","description":"The source of the tag.","readOnly":true,"enum":["built-in","custom"]},"sources":{"type":"array","description":"The source(s) by which a tag is applied to an asset.","items":{"$ref":"#/definitions/TagAssetSource"}},"type":{"type":"string","example":"criticality","description":"The type of the tag.","enum":["custom","location","owner","criticality"]}},"description":""},"AssetVulnerabilities":{"type":"object","discriminator":"","properties":{"critical":{"type":"integer","format":"int64","example":16,"description":"The number of critical vulnerabilities.","readOnly":true},"exploits":{"type":"integer","format":"int64","example":4,"description":"The number of distinct exploits that can exploit any of the vulnerabilities on the asset.","readOnly":true},"malwareKits":{"type":"integer","format":"int64","example":0,"description":"The number of distinct malware kits that vulnerabilities on the asset are susceptible to.","readOnly":true},"moderate":{"type":"integer","format":"int64","example":3,"description":"The number of moderate vulnerabilities.","readOnly":true},"severe":{"type":"integer","format":"int64","example":76,"description":"The number of severe vulnerabilities.","readOnly":true},"total":{"type":"integer","format":"int64","example":95,"description":"The total number of vulnerabilities.","readOnly":true}},"description":""},"AuthenticationSettings":{"type":"object","discriminator":"","properties":{"2fa":{"type":"boolean","example":false,"description":"Whether two-factor authentication is enabled."},"loginLockThreshold":{"type":"integer","format":"int32","example":"true","description":"The maximum number of failed login attempts for an account becomes locked."}},"description":""},"AuthenticationSource":{"type":"object","discriminator":"","properties":{"external":{"type":"boolean","example":false,"description":"Whether the authentication source is external (true) or internal (false)."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the authentication source."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the authentication source."},"type":{"type":"string","example":"","description":"The type of the authentication source.","enum":["normal","kerberos","ldap","admin"]}},"description":""},"AvailableReportFormat":{"type":"object","discriminator":"","properties":{"format":{"type":"string","example":"pdf","description":"The output file-format of a report.","enum":["arf-xml","csv-export","cyberscope-xml","database-export","pdf","html","nexpose-simple-xml","oval-xml","qualys-xml","rtf","scap-xml","sql-query","text","xccdf-xml","xccdf-csv","xml","xml-export","xml-export-v2"]},"templates":{"type":"array","description":"The report template identifiers that can be used within a report format.","items":{"type":"string"}}},"description":""},"BackupsSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":0,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"0 bytes","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"BadRequestError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"400","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["400"]}},"description":""},"CPUInfo":{"type":"object","discriminator":"","properties":{"clockSpeed":{"type":"integer","format":"int32","example":2600,"description":"The clock speed of the host, in MHz."},"count":{"type":"integer","format":"int32","example":8,"description":"The number of CPUs."}},"description":""},"Configuration":{"type":"object","required":["name"],"discriminator":"","properties":{"name":{"type":"string","example":"","description":"The name of the configuration value."},"value":{"type":"string","example":"","description":"The configuration value."}},"description":""},"ConsoleCommandOutput":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"output":{"type":"string","example":"","description":"The output of the command that was executed."}},"description":""},"ContentDescription":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"A remote code execution vulnerability exists in the way that the scripting engine handles objects in memory in Microsoft Edge. ...","description":"Hypertext Markup Language (HTML) representation of the content."},"text":{"type":"string","example":"A remote code execution vulnerability exists in the way that the scripting engine handles objects in memory in Microsoft Edge. ...
","description":"Textual representation of the content."}},"description":""},"CreateAuthenticationSource":{"type":"object","discriminator":"","properties":{"type":{"type":"string","example":"","description":"The type of the authentication source to use to authenticate the user. Defaults to `normal`."}},"description":""},"CreatedOrUpdatedReference":{"type":"object","discriminator":"","properties":{"id":{"type":"object","example":"3","description":"The identifier of the resource created or updated."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference":{"type":"object","discriminator":"","properties":{"id":{"type":"object","example":"1","description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«AssetGroupID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«CredentialID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«DiscoveryQueryID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«EngineID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«PolicyOverrideID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«ScanID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«ScanTemplateID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"string","example":"1","description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«UserID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«VulnerabilityExceptionID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«VulnerabilityValidationID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"CreatedReference«int,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the resource created."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"Criterion":{"type":"object","discriminator":"","properties":{"extras":{"type":"object"},"metaData":{"$ref":"#/definitions/IMetaData"},"metadata":{"$ref":"#/definitions/MetadataContainer"},"operator":{"type":"string","enum":["IS","IS_NOT","IS_APPLIED","IS_NOT_APPLIED","IN","NOT_IN","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","LESS_THAN","GREATER_THAN","IN_RANGE","NOT_IN_RANGE","INCLUDE","DO_NOT_INCLUDE","ON_OR_BEFORE","ON_OR_AFTER","BETWEEN","EARLIER_THAN","WITHIN_THE_LAST","IS_EMPTY","IS_NOT_EMPTY","ARE","LIKE","NOT_LIKE"]},"values":{"type":"array","items":{"type":"string"}}},"description":""},"Database":{"type":"object","required":["name"],"discriminator":"","properties":{"description":{"type":"string","example":"Microsoft SQL Server","description":"The description of the database instance."},"id":{"type":"integer","format":"int32","example":13,"description":"The identifier of the database."},"name":{"type":"string","example":"MSSQL","description":"The name of the database instance."}},"description":""},"DatabaseConnectionSettings":{"type":"object","discriminator":"","properties":{"maximumAdministrationPoolSize":{"type":"integer","format":"int32","example":-1,"description":"The maximum number of administrative connections in the connection pool. -1 means unlimited."},"maximumPoolSize":{"type":"integer","format":"int32","example":-1,"description":"${settings.database.connection.max}"},"maximumPreparedStatementPoolSize":{"type":"integer","format":"int32","example":256,"description":"The maximum number of prepared statements in the prepared statement pool. -1 means unlimited."}},"description":""},"DatabaseSettings":{"type":"object","discriminator":"","properties":{"connection":{"example":"","description":"Details connection settings for the database.","$ref":"#/definitions/DatabaseConnectionSettings"},"host":{"type":"string","example":"127.0.0.1","description":"The database host."},"maintenanceThreadPoolSize":{"type":"integer","format":"int32","example":20,"description":"The maximum number of parallel tasks when executing maintenance tasks."},"port":{"type":"integer","format":"int32","example":5432,"description":"The database port."},"url":{"type":"string","example":"//127.0.0.1:5432/nexpose","description":"The database connection URL."},"user":{"type":"string","example":"nxpgsql","description":"The database user."},"vendor":{"type":"string","example":"postgresql","description":"The database vendor."}},"description":""},"DatabaseSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":5364047843,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"5 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"DiscoveryAsset":{"type":"object","discriminator":"","properties":{"address":{"type":"string","example":"12.83.99.203","description":"The IP address of a discovered asset.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"desktop-27.acme.com","description":"The host name of a discovered asset.","readOnly":true}},"description":""},"DiscoveryConnection":{"type":"object","discriminator":"","properties":{"accessKeyId":{"type":"string","example":"","description":"The AWS credential access key identifier (only used for the AWS connection)."},"address":{"type":"string","example":"","description":"${discovery.connection.address}"},"arn":{"type":"string","example":"","description":"The AWS credential ARN (only used for the AWS connection)."},"awsSessionName":{"type":"string","example":"","description":"The AWS credential session name (only used for the AWS connection)."},"connectionType":{"type":"string","example":"","description":"The type of the discovery connection."},"eventSource":{"type":"string","example":"","description":"The event source type to use."},"exchangeServerHostname":{"type":"string","example":"","description":"The hostname of the exchange server to connect to."},"exchangeUser":{"type":"string","example":"","description":"The username used to connect to the exchange server."},"folderPath":{"type":"string","example":"","description":"The folder path to pull logs from."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the discovery connection.","readOnly":true},"ldapServer":{"type":"string","example":"","description":"The LDAP server to connect to."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Connection 1","description":"The discovery connection name."},"port":{"type":"integer","format":"int32","example":"","description":"The address used to connect to the discovery connection source."},"protocol":{"type":"string","example":"","description":"The protocol used to connect to the discovery connection source."},"region":{"type":"string","example":"","description":"The AWS region (only used for the AWS connection)."},"scanEngineIsInsideAWS":{"type":"boolean","example":false,"description":"Flag denoting whether the scan engine is in AWS, this is used for AWS discovery connections for scanning purposes (only used for the AWS connection)."},"secretAccessKey":{"type":"string","example":"","description":"The AWS credential secret access key (only used for the AWS connection)."},"status":{"type":"string","example":"","description":"The status of the discovery connection."},"username":{"type":"string","example":"","description":"The username used to authenticate to the discovery connection source."},"winRMServer":{"type":"string","example":"","description":"The WinRM server to connect to. "}},"description":""},"DiscoverySearchCriteria":{"type":"object","discriminator":"","properties":{"connectionType":{"type":"string","example":"","description":"The type of discovery connection configured for the site. This property only applies to dynamic sites.","enum":["activesync-ldap","activesync-office365","activesync-powershell","aws","dhcp","sonar","vsphere"]},"filters":{"type":"array","description":"Filters used to match assets from a discovery connection. See Discovery Connection Search Criteria for more information on the structure and format.","items":{"$ref":"#/definitions/SwaggerDiscoverySearchCriteriaFilter"}},"match":{"type":"string","example":"all","description":"Operator to determine how to match filters. `all` requires that all filters match for an asset to be included. `any` requires only one filter to match for an asset to be included.","enum":["any","all"]}},"description":""},"DiskFree":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":166532222976,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"155.1 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"DiskInfo":{"type":"object","discriminator":"","properties":{"free":{"example":"","description":"Available disk space.","$ref":"#/definitions/DiskFree"},"installation":{"example":"","description":"Details regarding the size of disk used by the console installation.","$ref":"#/definitions/InstallSize"},"total":{"example":"","description":"Total disk space.","$ref":"#/definitions/DiskTotal"}},"description":""},"DiskTotal":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":499004735488,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"464.7 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"DynamicSite":{"type":"object","required":["id"],"discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the discovery connection."}},"description":""},"EnginePool":{"type":"object","required":["id","name"],"discriminator":"","properties":{"engines":{"type":"array","description":"The identifiers of the scan engines in the engine pool.","items":{"type":"integer","format":"int32"}},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the scan engine."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Corporate Scan Engine 001","description":"The name of the scan engine."}},"description":""},"EnvironmentProperties":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"properties":{"type":"object","example":"","description":"Key-value pairs for system and environment properties that are currently defined."}},"description":""},"Error":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["100","101","102","103","200","201","202","203","204","205","206","207","208","226","300","301","302","303","304","305","307","308","400","401","402","403","404","405","406","407","408","409","410","411","412","413","414","415","416","417","418","419","420","421","422","423","424","426","428","429","431","500","501","502","503","504","505","506","507","508","509","510","511"]}},"description":""},"ExceptionScope":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the vulnerability to which the exception applies."},"key":{"type":"string","example":"","description":"If the scope type is `\"Instance\"`, an optional key to discriminate the instance the exception applies to."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"port":{"type":"integer","format":"int32","example":"","description":"If the scope type is `\"Instance\"` and the vulnerability is detected on a service, the port on which the exception applies."},"type":{"type":"string","example":"","description":"The type of the exception scope. One of: `\"Global\"`, `\"Site\"`, `\"Asset\"`, `\"Asset Group\"`, `\"Instance\"`"},"vulnerability":{"type":"string","example":"","description":"The identifier of the vulnerability to which the exception applies."}},"description":""},"ExcludedAssetGroups":{"type":"object","discriminator":"","properties":{"assetGroupIDs":{"type":"array","description":"List of asset group identifiers. Each element is an integer.","items":{"type":"integer","format":"int32"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"ExcludedScanTargets":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","items":{"type":"string"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"Exploit":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":4924,"description":"The identifier of the exploit."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"skillLevel":{"type":"string","example":"expert","description":"The level of skill required to use the exploit.","enum":["novice","intermediate","expert"]},"source":{"example":"","description":"Details about where the exploit is defined.","$ref":"#/definitions/ExploitSource"},"title":{"type":"string","example":"Microsoft IIS WebDav ScStoragePathFromUrl Overflow","description":"The title (short summary) of the exploit."}},"description":""},"ExploitSource":{"type":"object","discriminator":"","properties":{"key":{"type":"string","example":"exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"The identifier of the exploit in the source library."},"link":{"example":"","description":"${exploit.source.link.description}","$ref":"#/definitions/ExploitSourceLink"},"name":{"type":"string","example":"metasploit","description":"The source library of the exploit, typically the name of the vendor that maintains and/or defined the exploit.","enum":["metasploit","exploitdb"]}},"description":""},"ExploitSourceLink":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"http://www.metasploit.com/modules/exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"The hypertext reference for the exploit source."},"id":{"type":"string","example":"exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"Hypermedia link to the destination of the exploit source."},"rel":{"type":"string","example":"Source","description":"The relation of the hypermedia link, `\"Source\"`."}},"description":""},"Features":{"type":"object","discriminator":"","properties":{"adaptiveSecurity":{"type":"boolean","example":false,"description":"Whether Adaptive Security features are available."},"agents":{"type":"boolean","example":true,"description":"Whether the use of agents is allowed."},"dynamicDiscovery":{"type":"boolean","example":true,"description":"Whether dynamic discovery sources may be used."},"earlyAccess":{"type":"boolean","example":false,"description":"Whether early-access features are available prior to general availability."},"enginePool":{"type":"boolean","example":true,"description":"Whether scan engine pools may be used."},"insightPlatform":{"type":"boolean","example":true,"description":"Whether the usage of the Insight Platform is allowed."},"mobile":{"type":"boolean","example":true,"description":"Whether mobile features are allowed."},"multitenancy":{"type":"boolean","example":false,"description":"Whether multitenancy is allowed."},"policyEditor":{"type":"boolean","example":true,"description":"Whether the editing of policies is allowed."},"policyManager":{"type":"boolean","example":true,"description":"Whether the policy manager is allowed."},"remediationAnalytics":{"type":"boolean","example":true,"description":"Whether Remediation Analytics features are available."},"reporting":{"example":"","description":"The reporting features available in the license.","$ref":"#/definitions/LicenseReporting"},"scanning":{"example":"","description":"The scanning features available in the license.","$ref":"#/definitions/LicenseScanning"}},"description":""},"File":{"type":"object","required":["name","type"],"discriminator":"","properties":{"attributes":{"type":"array","description":"Attributes detected on the file.","items":{"$ref":"#/definitions/Configuration"}},"name":{"type":"string","example":"ADMIN$","description":"The name of the file."},"size":{"type":"integer","format":"int64","example":-1,"description":"The size of the regular file (in bytes). If the file is a directory, no value is returned."},"type":{"type":"string","example":"directory","description":"The type of the file.","enum":["file","directory"]}},"description":""},"Fingerprint":{"type":"object","discriminator":"","properties":{"description":{"type":"string","example":"Ubuntu libexpat1 2.1.0-4ubuntu1.2","description":"The description of the matched fingerprint."},"family":{"type":"string","example":"","description":"The family of the matched fingerprint."},"product":{"type":"string","example":"libexpat1","description":"The product of the matched fingerprint."},"vendor":{"type":"string","example":"Ubuntu","description":"The description of the matched fingerprint."},"version":{"type":"string","example":"2.1.0-4ubuntu1.2","description":"The version of the matched fingerprint."}},"description":""},"GlobalScan":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":"","description":"The number of assets found in the scan."},"duration":{"type":"string","example":"","description":"The duration of the scan in ISO8601 format."},"endTime":{"type":"string","example":"","description":"The end time of the scan in ISO8601 format."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine."},"engineName":{"type":"string","example":"","description":"The name of the scan engine."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the scan."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"","description":"The reason for the scan status."},"scanName":{"type":"string","example":"","description":"The user-driven scan name for the scan."},"scanType":{"type":"string","example":"","description":"The scan type (automated, manual, scheduled). "},"siteId":{"type":"integer","format":"int32"},"siteName":{"type":"string"},"startTime":{"type":"string","example":"","description":"The start time of the scan in ISO8601 format."},"startedBy":{"type":"string","example":"","description":"The name of the user that started the scan."},"status":{"type":"string","example":"","description":"The scan status.","enum":["aborted","unknown","running","finished","stopped","error","paused","dispatched","integrating"]},"vulnerabilities":{"example":"","description":"The vulnerability synopsis of the scan.","$ref":"#/definitions/Vulnerabilities"}},"description":""},"GroupAccount":{"type":"object","required":["name"],"discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":972,"description":"The identifier of the user group."},"name":{"type":"string","example":"Administrators","description":"The name of the user group."}},"description":""},"HostName":{"type":"object","required":["name"],"discriminator":"","properties":{"name":{"type":"string","example":"corporate-workstation-1102DC.acme.com","description":"The host name (local or FQDN)."},"source":{"type":"string","example":"DNS","description":"The source used to detect the host name. `user` indicates the host name source is user-supplied (e.g. in a site target definition).","enum":["user","dns","netbios","dce","epsec","ldap","other"]}},"description":""},"IMetaData":{"type":"object","discriminator":"","properties":{"fieldName":{"type":"string"},"supportedOperators":{"type":"array","items":{"type":"string","enum":["IS","IS_NOT","IS_APPLIED","IS_NOT_APPLIED","IN","NOT_IN","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","LESS_THAN","GREATER_THAN","IN_RANGE","NOT_IN_RANGE","INCLUDE","DO_NOT_INCLUDE","ON_OR_BEFORE","ON_OR_AFTER","BETWEEN","EARLIER_THAN","WITHIN_THE_LAST","IS_EMPTY","IS_NOT_EMPTY","ARE","LIKE","NOT_LIKE"]}},"type":{"type":"string","enum":["NUMERIC","STRING","SET","SET_STRING","SINGLE","DATE"]}},"description":""},"IncludedAssetGroups":{"type":"object","discriminator":"","properties":{"assetGroupIDs":{"type":"array","description":"List of asset group identifiers. Each element is an integer.","items":{"type":"integer","format":"int32"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"IncludedScanTargets":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","items":{"type":"string"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"Info":{"type":"object","discriminator":"","properties":{"cpu":{"example":"","description":"Details regarding the host CPU.","$ref":"#/definitions/CPUInfo"},"disk":{"example":"","description":"Details regarding host disk usage.","$ref":"#/definitions/DiskInfo"},"distinguishedName":{"type":"string","example":"CN=Rapid7 Security Console/ O=Rapid7","description":"The distinguished name of the console."},"fqdn":{"type":"string","example":"server.acme.com","description":"The fully-qualified domain name of the local host the service is running on."},"host":{"type":"string","example":"SERVER","description":"The name of the local host the service is running on."},"ip":{"type":"string","example":"192.168.1.99","description":"The IP address of the local host the service is running on."},"jvm":{"example":"","description":"Details regarding the Java Virtual Machine.","$ref":"#/definitions/JVMInfo"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"memory":{"example":"","description":"Details regarding host memory usage.","$ref":"#/definitions/MemoryInfo"},"operatingSystem":{"type":"string","example":"Ubuntu Linux 16.04","description":"The operating system of the host the service is running on."},"serial":{"type":"string","example":"729F31B1C92F3C91DFA8A649F4D5C883C269BD45","description":"The serial number of the console."},"superuser":{"type":"boolean","example":true,"description":"Whether the service is running a super-user."},"user":{"type":"string","example":"root","description":"The user running the service."},"version":{"example":"","description":"Details regarding the version of the installation.","$ref":"#/definitions/VersionInfo"}},"description":""},"InstallSize":{"type":"object","discriminator":"","properties":{"backups":{"example":"","description":"The disk space used by backups.","$ref":"#/definitions/BackupsSize"},"database":{"example":"","description":"The disk space used by the database.","$ref":"#/definitions/DatabaseSize"},"directory":{"example":"","description":"The installation directory.","$ref":"#/definitions/File"},"reports":{"example":"","description":"The disk space used by reports.","$ref":"#/definitions/ReportSize"},"scans":{"example":"","description":"The disk space used by scans.","$ref":"#/definitions/ScanSize"},"total":{"example":"","description":"Total disk space used by the installation.","$ref":"#/definitions/InstallationTotalSize"}},"description":""},"InstallationTotalSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":12125933077,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"11.3 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"InternalServerError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"500","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["500"]}},"description":""},"JVMInfo":{"type":"object","discriminator":"","properties":{"name":{"type":"string","example":"OpenJDK 64-Bit Server VM","description":"The name of the Java Virtual Machine."},"startTime":{"type":"string","example":"2018-02-13T20:35:35.076Z","description":"The date and time the Java Virtual Machine last started."},"uptime":{"type":"string","example":"PT8H21M7.978S","description":"Total up-time of the Java Virtual Machine, in ISO 8601 format. For example: `\"PT1H4M24.214S\"`."},"vendor":{"type":"string","example":"Azul Systems, Inc.","description":"The vendor of the Java Virtual Machine."},"version":{"type":"string","example":"25.102-b14","description":"The version of the Java Virtual Machine."}},"description":""},"JsonNode":{"type":"object","discriminator":"","properties":{"array":{"type":"boolean"},"bigDecimal":{"type":"boolean"},"bigInteger":{"type":"boolean"},"binary":{"type":"boolean"},"boolean":{"type":"boolean"},"containerNode":{"type":"boolean"},"double":{"type":"boolean"},"float":{"type":"boolean"},"floatingPointNumber":{"type":"boolean"},"int":{"type":"boolean"},"integralNumber":{"type":"boolean"},"long":{"type":"boolean"},"missingNode":{"type":"boolean"},"nodeType":{"type":"string","enum":["ARRAY","BINARY","BOOLEAN","MISSING","NULL","NUMBER","OBJECT","POJO","STRING"]},"null":{"type":"boolean"},"number":{"type":"boolean"},"object":{"type":"boolean"},"pojo":{"type":"boolean"},"short":{"type":"boolean"},"textual":{"type":"boolean"},"valueNode":{"type":"boolean"}},"description":""},"License":{"type":"object","discriminator":"","properties":{"edition":{"type":"string","example":"InsightVM","description":"The edition of the product."},"evaluation":{"type":"boolean","example":false,"description":"Whether the license is a time-restricted evaluation."},"expires":{"type":"string","example":"2018-12-31T23:59:59.999Z","description":"The date and time the license expires."},"features":{"example":"","description":"The features available in the license.","$ref":"#/definitions/Features"},"limits":{"example":"","description":"The limits of the license.","$ref":"#/definitions/LicenseLimits"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"perpetual":{"type":"boolean","example":false,"description":"Whether the license is perpetual."},"status":{"type":"string","example":"Activated","description":"The status of the license.","enum":["Activated","Unlicensed","Expired","Evaluation Mode","Revoked","Unknown"]}},"description":""},"LicenseLimits":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":100000,"description":"The maximum number of assets that can be assessed."},"assetsWithHostedEngine":{"type":"integer","format":"int32","example":1000,"description":"The maximum number of assets that may be scanned with the hosted scan engine."},"scanEngines":{"type":"integer","format":"int32","example":100,"description":"The maximum number of scan engines that may be used."},"users":{"type":"integer","format":"int32","example":1000,"description":"The maximum number of users allowed."}},"description":""},"LicensePolicyScanning":{"type":"object","discriminator":"","properties":{"benchmarks":{"example":"","description":"The benchmarks available to policy scan.","$ref":"#/definitions/LicensePolicyScanningBenchmarks"},"scanning":{"type":"boolean","example":true,"description":"Whether policy scanning is allowed."}},"description":""},"LicensePolicyScanningBenchmarks":{"type":"object","discriminator":"","properties":{"cis":{"type":"boolean","example":true,"description":"Whether policy scanning for CIS benchmarks is allowed."},"custom":{"type":"boolean","example":true,"description":"Whether custom benchmarks can be used during scanning."},"disa":{"type":"boolean","example":true,"description":"Whether policy scanning for DISA benchmarks is allowed."},"fdcc":{"type":"boolean","example":true,"description":"Whether policy scanning for FDCC benchmarks is allowed."},"usgcb":{"type":"boolean","example":true,"description":"Whether policy scanning for USGCB benchmarks is allowed."}},"description":""},"LicenseReporting":{"type":"object","discriminator":"","properties":{"advanced":{"type":"boolean","example":true,"description":"Whether advanced reporting is available."},"customizableCSVExport":{"type":"boolean","example":true,"description":"Whether customizable CSV Export is available."},"pci":{"type":"boolean","example":true,"description":"Whether PCI reporting is available."}},"description":""},"LicenseScanning":{"type":"object","discriminator":"","properties":{"discovery":{"type":"boolean","example":true,"description":"Whether discovery scanning may be used."},"policy":{"example":"true","description":"Details as to whether policy scanning and what benchmarks are available.","$ref":"#/definitions/LicensePolicyScanning"},"scada":{"type":"boolean","example":true,"description":"Whether SCADA scanning may be used."},"virtual":{"type":"boolean","example":true,"description":"Whether virtual scanning may be used."},"webApplication":{"type":"boolean","example":true,"description":"Whether web scanning may be used."}},"description":""},"Link":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"https://hostname:3780/api/3/...","description":"A hypertext reference, which is either a URI (see RFC 3986) or URI template (see RFC 6570). "},"rel":{"type":"string","example":"self","description":"The link relation type. This value is one from the Link Relation Type Registry or is the type of resource being linked to."}},"description":""},"Links":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"LocalePreferences":{"type":"object","discriminator":"","properties":{"default":{"type":"string","example":"","description":"The default language to use. The format is a IETF BCP 47 language tag."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"reports":{"type":"string","example":"","description":"The language to use to generate reports. The format is a IETF BCP 47 language tag."}},"description":""},"MalwareKit":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":152,"description":"The identifier of the malware kit."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Alpha Pack","description":"The name of the malware kit."},"popularity":{"type":"string","example":"Rare","description":"The name of the malware kit. One of: `\"Rare\"`, `\"Uncommon\"`, `\"Occasional\"`, `\"Common\"`, `\"Popular\"`, `\"Favored\"`, `\"Unknown\"`"}},"description":""},"MatchedSolution":{"type":"object","discriminator":"","properties":{"additionalInformation":{"example":"","description":"Additional information or resources that can assist in applying the remediation.","$ref":"#/definitions/AdditionalInformation"},"appliesTo":{"type":"string","example":"libexpat1 on Ubuntu Linux","description":"The systems or software the solution applies to."},"confidence":{"type":"string","example":"","description":"The confidence of the matching process for the solution.","enum":["exact","partial","none"]},"estimate":{"type":"string","example":"PT10M","description":"The estimated duration to apply the solution, in ISO 8601 format. For example: `\"PT5M\"`."},"id":{"type":"string","example":"ubuntu-upgrade-libexpat1","description":"The identifier of the solution."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"matches":{"type":"array","description":"The raw matches that were performed in order to select the best solution(s).","items":{"$ref":"#/definitions/SolutionMatch"}},"steps":{"example":"","description":"The steps required to remediate the vulnerability.","$ref":"#/definitions/Steps"},"summary":{"example":"","description":"The summary of the solution.","$ref":"#/definitions/Summary"},"type":{"type":"string","example":"configuration","description":"The type of the solution. One of: `\"Configuration\"`, `\"Rollup patch\"`, `\"Patch\"`","enum":["configuration","rollup-patch","patch","unknown"]}},"description":""},"MemoryFree":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":45006848,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"42.9 MB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"MemoryInfo":{"type":"object","discriminator":"","properties":{"free":{"example":"","description":"Free memory.","$ref":"#/definitions/MemoryFree"},"total":{"example":"","description":"Total memory usage.","$ref":"#/definitions/MemoryTotal"}},"description":""},"MemoryTotal":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":17179869184,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"16 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"MetadataContainer":{"type":"object","discriminator":"","properties":{"fieldName":{"$ref":"#/definitions/IMetaData"}},"description":""},"NotFoundError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"404","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["404"]}},"description":""},"OperatingSystem":{"type":"object","discriminator":"","properties":{"architecture":{"type":"string","example":"x86","description":"The architecture of the operating system."},"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the operating system.","items":{"$ref":"#/definitions/Configuration"}},"cpe":{"example":"","description":"The Common Platform Enumeration (CPE) of the operating system.","$ref":"#/definitions/OperatingSystemCpe"},"description":{"type":"string","example":"Microsoft Windows Server 2008 Enterprise Edition SP1","description":"The description of the operating system (containing vendor, family, product, version and architecture in a single string)."},"family":{"type":"string","example":"Windows","description":"The family of the operating system."},"id":{"type":"integer","format":"int64","example":35,"description":"The identifier of the operating system."},"product":{"type":"string","example":"Windows Server 2008 Enterprise Edition","description":"The name of the operating system."},"systemName":{"type":"string","example":"Microsoft Windows","description":"A combination of vendor and family (with redundancies removed), suitable for grouping."},"type":{"type":"string","example":"Workstation","description":"The type of operating system."},"vendor":{"type":"string","example":"Microsoft","description":"The vendor of the operating system."},"version":{"type":"string","example":"SP1","description":"The version of the operating system."}},"description":""},"OperatingSystemCpe":{"type":"object","required":["part"],"discriminator":"","properties":{"edition":{"type":"string","example":"enterprise","description":"Edition-related terms applied by the vendor to the product. "},"language":{"type":"string","example":"","description":"Defines the language supported in the user interface of the product being described. The format is of the language tag adheres to RFC5646."},"other":{"type":"string","example":"","description":"Captures any other general descriptive or identifying information which is vendor- or product-specific and which does not logically fit in any other attribute value. "},"part":{"type":"string","example":"o","description":"A single letter code that designates the particular platform part that is being identified.","enum":["o","a","h"]},"product":{"type":"string","example":"windows_server_2008","description":"the most common and recognizable title or name of the product."},"swEdition":{"type":"string","example":"","description":"Characterizes how the product is tailored to a particular market or class of end users. "},"targetHW":{"type":"string","example":"","description":"Characterize the instruction set architecture on which the product operates. "},"targetSW":{"type":"string","example":"","description":"Characterize the software computing environment within which the product operates."},"update":{"type":"string","example":"sp1","description":"Vendor-specific alphanumeric strings characterizing the particular update, service pack, or point release of the product."},"v2.2":{"type":"string","example":"cpe:/o:microsoft:windows_server_2008:-:sp1:enterprise","description":"The full CPE string in the CPE 2.2 format."},"v2.3":{"type":"string","example":"cpe:2.3:o:microsoft:windows_server_2008:-:sp1:enterprise:*:*:*:*:*","description":"The full CPE string in the CPE 2.3 format."},"vendor":{"type":"string","example":"microsoft","description":"The person or organization that manufactured or created the product."},"version":{"type":"string","example":"-","description":"Vendor-specific alphanumeric strings characterizing the particular release version of the product."}},"description":""},"PCI":{"type":"object","discriminator":"","properties":{"adjustedCVSSScore":{"type":"integer","format":"int32","example":4,"description":"The CVSS score of the vulnerability, adjusted for PCI rules and exceptions, on a scale of 0-10."},"adjustedSeverityScore":{"type":"integer","format":"int32","example":3,"description":"The severity score of the vulnerability, adjusted for PCI rules and exceptions, on a scale of 0-10."},"fail":{"type":"boolean","example":true,"description":"Whether if present on a host this vulnerability would cause a PCI failure. `true` if \"status\" is `\"Fail\"`, `false` otherwise."},"specialNotes":{"type":"string","example":"","description":"Any special notes or remarks about the vulnerability that pertain to PCI compliance."},"status":{"type":"string","example":"Fail","description":"The PCI compliance status of the vulnerability. One of: `\"Pass\"`, `\"Fail\"`."}},"description":""},"PageInfo":{"type":"object","discriminator":"","properties":{"number":{"type":"integer","format":"int64","example":6,"description":"The index (zero-based) of the current page returned."},"size":{"type":"integer","format":"int64","example":10,"description":"The maximum size of the page returned."},"totalPages":{"type":"integer","format":"int64","example":13,"description":"The total number of pages available."},"totalResources":{"type":"integer","format":"int64","example":123,"description":"The total number of resources available across all pages."}},"description":""},"PageOf«AssetGroup»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/AssetGroup"}}},"description":""},"PageOf«AssetPolicyItem»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/AssetPolicyItem"}}},"description":""},"PageOf«AssetPolicy»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/AssetPolicy"}}},"description":""},"PageOf«Asset»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Asset"}}},"description":""},"PageOf«DiscoveryConnection»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/DiscoveryConnection"}}},"description":""},"PageOf«Exploit»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Exploit"}}},"description":""},"PageOf«GlobalScan»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/GlobalScan"}}},"description":""},"PageOf«MalwareKit»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/MalwareKit"}}},"description":""},"PageOf«OperatingSystem»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/OperatingSystem"}}},"description":""},"PageOf«PolicyAsset»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyAsset"}}},"description":""},"PageOf«PolicyControl»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyControl"}}},"description":""},"PageOf«PolicyGroup»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyGroup"}}},"description":""},"PageOf«PolicyItem»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyItem"}}},"description":""},"PageOf«PolicyOverride»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyOverride"}}},"description":""},"PageOf«PolicyRule»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/PolicyRule"}}},"description":""},"PageOf«Policy»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Policy"}}},"description":""},"PageOf«Report»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Report"}}},"description":""},"PageOf«Scan»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Scan"}}},"description":""},"PageOf«Site»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Site"}}},"description":""},"PageOf«Software»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Software"}}},"description":""},"PageOf«Tag»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Tag"}}},"description":""},"PageOf«User»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/User"}}},"description":""},"PageOf«VulnerabilityCategory»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityCategory"}}},"description":""},"PageOf«VulnerabilityCheck»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityCheck"}}},"description":""},"PageOf«VulnerabilityException»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityException"}}},"description":""},"PageOf«VulnerabilityFinding»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityFinding"}}},"description":""},"PageOf«VulnerabilityReference»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/VulnerabilityReference"}}},"description":""},"PageOf«Vulnerability»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"page":{"example":"","description":"The details of pagination indicating which page was returned, and how the remaining pages can be retrieved.","$ref":"#/definitions/PageInfo"},"resources":{"type":"array","description":"The page of resources returned.","items":{"$ref":"#/definitions/Vulnerability"}}},"description":""},"Policy":{"type":"object","discriminator":"","properties":{"enabled":{"type":"array","description":"The identifiers of the policies enabled to be checked during a scan. No policies are enabled by default.","items":{"type":"integer","format":"int64"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"recursiveWindowsFSSearch":{"type":"boolean","example":false,"description":"Whether recursive windows file searches are enabled, if your internal security practices require this capability. Recursive file searches can increase scan times by several hours, depending on the number of files and other factors, so this setting is disabled for Windows systems by default. Defaults to `false`."},"storeSCAP":{"type":"boolean","example":false,"description":"Whether Asset Reporting Format (ARF) results are stored. If you are required to submit reports of your policy scan results to the U.S. government in ARF for SCAP certification, you will need to store SCAP data so that it can be exported in this format. Note that stored SCAP data can accumulate rapidly, which can have a significant impact on file storage. Defaults to `false`."}},"description":""},"PolicyAsset":{"type":"object","discriminator":"","properties":{"hostname":{"type":"string","example":"","description":"The primary host name (local or FQDN) of the asset."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the asset."},"ip":{"type":"string","example":"","description":"The primary IPv4 or IPv6 address of the asset."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"os":{"example":"","description":"The full description of the operating system of the asset.","$ref":"#/definitions/OperatingSystem"},"status":{"type":"string","example":"","description":"The overall compliance status of the asset. ","enum":["PASS","FAIL","NOT_APPLICABLE"]}},"description":""},"PolicyBenchmark":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy's benchmark."},"title":{"type":"string","example":"","description":"The title of the policy benchmark."},"version":{"type":"string","example":"","description":"The version number of the benchmark that includes the policy."}},"description":""},"PolicyControl":{"type":"object","discriminator":"","properties":{"cceItemId":{"type":"string","example":"","description":"The identifier of the CCE item."},"ccePlatform":{"type":"string","example":"","description":"The platform of the CCE."},"controlName":{"type":"string","example":"","description":"The name of the control mapping."},"id":{"type":"string","example":"","description":"The textual representation of the control identifier."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"publishedDate":{"type":"integer","format":"int64","example":"","description":"The published date of the control mapping."}},"description":""},"PolicyGroup":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"benchmark":{"example":"","description":"Information about the policy benchmark.","$ref":"#/definitions/PolicyBenchmark"},"description":{"type":"string","example":"","description":"A description of the policy group."},"id":{"type":"string","example":"","description":"The textual representation of the policy group identifier."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy group."},"policy":{"example":"","description":"Information about the policy.","$ref":"#/definitions/PolicyMetadataResource"},"scope":{"type":"string","example":"","description":"The textual representation of the policy group scope. Policy groups that are automatically available have `\"Built-in\"` scope, whereas policy groups created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy group.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"surrogateId":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy group."},"title":{"type":"string","example":"","description":"The title of the policy group as visible to the user."}},"description":""},"PolicyItem":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"description":{"type":"string","example":"","description":"A description of the policy rule or group."},"hasOverride":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has an active override applied to it. This field only applies to resources representing policy rules. "},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule or group."},"isUnscored":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule has a role of `\"unscored\"`. This field only applies to resources representing policy rules."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy rule or group."},"policy":{"example":"","description":"Information about the policy.","$ref":"#/definitions/PolicyMetadataResource"},"rules":{"example":"","description":"A summary of rule compliance for multiple policy rules. This field only applies to resources representing policy groups.","$ref":"#/definitions/PolicyRuleAssessmentResource"},"scope":{"type":"string","example":"","description":"The textual representation of the policy rule/group scope. Policy rules or groups that are automatically available have `\"Built-in\"` scope, whereas policy rules or groups created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy rule or group.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"title":{"type":"string","example":"","description":"The title of the policy rule, or group, as visible to the user."},"type":{"type":"string","example":"","description":"Indicates whether the resource represents either a policy rule or group.","enum":["rule","group"]}},"description":""},"PolicyMetadataResource":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the policy."},"title":{"type":"string","example":"","description":"The title of the policy as visible to the user."},"version":{"type":"string","example":"","description":"The version of the policy."}},"description":""},"PolicyOverride":{"type":"object","required":["scope","state","submit"],"discriminator":"","properties":{"expires":{"type":"string","example":"","description":"The date the policy override is set to expire. Date is represented in ISO 8601 format."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy override.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"review":{"example":"","description":"Details regarding the review and/or approval of the policy override.","readOnly":true,"$ref":"#/definitions/PolicyOverrideReviewer"},"scope":{"example":"","description":"The scope of the policy override. Indicates which assets' policy compliance results are to be affected by the override.","$ref":"#/definitions/PolicyOverrideScope"},"state":{"type":"string","example":"","description":"The state of the policy override. Can be one of the following values: \n| Value | Description | Affects Compliance Results | \n| ---------------- | ----------------------------------------------------------------------------------- |:--------------------------:| \n| `\"deleted\"` | The policy override has been deleted. | | \n| `\"expired\"` | The policy override had an expiration date and it has expired. | | \n| `\"approved\"` | The policy override was submitted and approved. | ✓ | \n| `\"rejected\"` | The policy override was rejected by the reviewer. | | \n| `\"under-review\"` | The policy override was submitted but not yet approved or rejected by the reviewer. | | \n"},"submit":{"example":"","description":"Details regarding the submission of the policy override.","$ref":"#/definitions/PolicyOverrideSubmitter"}},"description":""},"PolicyOverrideReviewer":{"type":"object","discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the reviewer detailing the review. Cannot exceed 1024 characters.","readOnly":true},"date":{"type":"string","example":"","description":"The date the review took place.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The identifier of the user that reviewed the policy override.","readOnly":true},"user":{"type":"integer","format":"int32","example":"","description":"The login name of the user that reviewed the policy override.","readOnly":true}},"description":""},"PolicyOverrideScope":{"type":"object","required":["newResult","rule","type"],"discriminator":"","properties":{"asset":{"type":"integer","format":"int64","example":"","description":"The identifier of the asset whose compliance results are to be overridden. Property is required if the property `scope` is set to either `\"specific-asset\"` or `\"specific-asset-until-next-scan\"`."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"newResult":{"type":"string","example":"","description":"The new policy rule result after the override is applied.","enum":["pass","fail","not-applicable","fixed"]},"originalResult":{"type":"string","example":"","description":"The original policy rule result before the override was applied. This property only applies to overrides with a scope of either `\"specific-asset\"` or `\"specific-asset-until-next-scan\"`.","readOnly":true,"enum":["pass","fail","error","unknown","not-applicable","not-checked","not-selected","informational","fixed"]},"rule":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule whose compliance results are to be overridden."},"type":{"type":"string","example":"","description":"The scope of assets affected by the policy override. Can be one of the following values: \n| Value | Description | \n| ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | \n| `\"all-assets\"` | Overrides the compliance result of all assets evaluated with the specified policy rule. | \n| `\"specific-asset\"` | Overrides the compliance result of a single asset evaluated with the specified policy rule. | \n| `\"specific-asset-until-next-scan\"` | Overrides the compliance result of a single asset evaluated with the specified policy rule until the next time asset is evaluated against that policy rule. | \n"}},"description":""},"PolicyOverrideSubmitter":{"type":"object","required":["comment"],"discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the submitter as to why the policy override was submitted. Cannot exceed 1024 characters."},"date":{"type":"string","example":"","description":"The date the policy override was submitted.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The login name of the user that submitted the policy override.","readOnly":true},"user":{"type":"integer","format":"int32","example":"","description":"The identifier of the user that submitted the policy override.","readOnly":true}},"description":""},"PolicyRule":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"A summary of asset compliance.","$ref":"#/definitions/AssetPolicyAssessment"},"benchmark":{"example":"","description":"Information about the policy benchmark.","$ref":"#/definitions/PolicyBenchmark"},"description":{"type":"string","example":"","description":"A description of the rule."},"id":{"type":"string","example":"","description":"The textual representation of the policy rule identifier."},"isCustom":{"type":"boolean","example":false,"description":"A flag indicating whether the policy rule is custom."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the rule."},"role":{"type":"string","example":"","description":"The role of the policy rule. It's value determines how it's results affect compliance.","enum":["full","unscored","unchecked"]},"scope":{"type":"string","example":"","description":"The textual representation of the policy rule scope. Policy rules that are automatically available have `\"Built-in\"` scope, whereas policy rules created by users have scope as `\"Custom\"`."},"status":{"type":"string","example":"","description":"The overall compliance status of the policy rule.","enum":["PASS","FAIL","NOT_APPLICABLE"]},"surrogateId":{"type":"integer","format":"int64","example":"","description":"The identifier of the policy rule."},"title":{"type":"string","example":"","description":"The title of the policy rule as visible to the user."}},"description":""},"PolicyRuleAssessmentResource":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"total":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules."},"totalFailed":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that are not compliant against all assets."},"totalNotApplicable":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that are not applicable against all assets."},"totalPassed":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that are compliant against all assets."},"unscored":{"type":"integer","format":"int32","example":"","description":"The total number of policy rules that have a role of `\"unscored\"`."}},"description":""},"PolicySummaryResource":{"type":"object","discriminator":"","properties":{"decreasedCompliance":{"type":"integer","format":"int32","example":"","description":"The total number of policies whose overall compliance has decreased between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets."},"increasedCompliance":{"type":"integer","format":"int32","example":"","description":"The total number of policies whose overall compliance has increased between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"numberOfPolicies":{"type":"integer","format":"int32","example":"","description":"The total number of policies available in the Security Console."},"overallCompliance":{"type":"number","format":"float","example":"","description":"The ratio of compliant rules to the total number of rules across all policies."},"scannedPolicies":{"type":"integer","format":"int32","example":"","description":"The total number of policies that were evaluated against assets and have applicable results. The assets considered in the calculation are based on the user's list of accessible assets."}},"description":""},"Privileges":{"type":"object","discriminator":"","properties":{"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","items":{"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}}},"description":""},"ReferenceWithEndpointIDLink":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"port":{"type":"integer","format":"int32","example":22,"description":"The port of the service."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]}},"description":""},"ReferenceWithReportIDLink":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":1,"description":"The identifier of the report instance."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«AlertID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«AssetID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«EngineID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«ScanScheduleID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«SiteID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«TagID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferenceWith«UserID,Link»":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the resource."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReferencesWith«AssetGroupID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«AssetID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int64"}}},"description":""},"ReferencesWith«EngineID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«ReferenceWithEndpointIDLink,ServiceLink»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/ServiceLink"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"$ref":"#/definitions/ReferenceWithEndpointIDLink"}}},"description":""},"ReferencesWith«SiteID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«SolutionNaturalID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«TagID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«UserID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int32"}}},"description":""},"ReferencesWith«VulnerabilityCheckID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«VulnerabilityCheckTypeID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«VulnerabilityNaturalID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"string"}}},"description":""},"ReferencesWith«WebApplicationID,Link»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"type":"integer","format":"int64"}}},"description":""},"RepeatResource":{"type":"object","required":["every","interval"],"discriminator":"","properties":{"dayOfWeek":{"type":"string","example":"","description":"The day of the week the scheduled task should repeat. This property only applies to schedules with a `every` value of `\"day-of-month\"`."},"every":{"type":"string","example":"date-of-month","description":"The frequency schedule repeats. Each value represents a different unit of time and is used in conjunction with the property `interval`. For example, a schedule can repeat hourly, daily, monthly, etc. The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| hour | Specifies the schedule repeats in hourly increments. | \n| day | Specifies the schedule repeats in daily increments. | \n| week | Specifies the schedule repeats in weekly increments. | \n| date-of-month | Specifies the schedule repeats nth day of the `interval` month. Requires the property `dateOfMonth` to be specified. For example, if `dateOfMonth` is `17` and the `interval` is `2`, then the schedule will repeat every 2 months on the 17th day of the month. | \n| day-of-month | Specifies the schedule repeats on a monthly interval but instead of a specific date being specified, the day of the week and week of the month are specified. Requires the properties `dayOfWeek` and `weekOfMonth` to be specified. For example, if `dayOfWeek` is `\"friday\"`, `weekOfMonth` is `3`, and the `interval` is `4`, then the schedule will repeat every 4 months on the 3rd Friday of the month. | \n"},"interval":{"type":"integer","format":"int32","example":1,"description":"The interval time the schedule should repeat. The is depends on the value set in `every`. For example, if the value in property `every` is set to `\"day\"` and `interval` is set to `2`, then the schedule will repeat every 2 days.","minimum":1},"lastDayOfMonth":{"type":"boolean","example":false,"description":"${schedule.repeat.last.day.of.month}"},"weekOfMonth":{"type":"integer","format":"int32","example":"","description":"The week of the month the scheduled task should repeat. For This property only applies to schedules with a `every` value of `\"day-of-month\"`. Each week of the month is counted in 7-day increments. For example, week 1 consists of days 1-7 of the month while week 2 consists of days 8-14 of the month and so forth.","minimum":1,"maximum":6}},"description":""},"RepeatSchedule":{"type":"object","required":["every","interval"],"discriminator":"","properties":{"dayOfWeek":{"type":"string","example":"","description":"The day of the week the scheduled task should repeat. This property only applies to schedules with a `every` value of `\"day-of-month\"`."},"every":{"type":"string","example":"date-of-month","description":"The frequency schedule repeats. Each value represents a different unit of time and is used in conjunction with the property `interval`. For example, a schedule can repeat hourly, daily, monthly, etc. The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| hour | Specifies the schedule repeats in hourly increments. | \n| day | Specifies the schedule repeats in daily increments. | \n| week | Specifies the schedule repeats in weekly increments. | \n| date-of-month | Specifies the schedule repeats nth day of the `interval` month. Requires the property `dateOfMonth` to be specified. For example, if `dateOfMonth` is `17` and the `interval` is `2`, then the schedule will repeat every 2 months on the 17th day of the month. | \n| day-of-month | Specifies the schedule repeats on a monthly interval but instead of a specific date being specified, the day of the week and week of the month are specified. Requires the properties `dayOfWeek` and `weekOfMonth` to be specified. For example, if `dayOfWeek` is `\"friday\"`, `weekOfMonth` is `3`, and the `interval` is `4`, then the schedule will repeat every 4 months on the 3rd Friday of the month. | \n"},"interval":{"type":"integer","format":"int32","example":1,"description":"The interval time the schedule should repeat. The is depends on the value set in `every`. For example, if the value in property `every` is set to `\"day\"` and `interval` is set to `2`, then the schedule will repeat every 2 days.","minimum":1},"lastDayOfMonth":{"type":"boolean"},"weekOfMonth":{"type":"integer","format":"int32","example":"","description":"The week of the month the scheduled task should repeat. For This property only applies to schedules with a `every` value of `\"day-of-month\"`. Each week of the month is counted in 7-day increments. For example, week 1 consists of days 1-7 of the month while week 2 consists of days 8-14 of the month and so forth.","minimum":1,"maximum":6}},"description":""},"Report":{"type":"object","discriminator":"","properties":{"bureau":{"type":"string","example":"Bureau","description":"The name of the bureau for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`."},"component":{"type":"string","example":"Component","description":"The name of the component for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`."},"database":{"example":"","description":"Configuration for database export. Only used when the format is `\"database-export\"`.","$ref":"#/definitions/ReportConfigDatabaseResource"},"email":{"example":"","description":"Email distribution settings for the report.","readOnly":true,"$ref":"#/definitions/ReportEmail"},"enclave":{"type":"string","example":"Enclave","description":"The name of the enclave for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`."},"filters":{"example":"","description":"Filters applied to the contents of the report. The supported filters for a report vary \nby format and template. \n \n
\n
categories Object \n
The vulnerability categories to include or exclude in the report. Only included or excluded may be specified, not both.
\n
\n
\n
\n
included Array[string] \n
The identifiers of the vulnerability categories to included in the report.
\n
\n
\n
excluded Array[string] \n
The identifiers of the vulnerability categories to exclude in the report.
\n
\n
\n
\n
severity string \n
\n\"all\" \n\"critical\" \n\"critical-and-severe\" \n
\n
The vulnerability severities to include in the report.
\n
\n
\n
statuses Array[string] \n
\n\"vulnerable\" \n\"vulnerable-version\" \n\"potentially-vulnerable\" \n\"vulnerable-and-validated\" \n
\n
The vulnerability statuses to include in the report. If \"vulnerable-and-validated\"
is selected \nno other values can be specified.\n
\n
\n
\n\nThe following filter elements may be defined for non-templatized report formats: \n| Format | Categories | Severity | Statuses | \n| ------------------------------------- |:--------------:|:----------:|:----------:| \n| `arf-xml` | | | | \n| `csv-export` | ✓ | ✓ | ✓ | \n| `cyberscope-xml` | | | | \n| `database-export` | | | | \n| `nexpose-simple-xml` | ✓ | ✓ | | \n| `oval-xml` | | | | \n| `qualys-xml` | ✓ | ✓ | | \n| `scap-xml` | ✓ | ✓ | | \n| `sql-query` | ✓ | ✓ | ✓ | \n| `xccdf-csv` | | | | \n| `xccdf-xml` | ✓ | ✓ | | \n| `xml-export` | ✓ | ✓ | ✓ | \n| `xml-export-v2` | ✓ | ✓ | ✓ | \n\nThe following filter elements may be defined for templatized report formats: \n| Template | Categories | Severity | Statuses | \n| --------------------------------------- |:--------------:|:----------:|:----------:| \n| `audit-report` | ✓ | ✓ | | \n| `baseline-comparison` | | | | \n| `basic-vulnerability-check-results` | ✓ | ✓ | ✓ | \n| `executive-overview` | | | | \n| `highest-risk-vulns` | | | | \n| `pci-attestation-v12` | | | | \n| `pci-executive-summary-v12` | | | | \n| `pci-vuln-details-v12` | | | | \n| `policy-details` | ✓ | ✓ | ✓ | \n| `policy-eval` | | | | \n| `policy-summary` | ✓ | ✓ | ✓ | \n| `prioritized-remediations` | ✓ | ✓ | ✓ | \n| `prioritized-remediations-with-details` | ✓ | ✓ | ✓ | \n| `r7-discovered-assets` | ✓ | ✓ | ✓ | \n| `r7-vulnerability-exceptions` | ✓ | ✓ | ✓ | \n| `remediation-plan` | ✓ | ✓ | | \n| `report-card` | ✓ | ✓ | | \n| `risk-scorecard` | ✓ | ✓ | ✓ | \n| `rule-breakdown-summary` | ✓ | ✓ | ✓ | \n| `top-policy-remediations` | ✓ | ✓ | ✓ | \n| `top-policy-remediations-with-details` | ✓ | ✓ | ✓ | \n| `top-riskiest-assets` | ✓ | ✓ | ✓ | \n| `top-vulnerable-assets` | ✓ | ✓ | ✓ | \n| `vulnerability-trends` | ✓ | ✓ | ✓ | \n","$ref":"#/definitions/ReportConfigFiltersResource"},"format":{"type":"string","example":"pdf","description":"The output format of the report. The format will restrict the available templates and parameters that can be specified."},"frequency":{"example":"","description":"The recurring frequency with which to generate the report.","$ref":"#/definitions/ReportFrequency"},"id":{"type":"integer","format":"int32","example":17,"description":"The identifier of the report.","readOnly":true},"language":{"type":"string","example":"en-US","description":"The locale (language) in which the report is generated"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Monthly Corporate Site Summary","description":"The name of the report."},"organization":{"type":"string","example":"Acme, Inc.","description":"The organization used for a XCCDF XML report. Only used when the format is `\"xccdf-xml\"`."},"owner":{"type":"integer","format":"int32","example":1,"description":"The identifier of the report owner."},"policy":{"type":"integer","format":"int64","example":789,"description":"The policy to report on. Only used when the format is `\"oval-xml\"`, `\"\"xccdf-csv\"`, or `\"xccdf-xml\"`."},"query":{"type":"string","example":"SELECT * FROM dim_asset ORDER BY ip_address ASC","description":"SQL query to run against the Reporting Data Model. Only used when the format is `\"sql-query\"`."},"scope":{"example":"","description":"The scope of the report. Scope is an object that has the following properties that vary by format and template: \n \n
\n
assets Array[integer <int32>] \n
The identifiers of the assets to report on.
\n
\n
\n
sites Array[integer <int32>] \n
The identifiers of the sites to report on.
\n
\n
\n
assetGroups Array[integer <int32>] \n
The identifiers of the asset to report on.
\n
\n
\n
tags Array[integer <int32>] \n
The identifiers of the tag to report on.
\n
\n
\n
scan integer <int32> \n
The identifier of the scan to report on.
\n
\n
\n\nThe following scope elements may be defined for non-templatized report formats: \n| Format | Assets | Sites | Asset Groups | Tags | Scan | \n| ------------------------------------- |:----------:|:-------:|:------------:|:-------:|:---------:| \n| `arf-xml` | ✓ | ✓ | ✓ | ✓ | | \n| `csv-export` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `cyberscope-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `database-export` | | ✓ | | | | \n| `nexpose-simple-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `oval-xml` | ✓ | ✓ | ✓ | ✓ | | \n| `qualys-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `scap-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `sql-query` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `xccdf-csv` | ✓ | | | | | \n| `xccdf-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `xml-export` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `xml-export-v2` | ✓ | ✓ | ✓ | ✓ | ✓ | \n\nThe following scope elements may be defined for templatized report formats: \n| Template | Assets | Sites | Asset Groups | Tags | Scan | \n| -----------------------------------------|:----------:|:-------:|:------------:|:-------:|:-------:| \n| `audit-report` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `baseline-comparison` | ✓ | ✓ | ✓ | ✓ | | \n| `basic-vulnerability-check-results` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `executive-overview` | ✓ | ✓ | ✓ | ✓ | | \n| `highest-risk-vulns` | ✓ | ✓ | ✓ | ✓ | | \n| `pci-attestation-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `pci-executive-summary-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `pci-vuln-details-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `policy-details` | ✓ | ✓ | ✓ | ✓ | | \n| `policy-eval` | ✓ | ✓ | ✓ | ✓ | | \n| `policy-summary` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `prioritized-remediations` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `prioritized-remediations-with-details` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `r7-discovered-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `r7-vulnerability-exceptions` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `remediation-plan` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `report-card` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `risk-scorecard` | ✓ | ✓ | ✓ | ✓ | | \n| `rule-breakdown-summary` | ✓ | ✓ | ✓ | ✓ | | \n| `top-policy-remediations` | ✓ | ✓ | ✓ | ✓ | | \n| `top-policy-remediations-with-details` | ✓ | ✓ | ✓ | ✓ | | \n| `top-riskiest-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `top-vulnerable-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | \n| `vulnerability-trends` | ✓ | ✓ | ✓ | ✓ | | \nIf a report supports specifying a scan as the scope and a scan is specified, no other scope elements may be defined. \nIn all other cases as many different types of supported scope elements can be specified in any combination. All \nreports except the `sql-query` format require at least one element to be specified as the scope.\n","$ref":"#/definitions/ReportConfigScopeResource"},"storage":{"example":"","description":"The additional storage location and path.","$ref":"#/definitions/ReportStorage"},"template":{"type":"string","example":"executive-overview","description":"The template for the report (only required if the format is templatized)."},"timezone":{"type":"string","example":"America/Los_Angeles","description":"The timezone the report generates in, such as `\"America/Los_Angeles\"`."},"users":{"type":"array","example":"7","description":"The identifiers of the users granted explicit access to the report.","items":{"type":"integer","format":"int32"}},"version":{"type":"string","example":"2.3.0","description":"The version of the report Data Model to report against. Only used when the format is `\"sql-query\"`."}},"description":""},"ReportConfigCategoryFilters":{"type":"object","discriminator":"","properties":{"excluded":{"type":"array","description":"The vulnerability categories to exclude. Defaults to no categories.","items":{"type":"string"}},"included":{"type":"array","description":"The vulnerability categories to include. Defaults to all categories.","items":{"type":"string"}},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}}},"description":""},"ReportConfigDatabaseCredentialsResource":{"type":"object","discriminator":"","properties":{"password":{"type":"string","example":"******","description":"${report.config.database.credential.password.description}","readOnly":true},"username":{"type":"string","example":"admin","description":"${report.config.database.credential.username.description}"}},"description":""},"ReportConfigDatabaseResource":{"type":"object","discriminator":"","properties":{"credentials":{"example":"","description":"${report.config.database.credentials.description}","readOnly":true,"$ref":"#/definitions/ReportConfigDatabaseCredentialsResource"},"host":{"type":"string","example":"database.acme.com","description":"The database server host to export to."},"name":{"type":"string","example":"database","description":"The name of the database to export to."},"port":{"type":"integer","format":"int32","example":3306,"description":"The database server port to export to."},"vendor":{"type":"string","example":"mysql","description":"The type of the database server.","enum":["oracle","mssql","mysql"]}},"description":""},"ReportConfigFiltersResource":{"type":"object","discriminator":"","properties":{"categories":{"example":"","description":"Vulnerability categories to include or exclude. Only `included` or `excluded` may be specified, but not both.","$ref":"#/definitions/ReportConfigCategoryFilters"},"severity":{"type":"string","example":"","description":"The vulnerability severities to include. Defaults to `all`.","enum":["all","critical","critical-and-severe"]},"statuses":{"type":"array","description":"The vulnerability statuses to include. Defaults to [ `vulnerable`, `vulnerable-version`, `potentially-vulnerable` ].","items":{"type":"string","enum":["vulnerable","vulnerable-version","potentially-vulnerable","vulnerable-and-validated"]}}},"description":""},"ReportConfigScopeResource":{"type":"object","discriminator":"","properties":{"assetGroups":{"type":"array","description":"${report.config.asset.groups.description}","items":{"type":"integer","format":"int32"}},"assets":{"type":"array","description":"${report.config.assets.description}","items":{"type":"integer","format":"int64"}},"scan":{"type":"integer","format":"int64","example":68,"description":"${report.config.scans.description}"},"sites":{"type":"array","description":"${report.config.sites.description}","items":{"type":"integer","format":"int32"}},"tags":{"type":"array","description":"${report.config.tags.description}","items":{"type":"integer","format":"int32"}}},"description":""},"ReportEmail":{"type":"object","discriminator":"","properties":{"access":{"type":"string","example":"zip","description":"The format to distribute the report in when sending to users who have explicit access to the report.","enum":["file","zip","url","none"]},"additional":{"type":"string","example":"file","description":"The format to distribute the report to additional recipients.","enum":["file","zip","none"]},"additionalRecipients":{"type":"array","description":"The email address of additional recipients to distribute the report to.","items":{"type":"string"}},"assetAccess":{"type":"boolean","example":true,"description":"${report.config.email.additional.asset.access.description}"},"owner":{"type":"string","example":"file","description":"The format to distribute the report to the owner.","enum":["file","url","zip","none"]},"smtp":{"example":"","description":"SMTP delivery settings.","$ref":"#/definitions/ReportEmailSmtp"}},"description":""},"ReportEmailSmtp":{"type":"object","discriminator":"","properties":{"global":{"type":"boolean","example":true,"description":"Whether to use global SMTP settings. If enabled, `sender` and `relay` may not be specified."},"relay":{"type":"string","example":"mail.acme.com","description":"SMTP relay host or IP address."},"sender":{"type":"string","example":"john_smith@acme.com","description":"SMTP sender address."}},"description":""},"ReportFilters":{"type":"object","discriminator":"","description":""},"ReportFrequency":{"type":"object","required":["repeat","start"],"discriminator":"","properties":{"nextRuntimes":{"type":"array","description":"List the next 10 dates in the future the schedule will launch. ","readOnly":true,"items":{"type":"string"}},"repeat":{"example":"","description":"Settings for repeating a scheduled task.","$ref":"#/definitions/RepeatSchedule"},"start":{"type":"string","example":"2018-03-01T04:31:56Z","description":"The scheduled start date and time. Date is represented in ISO 8601 format. Repeating schedules will determine the next schedule to begin based on this date and time."}},"description":""},"ReportInstance":{"type":"object","discriminator":"","properties":{"generated":{"type":"string","example":"2018-06-01T18:56:03Z","description":"The date the report finished generation."},"id":{"type":"integer","format":"int32","example":5,"description":"The identifier of the report instance."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"size":{"example":"","description":"The size of the report, uncompressed.","$ref":"#/definitions/ReportSize"},"status":{"type":"string","example":"complete","description":"The status of the report generation process.","enum":["aborted","failed","complete","running","unknown"]},"uri":{"type":"string","example":"https://hostname:3780/reports/...","description":"The URI of the report accessible through the web console. Refer to the `Download` relation hyperlink for a download URI."}},"description":""},"ReportScope":{"type":"object","discriminator":"","description":""},"ReportSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":24789050,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"23.6 MB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"ReportStorage":{"type":"object","discriminator":"","properties":{"location":{"type":"string","example":"monthly_reports/site/corporate","description":"The location to storage an additional copy of the report. This is a sub-path post-fixed to `$(install_dir)/nsc/reports/$(user)/`."},"path":{"type":"string","example":"$(install_dir)/nsc/reports/$(user)/monthly_reports/site/corporate","description":"The full path to the additional copy storage location.","readOnly":true}},"description":""},"ReportTemplate":{"type":"object","discriminator":"","properties":{"builtin":{"type":"boolean","example":true,"description":"Whether the report template is builtin."},"description":{"type":"string","example":"Provides comprehensive details about discovered assets, vulnerabilities, and users.","description":"The description of the report template."},"id":{"type":"string","example":"audit-report","description":"The identifier of the report template;"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Audit Report","description":"The name of the report template."},"sections":{"type":"array","description":"The sections that comprise the `document` report template.","items":{"type":"string"}},"type":{"type":"string","example":"document","description":"The type of the report template. `document` is a templatized, typically printable, report that has various sections of content. `export` is data-oriented output, typically CSV. `file` is a printable report template using a report template file.","enum":["document","export","file"]}},"description":""},"Resources«Alert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Alert"}}},"description":""},"Resources«AssetGroup»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AssetGroup"}}},"description":""},"Resources«AssetTag»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AssetTag"}}},"description":""},"Resources«AuthenticationSource»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AuthenticationSource"}}},"description":""},"Resources«AvailableReportFormat»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/AvailableReportFormat"}}},"description":""},"Resources«Configuration»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Configuration"}}},"description":""},"Resources«Database»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Database"}}},"description":""},"Resources«DiscoveryAsset»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","items":{"$ref":"#/definitions/DiscoveryAsset"}}},"description":""},"Resources«EnginePool»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/EnginePool"}}},"description":""},"Resources«File»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/File"}}},"description":""},"Resources«GroupAccount»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/GroupAccount"}}},"description":""},"Resources«MatchedSolution»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/MatchedSolution"}}},"description":""},"Resources«PolicyOverride»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/PolicyOverride"}}},"description":""},"Resources«ReportInstance»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ReportInstance"}}},"description":""},"Resources«ReportTemplate»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ReportTemplate"}}},"description":""},"Resources«Role»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Role"}}},"description":""},"Resources«ScanEngine»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ScanEngine"}}},"description":""},"Resources«ScanSchedule»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ScanSchedule"}}},"description":""},"Resources«ScanTemplate»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/ScanTemplate"}}},"description":""},"Resources«SharedCredential»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SharedCredential"}}},"description":""},"Resources«SiteCredential»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SiteCredential"}}},"description":""},"Resources«SiteSharedCredential»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SiteSharedCredential"}}},"description":""},"Resources«SmtpAlert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SmtpAlert"}}},"description":""},"Resources«SnmpAlert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SnmpAlert"}}},"description":""},"Resources«Software»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Software"}}},"description":""},"Resources«Solution»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Solution"}}},"description":""},"Resources«SonarQuery»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SonarQuery"}}},"description":""},"Resources«SyslogAlert»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/SyslogAlert"}}},"description":""},"Resources«Tag»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/Tag"}}},"description":""},"Resources«UserAccount»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/UserAccount"}}},"description":""},"Resources«User»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/User"}}},"description":""},"Resources«VulnerabilityValidationResource»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/VulnerabilityValidationResource"}}},"description":""},"Resources«WebFormAuthentication»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/WebFormAuthentication"}}},"description":""},"Resources«WebHeaderAuthentication»":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The resources returned.","items":{"$ref":"#/definitions/WebHeaderAuthentication"}}},"description":""},"Review":{"type":"object","discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the reviewer detailing the review. ","readOnly":true},"date":{"type":"string","example":"","description":"The date and time the review took place.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The identifier of the user that reviewed the vulnerability exception.","readOnly":true},"user":{"type":"integer","format":"int32","example":"","description":"The login name of the user that reviewed the vulnerability exception.","readOnly":true}},"description":""},"RiskModifierSettings":{"type":"object","discriminator":"","properties":{"high":{"type":"number","format":"double","example":1.5,"description":"${settings.risk.modifier.high}"},"low":{"type":"number","format":"double","example":0.75,"description":"${settings.risk.modifier.low}"},"medium":{"type":"number","format":"double","example":1.0,"description":"${settings.risk.modifier.medium}"},"veryHigh":{"type":"number","format":"double","example":2.0,"description":"${settings.risk.modifier.veryHigh}"},"veryLow":{"type":"number","format":"double","example":0.5,"description":"${settings.risk.modifier.veryLow}"}},"description":""},"RiskSettings":{"type":"object","discriminator":"","properties":{"adjustWithCriticality":{"type":"boolean","example":true,"description":"Whether risk is adjusted using criticality tags."},"criticalityModifiers":{"example":"","description":"If `adjustWithCriticality` is enabled, details the risk modifiers by criticality tag.","$ref":"#/definitions/RiskModifierSettings"},"model":{"type":"string","example":"real_risk","description":"The risk model used to compute risk."}},"description":""},"Role":{"type":"object","required":["description","id","name"],"discriminator":"","properties":{"description":{"type":"string","example":"","description":"The description of the role."},"id":{"type":"string","example":"","description":"The identifier of the role."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The human readable name of the role."},"privileges":{"type":"array","description":"The privileges granted to the role.","items":{"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}}},"description":""},"Scan":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":"","description":"The number of assets found in the scan."},"duration":{"type":"string","example":"","description":"The duration of the scan in ISO8601 format."},"endTime":{"type":"string","example":"","description":"The end time of the scan in ISO8601 format."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine."},"engineName":{"type":"string","example":"","description":"The name of the scan engine."},"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the scan."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"","description":"The reason for the scan status."},"scanName":{"type":"string","example":"","description":"The user-driven scan name for the scan."},"scanType":{"type":"string","example":"","description":"The scan type (automated, manual, scheduled). "},"startTime":{"type":"string","example":"","description":"The start time of the scan in ISO8601 format."},"startedBy":{"type":"string","example":"","description":"The name of the user that started the scan."},"status":{"type":"string","example":"","description":"The scan status.","enum":["aborted","unknown","running","finished","stopped","error","paused","dispatched","integrating"]},"vulnerabilities":{"example":"","description":"The vulnerability synopsis of the scan.","$ref":"#/definitions/Vulnerabilities"}},"description":""},"ScanEngine":{"type":"object","required":["address","id","name","port"],"discriminator":"","properties":{"address":{"type":"string","example":"corporate-scan-engine-001.acme.com","description":"The address the scan engine is hosted."},"contentVersion":{"type":"string","example":"","description":"The content version of the scan engine.","readOnly":true},"enginePools":{"type":"array","description":"A list of identifiers of engine pools this engine is included in.","readOnly":true,"items":{"type":"integer","format":"int32"}},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the scan engine."},"lastRefreshedDate":{"type":"string","example":"","description":"The date the engine was last refreshed. Date format is in ISO 8601.","readOnly":true},"lastUpdatedDate":{"type":"string","example":"","description":"The date the engine was last updated. Date format is in ISO 8601.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Corporate Scan Engine 001","description":"The name of the scan engine."},"port":{"type":"integer","format":"int32","example":40894,"description":"The port used by the scan engine to communicate with the Security Console."},"productVersion":{"type":"string","example":"","description":"The product version of the scan engine.","readOnly":true},"sites":{"type":"array","description":"A list of identifiers of each site the scan engine is assigned to.","items":{"type":"integer","format":"int32"}}},"description":""},"ScanEvents":{"type":"object","required":["failed","paused","started","stopped"],"discriminator":"","properties":{"failed":{"type":"boolean","example":false,"description":"Generates an alert when a scan fails. Default value is `false`."},"paused":{"type":"boolean","example":false,"description":"Generates an alert when a scan pauses. Default value is `false`."},"resumed":{"type":"boolean","example":false,"description":"Generates an alert when a scan resumes. Default value is `false`."},"started":{"type":"boolean","example":false,"description":"Generates an alert when a scan starts. Default value is `false`."},"stopped":{"type":"boolean","example":false,"description":"Generates an alert when a scan stops. Default value is `false`."}},"description":""},"ScanSchedule":{"type":"object","required":["enabled","onScanRepeat","start"],"discriminator":"","properties":{"assets":{"example":"","description":"Allows one or more assets defined within the site to be scanned for this scan schedule. This property is only supported for static sites. When this property is `null`, or not defined in schedule, then all assets defined in the static site will be scanned.","$ref":"#/definitions/ScheduledScanTargets"},"duration":{"type":"string","example":"","description":"Specifies the maximum duration the scheduled scan is allowed to run. Scheduled scans that do not complete within specified duration will be paused. The scan duration are represented by the format `\"P[n]DT[n]H[n]M\"`. In these representations, the [n] is replaced by a value for each of the date and time elements that follow the [n].The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| P | The duration designator. It must be placed at the start of the duration representation. | \n| D | The day designator that follows the value for the number of days. | \n| T | The time designator that precedes the time portion of the representation. | \n| H | The hour designator that follows the value for the number of hours. | \n| M | The minute designator that follows the value for the number of minutes. | \nFor example, `\"P5DT10H30M\"` represents a duration of \"5 days, 10 hours, and 30 minutes\". Each duration designator is optional; however, at least one must be specified and it must be preceded by the `\"P\"` designator. \n"},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the scan schedule is enabled."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan schedule."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"nextRuntimes":{"type":"array","description":"List the next 10 dates in the future the schedule will launch. ","readOnly":true,"items":{"type":"string"}},"onScanRepeat":{"type":"string","example":"","description":"Specifies the desired behavior of a repeating scheduled scan when the previous scan was paused due to reaching is maximum duration. The following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| restart-scan | Stops the previously-paused scan and launches a new scan if the previous scan did not complete within the specified duration. If the previous scheduled scan was not paused, then a new scan is launched. | \n| resume-scan | Resumes the previously-paused scan if the previous scan did not complete within the specified duration. If the previous scheduled scan was not paused, then a new scan is launched. | \n"},"repeat":{"example":"","description":"Settings for repeating a scheduled task.","$ref":"#/definitions/RepeatResource"},"scanEngineId":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine to be used for this scan schedule. If not set, the site's assigned scan engine will be used."},"scanName":{"type":"string","example":"","description":"A user-defined name for the scan launched by the schedule. If not explicitly set in the schedule, the scan name will be generated prior to the scan launching. Names must be unique."},"scanTemplateId":{"type":"string","example":"","description":"The identifier of the scan template to be used for this scan schedule. If not set, the site's assigned scan template will be used."},"start":{"type":"string","example":"2018-03-01T04:31:56Z","description":"The scheduled start date and time. Date is represented in ISO 8601 format. Repeating schedules will determine the next schedule to begin based on this date and time."}},"description":""},"ScanScope":{"type":"object","discriminator":"","properties":{"assets":{"example":"","description":"Specify assets to be included in site scans as well as assets to be excluded from site scans. If the property is defined, then at least one address or asset group must be specified for scanning. Property is required when creating a static site.","$ref":"#/definitions/StaticSite"},"connection":{"example":"","description":"Specify discovery connection settings for a dynamic site. Property is required when creating a dynamic site.","$ref":"#/definitions/DynamicSite"}},"description":""},"ScanSettings":{"type":"object","discriminator":"","properties":{"connectionTimeout":{"type":"string","example":"PT15S","description":"The connection timeout when establishing connections to remote scan engines, in ISO 8601 format. For example: `\"PT15S\"`."},"incremental":{"type":"boolean","example":true,"description":"Whether incremental scan results is enabled."},"maximumThreads":{"type":"integer","format":"int32","example":-1,"description":"The maximum number of scan threads to use in any scan. -1 means this is set by the scan template."},"readTimeout":{"type":"string","example":"PT15M","description":"The read timeout when establishing connections to remote scan engines, in ISO 8601 format. For example: `\"PT15M\"`."},"statusIdleTimeout":{"type":"string","example":"PT3M","description":"The idle timeout when checking the status of running scans, in ISO 8601 format. For example: `\"PT3M\"`."},"statusThreads":{"type":"integer","format":"int32","example":3,"description":"The number of threads to use when checking the status of running scans."}},"description":""},"ScanSize":{"type":"object","discriminator":"","properties":{"bytes":{"type":"integer","format":"int64","example":1370433223,"description":"The raw value in bytes."},"formatted":{"type":"string","example":"1.3 GB","description":"The value formatted in human-readable notation (e.g. GB, MB, KB, bytes)."}},"description":""},"ScanTargetsResource":{"type":"object","discriminator":"","properties":{"addresses":{"type":"array","description":"List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"ScanTemplate":{"type":"object","discriminator":"","properties":{"checks":{"example":"","description":"Settings for which vulnerability checks to run during a scan.
\nThe rules for inclusion of checks is as follows: \n \n- Enabled checks by category and by check type are included
\n- Disabled checks in by category and by check type are removed
\n- Enabled checks in by individual check are added (even if they are disabled in by category or check type)
\n- Disabled checks in by individual check are removed
\n- If unsafe is disabled, unsafe checks are removed
\n- If potential is disabled, potential checks are removed
\n","$ref":"#/definitions/ScanTemplateVulnerabilityChecks"},"database":{"example":"","description":"Settings for discovery databases.","$ref":"#/definitions/ScanTemplateDatabase"},"description":{"type":"string","example":"Performs a full network audit of all systems using only safe checks...","description":"A verbose description of the scan template.."},"discovery":{"example":"","description":"Discovery settings used during a scan.","$ref":"#/definitions/ScanTemplateDiscovery"},"discoveryOnly":{"type":"boolean","example":false,"description":"Whether only discovery is performed during a scan."},"enableWindowsServices":{"type":"boolean","example":false,"description":"Whether Windows services are enabled during a scan. Windows services will be temporarily reconfigured when this option is selected. Original settings will be restored after the scan completes, unless it is interrupted."},"enhancedLogging":{"type":"boolean","example":false,"description":"Whether enhanced logging is gathered during scanning. Collection of enhanced logs may greatly increase the disk space used by a scan."},"id":{"type":"string","example":"full-audit-without-web-spider","description":"The identifier of the scan template","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"maxParallelAssets":{"type":"integer","format":"int32","example":10,"description":"The maximum number of assets scanned simultaneously per scan engine during a scan."},"maxScanProcesses":{"type":"integer","format":"int32","example":10,"description":"The maximum number of scan processes simultaneously allowed against each asset during a scan."},"name":{"type":"string","example":"Full audit","description":"A concise name for the scan template."},"policy":{"example":"","description":"Policy configuration settings used during a scan.","$ref":"#/definitions/Policy"},"policyEnabled":{"type":"boolean","example":true,"description":"Whether policy assessment is performed during a scan."},"telnet":{"example":"","description":"Settings for interacting with the Telnet protocol.","$ref":"#/definitions/Telnet"},"vulnerabilityEnabled":{"type":"boolean","example":true,"description":"Whether vulnerability assessment is performed during a scan."},"web":{"example":"","description":"Web spider settings used during a scan.","$ref":"#/definitions/ScanTemplateWebSpider"},"webEnabled":{"type":"boolean","example":true,"description":"Whether web spidering and assessment are performed during a scan."}},"description":""},"ScanTemplateAssetDiscovery":{"type":"object","discriminator":"","properties":{"collectWhoisInformation":{"type":"boolean","example":false,"description":"Whether to query Whois during discovery. Defaults to `false`."},"fingerprintMinimumCertainty":{"type":"number","format":"double","example":0.16,"description":"The minimum certainty required for a fingerprint to be considered valid during a scan. Defaults to `0.16`.","minimum":0,"maximum":1},"fingerprintRetries":{"type":"integer","format":"int32","example":0,"description":"The number of fingerprinting attempts made to determine the operating system fingerprint. Defaults to `4`.","minimum":0,"maximum":1000},"ipFingerprintingEnabled":{"type":"boolean","example":true,"description":"Whether to fingerprint TCP/IP stacks for hardware, operating system and software information."},"sendArpPings":{"type":"boolean","example":true,"description":"Whether ARP pings are sent during asset discovery. Defaults to `true`."},"sendIcmpPings":{"type":"boolean","example":true,"description":"Whether ICMP pings are sent during asset discovery. Defaults to `false`."},"tcpPorts":{"type":"array","description":"TCP ports to send packets and perform discovery. Defaults to no ports.","items":{"type":"integer","format":"int32"}},"treatTcpResetAsAsset":{"type":"boolean","example":true,"description":"Whether TCP reset responses are treated as live assets. Defaults to `true`."},"udpPorts":{"type":"array","description":"UDP ports to send packets and perform discovery. Defaults to no ports.","items":{"type":"integer","format":"int32"}}},"description":""},"ScanTemplateDatabase":{"type":"object","discriminator":"","properties":{"db2":{"type":"string","example":"database","description":"Database name for DB2 database instance."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"oracle":{"type":"array","example":"default","description":"Database name (SID) for an Oracle database instance.","items":{"type":"string"}},"postgres":{"type":"string","example":"postgres","description":"Database name for PostgesSQL database instance."}},"description":""},"ScanTemplateDiscovery":{"type":"object","discriminator":"","properties":{"asset":{"example":"","description":"Asset discovery settings used during a scan.","$ref":"#/definitions/ScanTemplateAssetDiscovery"},"perfomance":{"example":"","description":"Discovery performance settings used during a scan.","$ref":"#/definitions/ScanTemplateDiscoveryPerformance"},"service":{"example":"","description":"Service discovery settings used during a scan.","$ref":"#/definitions/ScanTemplateServiceDiscovery"}},"description":""},"ScanTemplateDiscoveryPerformance":{"type":"object","discriminator":"","properties":{"packetRate":{"example":"","description":"The number of packets to send per second during scanning.","$ref":"#/definitions/ScanTemplateDiscoveryPerformancePacketsRate"},"parallelism":{"example":"","description":"The number of discovery connection requests to be sent to target host simultaneously. These settings has no effect if values have been set for `scanDelay`.","$ref":"#/definitions/ScanTemplateDiscoveryPerformanceParallelism"},"retryLimit":{"type":"integer","format":"int32","example":3,"description":"The maximum number of attempts to contact target assets. If the limit is exceeded with no response, the given asset is not scanned. Defaults to `3`.","minimum":1,"maximum":15},"scanDelay":{"example":"","description":"The duration to wait between sending packets to each target host during a scan.","$ref":"#/definitions/ScanTemplateDiscoveryPerformanceScanDelay"},"timeout":{"example":"","description":"The duration to wait between retry attempts.","$ref":"#/definitions/ScanTemplateDiscoveryPerformanceTimeout"}},"description":""},"ScanTemplateDiscoveryPerformancePacketsRate":{"type":"object","discriminator":"","properties":{"defeatRateLimit":{"type":"boolean","example":true,"description":"Whether defeat rate limit (defeat-rst-ratelimit) is enforced on the minimum packet setting, which can improve scan speed. If it is disabled, the minimum packet rate setting may be ignored when a target limits its rate of RST (reset) responses to a port scan. This can increase scan accuracy by preventing the scan from missing ports. Defaults to `true`."},"maximum":{"type":"integer","format":"int32","example":15000,"description":"The minimum number of packets to send each second during discovery attempts. Defaults to `0`.","minimum":0,"maximum":15000},"minimum":{"type":"integer","format":"int32","example":450,"description":"The minimum number of packets to send each second during discovery attempts. Defaults to `0`.","minimum":0,"maximum":15000}},"description":""},"ScanTemplateDiscoveryPerformanceParallelism":{"type":"object","discriminator":"","properties":{"maximum":{"type":"integer","format":"int32","example":0,"description":"The maximum number of discovery connection requests send in parallel. Defaults to `0`.","minimum":0,"maximum":1000},"minimum":{"type":"integer","format":"int32","example":0,"description":"The minimum number of discovery connection requests send in parallel. Defaults to `0`.","minimum":0,"maximum":1000}},"description":""},"ScanTemplateDiscoveryPerformanceScanDelay":{"type":"object","discriminator":"","properties":{"maximum":{"type":"string","example":"PT0S","description":"The minimum duration to wait between sending packets to each target host. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P30S` (30s). Defaults to `PT0S`."},"minimum":{"type":"string","example":"PT0S","description":"The maximum duration to wait between sending packets to each target host. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P30S` (30s). Defaults to `PT0S`."}},"description":""},"ScanTemplateDiscoveryPerformanceTimeout":{"type":"object","discriminator":"","properties":{"initial":{"type":"string","example":"PT0.5S","description":"The initial timeout to wait between retry attempts. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT0.5S`."},"maximum":{"type":"string","example":"PT3S","description":"The maximum time to wait between retries. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT3S`."},"minimum":{"type":"string","example":"PT0S","description":"The minimum time to wait between retries. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT0.5S`."}},"description":""},"ScanTemplateServiceDiscovery":{"type":"object","discriminator":"","properties":{"serviceNameFile":{"type":"string","example":"","description":"An optional file that lists each port and the service that commonly resides on it. If scans cannot identify actual services on ports, service names will be derived from this file in scan results. Defaults to empty."},"tcp":{"example":"","description":"TCP service discovery settings.","$ref":"#/definitions/ScanTemplateServiceDiscoveryTcp"},"udp":{"example":"","description":"UDP service discovery settings.","$ref":"#/definitions/ScanTemplateServiceDiscoveryUdp"}},"description":""},"ScanTemplateServiceDiscoveryTcp":{"type":"object","discriminator":"","properties":{"additionalPorts":{"type":"array","example":"3078,8000-8080","description":"Additional TCP ports to scan. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"excludedPorts":{"type":"array","example":"1024","description":"TCP ports to exclude from scanning. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"method":{"type":"string","example":"SYN","description":"The method of TCP discovery. Defaults to `SYN`.","enum":["SYN","SYN+RST","SYN+FIN","SYN+ECE","Full"]},"ports":{"type":"string","example":"well-known","description":"The TCP ports to scan. Defaults to `well-known`.","enum":["all","well-known","custom","none"]}},"description":""},"ScanTemplateServiceDiscoveryUdp":{"type":"object","discriminator":"","properties":{"additionalPorts":{"type":"array","example":"4020-4032","description":"Additional UDP ports to scan. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"excludedPorts":{"type":"array","example":"9899","description":"UDP ports to exclude from scanning. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty.","items":{"type":"object"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"ports":{"type":"string","example":"well-known","description":"The UDP ports to scan. Defaults to `well-known`.","enum":["all","well-known","custom","none"]}},"description":""},"ScanTemplateVulnerabilityCheckCategories":{"type":"object","discriminator":"","properties":{"disabled":{"type":"array","description":"The categories of vulnerability checks to disable during a scan.","items":{"type":"string"}},"enabled":{"type":"array","description":"The categories of vulnerability checks to enable during a scan.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"ScanTemplateVulnerabilityCheckIndividual":{"type":"object","discriminator":"","properties":{"disabled":{"type":"array","description":"The individual vulnerability checks to disable during a scan.","items":{"type":"string"}},"enabled":{"type":"array","description":"The individual vulnerability checks to enable during a scan.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"ScanTemplateVulnerabilityChecks":{"type":"object","discriminator":"","properties":{"categories":{"example":"","description":"The vulnerability check categories enabled or disabled during a scan.","$ref":"#/definitions/ScanTemplateVulnerabilityCheckCategories"},"correlate":{"type":"boolean","example":false,"description":"Whether an extra step is performed at the end of the scan where more trust is put in OS patch checks to attempt to override the results of other checks which could be less reliable."},"individual":{"example":"","description":"The individual vulnerability checks enabled or disabled during a scan.","$ref":"#/definitions/ScanTemplateVulnerabilityCheckIndividual"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"potential":{"type":"boolean","example":false,"description":"Whether checks that result in potential vulnerabilities are assessed during a scan."},"types":{"example":"","description":"The vulnerability check types enabled or disabled during a scan.","$ref":"#/definitions/VulnerabilityCheckType"},"unsafe":{"type":"boolean","example":false,"description":"Whether checks considered \"unsafe\" are assessed during a scan."}},"description":""},"ScanTemplateWebSpider":{"type":"object","discriminator":"","properties":{"dontScanMultiUseDevices":{"type":"boolean","example":true,"description":"Whether scanning of multi-use devices, such as printers or print servers should be avoided."},"includeQueryStrings":{"type":"boolean","example":false,"description":"Whether query strings are using in URLs when web spidering. This causes the web spider to make many more requests to the Web server. This will increase overall scan time and possibly affect the Web server's performance for legitimate users."},"paths":{"example":"","description":"Paths to use when web spidering.","$ref":"#/definitions/ScanTemplateWebSpiderPaths"},"patterns":{"example":"","description":"Patterns to match responses during web spidering.","$ref":"#/definitions/ScanTemplateWebSpiderPatterns"},"performance":{"example":"","description":"Performance settings used during web spidering.","$ref":"#/definitions/ScanTemplateWebSpiderPerformance"},"testCommonUsernamesAndPasswords":{"type":"boolean","example":false,"description":"Whether to determine if discovered logon forms accept commonly used user names or passwords. The process may cause authentication services with certain security policies to lock out accounts with these credentials."},"testXssInSingleScan":{"type":"boolean","example":false,"description":"Whether to test for persistent cross-site scripting during a single scan. This test helps to reduce the risk of dangerous attacks via malicious code stored on Web servers. Enabling it may increase Web spider scan times."},"userAgent":{"type":"string","example":"Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)","description":"The `User-Agent` to use when web spidering. Defaults to `\"Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)\"`."}},"description":""},"ScanTemplateWebSpiderPaths":{"type":"object","discriminator":"","properties":{"boostrap":{"type":"string","example":"/root","description":"Paths to bootstrap spidering with."},"excluded":{"type":"string","example":"/root/sensitive.html","description":"Paths excluded from spidering."},"honorRobotDirectives":{"type":"boolean","example":false,"description":"${scan.template.web.spider.paths.robot.directives.description}"}},"description":""},"ScanTemplateWebSpiderPatterns":{"type":"object","discriminator":"","properties":{"sensitiveContent":{"type":"string","example":"","description":"A regular expression that is used to find sensitive content on a page."},"sensitiveField":{"type":"string","example":"(p|pass)(word|phrase|wd|code)","description":"A regular expression that is used to find fields that may contain sensitive input. Defaults to `\"(p|pass)(word|phrase|wd|code)\"`."}},"description":""},"ScanTemplateWebSpiderPerformance":{"type":"object","discriminator":"","properties":{"httpDaemonsToSkip":{"type":"array","description":"The names of HTTP Daemons (HTTPd) to skip when spidering. For example, `\"CUPS\"`.","items":{"type":"string"}},"maximumDirectoryLevels":{"type":"integer","format":"int32","example":6,"description":"The directory depth limit for web spidering. Limiting directory depth can save significant time, especially with large sites. A value of `0` signifies unlimited directory traversal. Defaults to `6`.","minimum":1,"maximum":100},"maximumForeignHosts":{"type":"integer","format":"int32","example":100,"description":"The maximum number of unique host names that the spider may resolve. This function adds substantial time to the spidering process, especially with large Web sites, because of frequent cross-link checking involved. Defaults to `100`."},"maximumLinkDepth":{"type":"integer","format":"int32","example":6,"description":"The maximum depth of links to traverse when spidering. Defaults to `6`.","minimum":0,"maximum":100},"maximumPages":{"type":"integer","format":"int32","example":3000,"description":"The maximum the number of pages that are spidered. This is a time-saving measure for large sites. Defaults to `3000`.","minimum":0,"maximum":1000000},"maximumRetries":{"type":"integer","format":"int32","example":2,"description":"The maximum the number of times to retry a request after a failure. A value of `0` means no retry attempts are made. Defaults to `2`.","minimum":0,"maximum":999},"maximumTime":{"type":"string","example":"PT0S","description":"The maximum length of time to web spider. This limit prevents scans from taking longer than the allotted scan schedule. A value of `PT0S` means no limit is applied. The acceptable range is `PT1M` to `PT16666.6667H`."},"responseTimeout":{"type":"string","example":"PT2M","description":"The duration to wait for a response from a target web server. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P1H` (1 hour). Defaults to `PT2M`."},"threadsPerServer":{"type":"integer","format":"int32","example":3,"description":"The number of threads to use per web server being spidered. Defaults to `3`.","minimum":0,"maximum":999}},"description":""},"ScheduledScanTargets":{"type":"object","discriminator":"","properties":{"excludedAssetGroups":{"example":"","description":"Assets associated with these asset groups will be excluded from the site's scan.","$ref":"#/definitions/ExcludedAssetGroups"},"excludedTargets":{"example":"","description":"Addresses to be excluded from the site's scan. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","$ref":"#/definitions/ExcludedScanTargets"},"includedAssetGroups":{"example":"","description":"Allows users to specify a subset of the site's included asset groups to be included in the scan. If the property is defined, then at least one valid already defined as an included asset group must be specified.","$ref":"#/definitions/IncludedAssetGroups"},"includedTargets":{"example":"","description":"Allows users to specify a subset of the site's scan targets to be included in the scan. If the property is defined, then at least one address must be specified.","$ref":"#/definitions/IncludedScanTargets"}},"description":""},"SearchCriteria":{"type":"object","discriminator":"","properties":{"filters":{"type":"array","description":"Filters used to match assets. See Search Criteria for more information on the structure and format.","items":{"$ref":"#/definitions/SwaggerSearchCriteriaFilter"}},"match":{"type":"string","example":"all","description":"Operator to determine how to match filters. `all` requires that all filters match for an asset to be included. `any` requires only one filter to match for an asset to be included.","enum":["any","all"]}},"description":""},"Service":{"type":"object","required":["port","protocol"],"discriminator":"","properties":{"configurations":{"type":"array","description":"Configuration key-values pairs enumerated on the service.","items":{"$ref":"#/definitions/Configuration"}},"databases":{"type":"array","description":"The databases enumerated on the service.","items":{"$ref":"#/definitions/Database"}},"family":{"type":"string","example":"","description":"The family of the service."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"CIFS Name Service","description":"The name of the service."},"port":{"type":"integer","format":"int32","example":139,"description":"The port of the service."},"product":{"type":"string","example":"Samba","description":"The product running the service."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},"userGroups":{"type":"array","description":"The group accounts enumerated on the service.","items":{"$ref":"#/definitions/GroupAccount"}},"users":{"type":"array","description":"The user accounts enumerated on the service.","items":{"$ref":"#/definitions/UserAccount"}},"vendor":{"type":"string","example":"","description":"The vendor of the service."},"version":{"type":"string","example":"3.5.11","description":"The version of the service."},"webApplications":{"type":"array","description":"The web applications found on the service.","items":{"$ref":"#/definitions/WebApplication"}}},"description":""},"ServiceLink":{"type":"object","discriminator":"","properties":{"href":{"type":"string","example":"https://hostname:3780/api/3/...","description":"A hypertext reference, which is either a URI (see RFC 3986) or URI template (see RFC 6570). "},"port":{"type":"integer","format":"int32","example":22,"description":"The port of the service."},"protocol":{"type":"string","example":"tcp","description":"The protocol of the service.","enum":["ip","icmp","igmp","ggp","tcp","pup","udp","idp","esp","nd","raw"]},"rel":{"type":"string","example":"Service","description":"The link relation type. This value is one from the Link Relation Type Registry or is the type of resource being linked to."}},"description":""},"ServiceUnavailableError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"503","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["503"]}},"description":""},"Settings":{"type":"object","discriminator":"","properties":{"assetLinking":{"type":"boolean","example":true,"description":"Whether asset linking is enabled."},"authentication":{"example":"","description":"Details the authentication settings.","$ref":"#/definitions/AuthenticationSettings"},"database":{"example":"","description":"Details the database settings.","$ref":"#/definitions/DatabaseSettings"},"directory":{"type":"string","example":"/opt/rapid7/nexpose","description":"The root directory of the console."},"insightPlatform":{"type":"boolean","example":true,"description":"Whether the usage of the Insight Platform is enabled."},"insightPlatformRegion":{"type":"string","example":"us-east-1","description":"The region used for the Insight Platform, if enabled."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"risk":{"example":"","description":"Details risk configuration and settings.","$ref":"#/definitions/RiskSettings"},"scan":{"example":"","description":"Details the global settings for scanning.","$ref":"#/definitions/ScanSettings"},"serialNumber":{"type":"string","example":"729F31B1C92F3C91DFA8A649F4D5C883C269BD45","description":"The console serial number."},"smtp":{"example":"","description":"Global SMTP distribution settings.","$ref":"#/definitions/SmtpSettings"},"updates":{"example":"","description":"Details the update settings.","$ref":"#/definitions/UpdateSettings"},"uuid":{"type":"string","example":"7231036a-e052-11e7-80c1-9a214cf093ae","description":"The universally unique identifier (UUID) of the console."},"web":{"example":"","description":"Details the web server settings.","$ref":"#/definitions/WebSettings"}},"description":""},"SharedCredential":{"type":"object","required":["account","name","siteAssignment"],"discriminator":"","properties":{"account":{"example":"","description":"Specify the type of service to authenticate as well as all of the information required by that service. \n
\n
service string \n
\n\"as400\" \n\"cifs\" \n\"cifshash\" \n\"cvs\" \n\"db2\" \n\"ftp\" \n\"http\" \n\"ms-sql\" \n\"mysql\" \n\"notes\" \n\"oracle\" \n\"pop\" \n\"postgresql\" \n\"remote-exec\" \n\"snmp\" \n\"snmpv3\" \n\"ssh\" \n\"ssh-key\" \n\"sybase\" \n\"telnet\" \n
\n
The type of service to authenticate with.
\n
\n
\n\nThe following are the names of the valid values for service: \n| Value | Service | \n| ------------- | ----------------------------------------------- | \n| `as400` | IBM AS/400 | \n| `cifs` | Microsoft Windows/Samba (SMB/CIFS) | \n| `cifshash` | Microsoft Windows/Samba LM/NTLM Hash (SMB/CIFS) | \n| `cvs` | Concurrent Versioning System (CVS) | \n| `db2` | DB2 | \n| `ftp` | File Transfer Protocol (FTP) | \n| `http` | Web Site HTTP Authentication | \n| `ms-sql` | Microsoft SQL Server | \n| `mysql` | MySQL Server | \n| `notes` | Lotus Notes/Domino | \n| `oracle` | Oracle | \n| `pop` | Post Office Protocol (POP) | \n| `postgresql` | PostgreSQL | \n| `remote-exec` | Remote Execution | \n| `snmp` | Simple Network Management Protocol v1/v2c | \n| `snmpv3` | Simple Network Management Protocol v3 | \n| `ssh` | Secure Shell (SSH) | \n| `ssh-key` | Secure Shell (SSH) Public Key | \n| `sybase` | Sybase SQL Server | \n| `telnet` | Telnet | \n\nThe following is a specification of supported credential properties for each type of service. These properties are to be specified within the account
object.
\n\n`as400` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifshash` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
ntlmHash string Required \n
The NTLM password hash. Note: This property is not returned in responses for security.
\n
\n
\n\n`cvs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`db2` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ftp` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`http` supported properties:\n \n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ms-sql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`mysql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The Notes ID password. Note: This property is not returned in responses for security.
\n
\n
\n\n`notes` supported properties:\n \n
\n
notesIDPassword string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`oracle` supported properties:\n \n
\n
sid string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
enumerateSids boolean \n
\n
\nBoolean flag instructing the scan engine to attempt to enumerate SIDs from your environment. If set to true
, set the Oracle Net Listener password in property oracleListenerPassword
.
\n
\n
\n
\n
oracleListenerPassword string \n
The Oracle Net Listener password. Used to enumerate SIDs from your environment.
\n
\n
\n\n`pop` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`postgresql` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`remote-exec` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmp` supported properties:\n \n
\n
communityName string Required \n
The community name that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmpv3` supported properties:\n \n
\n
authenticationType string Required \n
\n\"no-authentication\" \n\"md5\" \n\"sha\" \n
\n
The authentication protocols available to use in SNMP v3.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string \n
\n
\nThe password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
. Note: This property is not returned in responses for security.
\n
\n
\n
\n
privacyType string \n
\n\"no-privacy\" \n\"des\" \n\"aes-128\" \n\"aes-192\" \n\"aes-192-with-3-des-key-extension\" \n\"aes-256\" \n\"aes-265-with-3-des-key-extension\" \n
\n
The privacy protocols available to use in SNMP v3.
\n
\n
\n
privacyPassword string \n
\n
\nThe privacy password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
and when the privacyType
is set to a valid value other than code>\"no-privacy\". Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh-key` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
privateKeyPassword string Required \n
The password for private key. Note: This property is not returned in responses for security.
\n
\n
\n
pemKey string Required \n
The PEM-format private key. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`sybase` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`telnet` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n","$ref":"#/definitions/SharedCredentialAccount"},"description":{"type":"string","example":"","description":"The description of the credential."},"hostRestriction":{"type":"string","example":"","description":"The host name or IP address that you want to restrict the credentials to."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the credential."},"name":{"type":"string","example":"","description":"The name of the credential."},"portRestriction":{"type":"integer","format":"int32","example":"","description":"Further restricts the credential to attempt to authenticate on a specific port. The port can only be restricted if the property `hostRestriction` is specified.","minimum":1,"maximum":65535},"siteAssignment":{"type":"string","example":"","description":"Assigns the shared scan credential either to be available to all sites or to a specific list of sites.\nThe following table describes each supported value: \n| Value | Description | \n| ---------- | ---------------- | \n| `\"all-sites\"` | The shared scan credential is assigned to all current and future sites. | \n| `\"specific-sites\"` | The shared scan credential is assigned to zero sites by default. Administrators must explicitly assign sites to the shared credential. | \nShared scan credentials assigned to a site can disabled within the site configuration, if needed."},"sites":{"type":"array","description":"List of site identifiers. These sites are explicitly assigned access to the shared scan credential, allowing the site to use the credential for authentication during a scan. This property can only be set if the value of property `siteAssignment` is set to `\"specific-sites\"`. When the property `siteAssignment` is set to `\"all-sites\"`, this property will be `null`.","items":{"type":"integer","format":"int32"}}},"description":""},"SharedCredentialAccount":{"type":"object","discriminator":"","properties":{"authenticationType":{"type":"string"},"communityName":{"type":"string"},"database":{"type":"string"},"domain":{"type":"string"},"enumerateSids":{"type":"boolean"},"notesIDPassword":{"type":"string"},"ntlmHash":{"type":"string"},"oracleListenerPassword":{"type":"string"},"password":{"type":"string"},"pemKey":{"type":"string"},"permissionElevation":{"type":"string"},"permissionElevationPassword":{"type":"string"},"permissionElevationUserName":{"type":"string"},"privacyPassword":{"type":"string"},"privacyType":{"type":"string"},"privateKeyPassword":{"type":"string"},"realm":{"type":"string"},"service":{"type":"string"},"sid":{"type":"string"},"useWindowsAuthentication":{"type":"boolean"},"username":{"type":"string"}},"description":""},"Site":{"type":"object","discriminator":"","properties":{"assets":{"type":"integer","format":"int32","example":768,"description":"The number of assets that belong to the site.","readOnly":true},"connectionType":{"type":"string","example":"","description":"The type of discovery connection configured for the site. This property only applies to dynamic sites.","readOnly":true,"enum":["activesync-ldap","activesync-office365","activesync-powershell","aws","dhcp","sonar","vsphere"]},"description":{"type":"string","example":"","description":"The site description."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the site."},"importance":{"type":"string","example":"","description":"The site importance."},"lastScanTime":{"type":"string","example":"","description":"The date and time of the site's last scan.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The site name."},"riskScore":{"type":"number","format":"double","example":4457823.78,"description":"The risk score (with criticality adjustments) of the site.","readOnly":true},"scanEngine":{"type":"integer","format":"int32","example":"","description":"The identifier of the scan engine configured in the site."},"scanTemplate":{"type":"string","example":"","description":"The identifier of the scan template configured in the site."},"type":{"type":"string","example":"","description":"The type of the site.","readOnly":true,"enum":["agent","dynamic","static"]},"vulnerabilities":{"example":"","description":"Summary information for distinct vulnerabilities found on the assets.","readOnly":true,"$ref":"#/definitions/Vulnerabilities"}},"description":""},"SiteCreateResource":{"type":"object","required":["name"],"discriminator":"","properties":{"description":{"type":"string","example":"","description":"The site's description."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of a scan engine. Default scan engine is selected when not specified."},"importance":{"type":"string","example":"","description":"The site importance. Defaults to `\"normal\"` if not specified.","enum":["very_low","low","normal","high","very_high"]},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The site name. Name must be unique."},"scan":{"example":"","description":"Defines the scope of scan targets for the site, which can be addresses, or asset groups, for static sites and a discovery configuration for dynamic sites. Only one property must be set by the user when saving a site.","$ref":"#/definitions/ScanScope"},"scanTemplateId":{"type":"string","example":"","description":"The identifier of a scan template. Default scan template is selected when not specified."}},"description":""},"SiteCredential":{"type":"object","required":["account","name"],"discriminator":"","properties":{"account":{"example":"","description":"Specify the type of service to authenticate as well as all of the information required by that service. \n
\n
service string \n
\n\"as400\" \n\"cifs\" \n\"cifshash\" \n\"cvs\" \n\"db2\" \n\"ftp\" \n\"http\" \n\"ms-sql\" \n\"mysql\" \n\"notes\" \n\"oracle\" \n\"pop\" \n\"postgresql\" \n\"remote-exec\" \n\"snmp\" \n\"snmpv3\" \n\"ssh\" \n\"ssh-key\" \n\"sybase\" \n\"telnet\" \n
\n
The type of service to authenticate with.
\n
\n
\n\nThe following are the names of the valid values for service: \n| Value | Service | \n| ------------- | ----------------------------------------------- | \n| `as400` | IBM AS/400 | \n| `cifs` | Microsoft Windows/Samba (SMB/CIFS) | \n| `cifshash` | Microsoft Windows/Samba LM/NTLM Hash (SMB/CIFS) | \n| `cvs` | Concurrent Versioning System (CVS) | \n| `db2` | DB2 | \n| `ftp` | File Transfer Protocol (FTP) | \n| `http` | Web Site HTTP Authentication | \n| `ms-sql` | Microsoft SQL Server | \n| `mysql` | MySQL Server | \n| `notes` | Lotus Notes/Domino | \n| `oracle` | Oracle | \n| `pop` | Post Office Protocol (POP) | \n| `postgresql` | PostgreSQL | \n| `remote-exec` | Remote Execution | \n| `snmp` | Simple Network Management Protocol v1/v2c | \n| `snmpv3` | Simple Network Management Protocol v3 | \n| `ssh` | Secure Shell (SSH) | \n| `ssh-key` | Secure Shell (SSH) Public Key | \n| `sybase` | Sybase SQL Server | \n| `telnet` | Telnet | \n\nThe following is a specification of supported credential properties for each type of service. These properties are to be specified within the account
object.
\n\n`as400` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`cifshash` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
ntlmHash string Required \n
The NTLM password hash. Note: This property is not returned in responses for security.
\n
\n
\n\n`cvs` supported properties:\n \n
\n
domain string \n
The address of the domain.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`db2` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ftp` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`http` supported properties:\n \n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`ms-sql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`mysql` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The Notes ID password. Note: This property is not returned in responses for security.
\n
\n
\n\n`notes` supported properties:\n \n
\n
notesIDPassword string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`oracle` supported properties:\n \n
\n
sid string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
enumerateSids boolean \n
\n
\nBoolean flag instructing the scan engine to attempt to enumerate SIDs from your environment. If set to true
, set the Oracle Net Listener password in property oracleListenerPassword
.
\n
\n
\n
\n
oracleListenerPassword string \n
The Oracle Net Listener password. Used to enumerate SIDs from your environment.
\n
\n
\n\n`pop` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`postgresql` supported properties:\n \n
\n
database string \n
The name of the database.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`remote-exec` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmp` supported properties:\n \n
\n
communityName string Required \n
The community name that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`snmpv3` supported properties:\n \n
\n
authenticationType string Required \n
\n\"no-authentication\" \n\"md5\" \n\"sha\" \n
\n
The authentication protocols available to use in SNMP v3.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string \n
\n
\nThe password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
. Note: This property is not returned in responses for security.
\n
\n
\n
\n
privacyType string \n
\n\"no-privacy\" \n\"des\" \n\"aes-128\" \n\"aes-192\" \n\"aes-192-with-3-des-key-extension\" \n\"aes-256\" \n\"aes-265-with-3-des-key-extension\" \n
\n
The privacy protocols available to use in SNMP v3.
\n
\n
\n
privacyPassword string \n
\n
\nThe privacy password for the account that will be used for authenticating. Is required when the property authenticationType
is set to valid value other than \"no-authentication\"
and when the privacyType
is set to a valid value other than code>\"no-privacy\". Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`ssh-key` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
privateKeyPassword string Required \n
The password for private key. Note: This property is not returned in responses for security.
\n
\n
\n
pemKey string Required \n
The PEM-format private key. Note: This property is not returned in responses for security.
\n
\n
\n
permissionElevation string \n
\n\"none\" \n\"sudo\" \n\"sudosu\" \n\"su\" \n\"pbrun\" \n\"privileged-exec\" \n
\n
\n
\nElevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to \"none\"
if not specified.
\n
\n
\n
\n
permissionElevationUsername string \n
\n
\nThe user name for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.
\n
\n
\n
\n
password string \n
\n
\nThe password for the account with elevated permissions. This property must not be specified when the property permissionElevation
is set to either \"none\"
or \"pbrun\"
; otherwise the property is required.Note: This property is not returned in responses for security.
\n
\n
\n
\n\n`sybase` supported properties:\n \n
\n
database string \n
The name of the database. If not specified, a default database name will be used during authentication.
\n
\n
\n
useWindowsAuthentication boolean \n
\n
\nBoolean flag signaling whether to connect to the database using Windows authentication. When set to true
, Windows authentication is attempted; when set to false
, SQL authentication is attempted.
\n
\n
\n
\n
domain string \n
The address of the domain. This property cannot be specified unless property useWindowsAuthentication
is set to true
.
\n
\n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n`telnet` supported properties:\n \n
\n
username string Required \n
The user name for the account that will be used for authenticating.
\n
\n
\n
password string Required \n
The password for the account that will be used for authenticating. Note: This property is not returned in responses for security.
\n
\n
\n\n","$ref":"#/definitions/Account"},"description":{"type":"string","example":"","description":"The description of the credential."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the credential is enabled for use during the scan."},"hostRestriction":{"type":"string","example":"","description":"The host name or IP address that you want to restrict the credentials to."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the credential."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the credential."},"portRestriction":{"type":"integer","format":"int32","example":"","description":"Further restricts the credential to attempt to authenticate on a specific port. The port can only be restricted if the property `hostRestriction` is specified.","minimum":1,"maximum":65535}},"description":""},"SiteDiscoveryConnection":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":"","description":"The identifier of the discovery connection.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the discovery connection.","readOnly":true},"type":{"type":"string","example":"","description":"The type of discovery connection configured for the site. This property only applies to dynamic sites.","readOnly":true,"enum":["activesync-ldap","activesync-office365","activesync-powershell","aws","dhcp","sonar","vsphere"]}},"description":""},"SiteOrganization":{"type":"object","discriminator":"","properties":{"address":{"type":"string","example":"","description":"The address."},"city":{"type":"string","example":"","description":"The city."},"contact":{"type":"string","example":"","description":"The contact person name."},"country":{"type":"string","example":"","description":"The country."},"email":{"type":"string","example":"","description":"The e-mail address."},"jobTitle":{"type":"string","example":"","description":"The job title."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The organization name."},"phone":{"type":"string","example":"","description":"The phone number."},"state":{"type":"string","example":"","description":"The state."},"url":{"type":"string","example":"","description":"The organization URL."},"zipCode":{"type":"string","example":"","description":"The zip or region code."}},"description":""},"SiteSharedCredential":{"type":"object","discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the shared credential is enabled for the site's scans.","readOnly":true},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the shared credential.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The name of the shared credential.","readOnly":true},"service":{"type":"string","example":"","description":"The type of service the credential is configured to authenticate with.","readOnly":true,"enum":["as400","cifs","cifshash","cvs","db2","ftp","http","ms-sql","mysql","notes","oracle","pop","postgresql","remote-exec","snmp","snmpv3","ssh","ssh-key","sybase","telnet"]}},"description":""},"SiteUpdateResource":{"type":"object","required":["engineId","importance","name","scanTemplateId"],"discriminator":"","properties":{"description":{"type":"string","example":"","description":"The site's description."},"engineId":{"type":"integer","format":"int32","example":"","description":"The identifier of a scan engine."},"importance":{"type":"string","example":"","description":"The site importance.","enum":["very_low","low","normal","high","very_high"]},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The site name. Name must be unique."},"scanTemplateId":{"type":"string","example":"","description":"The identifier of a scan template."}},"description":""},"SmtpAlert":{"type":"object","required":["enabled","name","notification","recipients","relayServer"],"discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"limitAlertText":{"type":"boolean","example":false,"description":"Reports basic information in the alert, if enabled."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]},"recipients":{"type":"array","description":"The recipient list. At least one recipient must be specified. Each recipient must be a valid e-mail address.","items":{"type":"string"}},"relayServer":{"type":"string","example":"","description":"The SMTP server/relay to send messages through."},"senderEmailAddress":{"type":"string","example":"","description":"The sender e-mail address that will appear in the from field."}},"description":""},"SmtpSettings":{"type":"object","discriminator":"","properties":{"host":{"type":"string","example":"mail@acme.com","description":"The host to send to."},"port":{"type":"integer","format":"int32","example":25,"description":"The port to send to."},"sender":{"type":"string","example":"security@acme.com","description":"The sender to send from."}},"description":""},"SnmpAlert":{"type":"object","required":["community","enabled","name","notification","server"],"discriminator":"","properties":{"community":{"type":"string","example":"","description":"The SNMP community name."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]},"server":{"type":"string","example":"","description":"The SNMP management server."}},"description":""},"Software":{"type":"object","discriminator":"","properties":{"configurations":{"type":"array","description":"${software.attributes.description}","items":{"$ref":"#/definitions/Configuration"}},"cpe":{"example":"","description":"The Common Platform Enumeration (CPE) of the software.","$ref":"#/definitions/SoftwareCpe"},"description":{"type":"string","example":"Microsoft Outlook 2013 15.0.4867.1000","description":"The description of the software."},"family":{"type":"string","example":"Office 2013","description":"The family of the software."},"id":{"type":"integer","format":"int64"},"product":{"type":"string","example":"Outlook 2013","description":"The product of the software."},"type":{"type":"string","example":"Productivity","description":"The version of the software."},"vendor":{"type":"string","example":"Microsoft","description":"The vendor of the software."},"version":{"type":"string","example":"15.0.4867.1000","description":"The version of the software."}},"description":""},"SoftwareCpe":{"type":"object","required":["part"],"discriminator":"","properties":{"edition":{"type":"string","example":"enterprise","description":"Edition-related terms applied by the vendor to the product. "},"language":{"type":"string","example":"","description":"Defines the language supported in the user interface of the product being described. The format is of the language tag adheres to RFC5646."},"other":{"type":"string","example":"","description":"Captures any other general descriptive or identifying information which is vendor- or product-specific and which does not logically fit in any other attribute value. "},"part":{"type":"string","example":"o","description":"A single letter code that designates the particular platform part that is being identified.","enum":["o","a","h"]},"product":{"type":"string","example":"windows_server_2008","description":"the most common and recognizable title or name of the product."},"swEdition":{"type":"string","example":"","description":"Characterizes how the product is tailored to a particular market or class of end users. "},"targetHW":{"type":"string","example":"","description":"Characterize the instruction set architecture on which the product operates. "},"targetSW":{"type":"string","example":"","description":"Characterize the software computing environment within which the product operates."},"update":{"type":"string","example":"sp1","description":"Vendor-specific alphanumeric strings characterizing the particular update, service pack, or point release of the product."},"v2.2":{"type":"string","example":"cpe:/o:microsoft:windows_server_2008:-:sp1:enterprise","description":"The full CPE string in the CPE 2.2 format."},"v2.3":{"type":"string","example":"cpe:2.3:o:microsoft:windows_server_2008:-:sp1:enterprise:*:*:*:*:*","description":"The full CPE string in the CPE 2.3 format."},"vendor":{"type":"string","example":"microsoft","description":"The person or organization that manufactured or created the product."},"version":{"type":"string","example":"-","description":"Vendor-specific alphanumeric strings characterizing the particular release version of the product."}},"description":""},"Solution":{"type":"object","discriminator":"","properties":{"additionalInformation":{"example":"","description":"Additional information or resources that can assist in applying the remediation.","$ref":"#/definitions/AdditionalInformation"},"appliesTo":{"type":"string","example":"libexpat1 on Ubuntu Linux","description":"The systems or software the solution applies to."},"estimate":{"type":"string","example":"PT10M","description":"The estimated duration to apply the solution, in ISO 8601 format. For example: `\"PT5M\"`."},"id":{"type":"string","example":"ubuntu-upgrade-libexpat1","description":"The identifier of the solution."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"steps":{"example":"","description":"The steps required to remediate the vulnerability.","$ref":"#/definitions/Steps"},"summary":{"example":"","description":"The summary of the solution.","$ref":"#/definitions/Summary"},"type":{"type":"string","example":"configuration","description":"The type of the solution. One of: `\"Configuration\"`, `\"Rollup patch\"`, `\"Patch\"`","enum":["configuration","rollup-patch","patch","unknown"]}},"description":""},"SolutionMatch":{"type":"object","discriminator":"","properties":{"check":{"type":"string","example":"","description":"The identifier of the vulnerability check used to match the solution, if type is `check`."},"confidence":{"type":"string","example":"","description":"The confidence of the matching process for the solution.","enum":["exact","partial","none"]},"fingerprint":{"example":"","description":"The fingerprint used to perform solution matching, if type is `operating-system`, `service`, or `software`.","$ref":"#/definitions/Fingerprint"},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"solution":{"type":"string","example":"ubuntu-upgrade-libexpat1","description":"The identifier of the matched solution."},"type":{"type":"string","example":"software","description":"The means by which a solution was matched.","enum":["none","check","operating-system","service","software"]}},"description":""},"SonarCriteria":{"type":"object","discriminator":"","properties":{"filters":{"type":"array","description":"The filters in the Sonar query.","items":{"$ref":"#/definitions/SonarCriterion"}}},"description":""},"SonarCriterion":{"type":"object","discriminator":"","properties":{"days":{"type":"integer","format":"int32","example":"","description":"If the field is `scan-date-within-the-last`, the number of days to search against."},"lower":{"type":"string","example":"","description":"If the field is `ip-address-range`, the lower limit of the search."},"searchDomain":{"type":"string","example":"acme.com","description":"If the field is `domain-contains`, the domain to search against."},"type":{"type":"string","example":"domain-contains","description":"The type of query to perform.","enum":["domain-contains","scan-date-within-the-last","ip-address-range"]},"upper":{"type":"string","example":"","description":"If the field is `ip-address-range`, the upper limit of the search."}},"description":""},"SonarQuery":{"type":"object","discriminator":"","properties":{"criteria":{"example":"","description":"The search criteria used to search for assets from the Sonar API.","$ref":"#/definitions/SonarCriteria"},"id":{"type":"integer","format":"int64","example":14,"description":"The identifier of the Sonar query.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Assets in Domain","description":"The name of the Sonar query."}},"description":""},"StaticSite":{"type":"object","discriminator":"","properties":{"excludedAssetGroups":{"example":"","description":"Assets associated with these asset groups will be excluded from the site's scan.","$ref":"#/definitions/ExcludedAssetGroups"},"excludedTargets":{"example":"","description":"Addresses to be excluded from the site's scan. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","$ref":"#/definitions/ExcludedScanTargets"},"includedAssetGroups":{"example":"","description":"Assets associated with these asset groups will be included in the site's scan.","$ref":"#/definitions/IncludedAssetGroups"},"includedTargets":{"example":"","description":"Addresses to be included in the site's scan. At least one address must be specified in a static site. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.","$ref":"#/definitions/IncludedScanTargets"}},"description":""},"Steps":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"\n Use `apt-get upgrade` to upgrade libexpat1 to the latest version.\n
","description":"Textual representation of the content."},"text":{"type":"string","example":"Use `apt-get upgrade` to upgrade libexpat1 to the latest version.","description":"Textual representation of the content."}},"description":""},"Submission":{"type":"object","discriminator":"","properties":{"comment":{"type":"string","example":"","description":"A comment from the submitter as to why the exception was submitted."},"date":{"type":"string","example":"","description":"The date and time the vulnerability exception was submitted.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"","description":"The login name of the user that submitted the vulnerability exception.","readOnly":true},"reason":{"type":"string","example":"","description":"The reason the vulnerability exception was submitted. One of: `\"False Positive\"`, `\"Compensating Control\"`, `\"Acceptable Use\"`, `\"Acceptable Risk\"`, `\"Other\"`"},"user":{"type":"integer","format":"int32","example":"","description":"The identifier of the user that submitted the vulnerability exception.","readOnly":true}},"description":""},"Summary":{"type":"object","discriminator":"","properties":{"html":{"type":"string","example":"Upgrade libexpat1","description":"Textual representation of the content."},"text":{"type":"string","example":"Upgrade libexpat1","description":"Textual representation of the content."}},"description":""},"SwaggerDiscoverySearchCriteriaFilter":{"type":"object","discriminator":"","properties":{"field":{"type":"string","example":"","description":"The filter field for the search criteria."},"lower":{"type":"string","example":"","description":"The lower value to match in a range criteria."},"operator":{"type":"string","example":"","description":"The operator on how to match the search criteria."},"upper":{"type":"string","example":"","description":"The upper value to match in a range criteria."},"value":{"type":"string","example":"","description":"The single value to match using the operator."},"values":{"type":"array","description":"An array of values to match using the operator.","items":{"type":"string"}}},"description":""},"SwaggerSearchCriteriaFilter":{"type":"object","discriminator":"","properties":{"field":{"type":"string","example":"","description":"The filter field for the search criteria."},"lower":{"type":"string","example":"","description":"The lower value to match in a range criteria."},"operator":{"type":"string","example":"","description":"The operator on how to match the search criteria."},"upper":{"type":"string","example":"","description":"The upper value to match in a range criteria."},"value":{"type":"string","example":"","description":"The single value to match using the operator."},"values":{"type":"array","description":"An array of values to match using the operator.","items":{"type":"string"}}},"description":""},"SyslogAlert":{"type":"object","required":["enabled","name","notification","server"],"discriminator":"","properties":{"enabled":{"type":"boolean","example":false,"description":"Flag indicating the alert is enabled."},"enabledScanEvents":{"example":"","description":"Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`.","$ref":"#/definitions/ScanEvents"},"enabledVulnerabilityEvents":{"example":"","description":"Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`.","$ref":"#/definitions/VulnerabilityEvents"},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the alert."},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"maximumAlerts":{"type":"integer","format":"int32","example":"","description":"The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`.","minimum":1},"name":{"type":"string","example":"","description":"The name of the alert."},"notification":{"type":"string","example":"","description":"The type of alert.","enum":["SMTP","SNMP","Syslog"]},"server":{"type":"string","example":"","description":"The Syslog server to send messages to."}},"description":""},"Tag":{"type":"object","required":["name","type"],"discriminator":"","properties":{"color":{"type":"string","example":"default","description":"The color to use when rendering the tag in a user interface."},"created":{"type":"string","example":"2017-10-07T23:50:01.205Z","description":"The date and time the tag was created."},"id":{"type":"integer","format":"int32","example":6,"description":"The identifier of the tag.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Very High","description":"The name (label) of the tab."},"riskModifier":{"type":"number","format":"double","example":2.0,"description":"The amount to adjust risk of an asset tagged with this tag. "},"searchCriteria":{"$ref":"#/definitions/SearchCriteria"},"source":{"type":"string","example":"built-in","description":"The source of the tag.","readOnly":true,"enum":["built-in","custom"]},"type":{"type":"string","example":"criticality","description":"The type of the tag."}},"description":""},"TagAssetSource":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":92,"description":"If the `source` is `\"asset-group\"` or `\"site\"` the identifier of the asset group or site that causes the tag to apply to the asset."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"source":{"type":"string","example":"site","description":"The source by which a tag applies to an asset.","enum":["site","asset-group","criteria","tag","unknown"]}},"description":""},"TagLink":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":78,"description":"The identifier of the tagged asset."},"sources":{"type":"array","description":"The source(s) by which a tag is applied to an asset.","items":{"type":"string","enum":["site","asset-group","criteria","tag","unknown"]}}},"description":""},"TaggedAssetReferences":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"resources":{"type":"array","description":"The identifiers of the associated resources.","items":{"$ref":"#/definitions/TagLink"}}},"description":""},"Telnet":{"type":"object","discriminator":"","properties":{"characterSet":{"type":"string","example":"ASCII","description":"The character set to use."},"failedLoginRegex":{"type":"string","example":"(?:[i,I]ncorrect|[u,U]nknown|[f,F]ail|[i,I]nvalid|[l,L]ogin|[p,P]assword|[p,P]asswd|[u,U]sername|[u,U]nable|[e,E]rror|[d,D]enied|[r,R]eject|[r,R]efuse|[c,C]lose|[c,C]losing|Not on system console|% Bad)","description":"Regular expression to match a failed login response."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"loginRegex":{"type":"string","example":"(?:[l,L]ogin|[u,U]ser.?[nN]ame) *\\:","description":"Regular expression to match a login response."},"passwordPromptRegex":{"type":"string","example":"(?:[p,P]assword|[p,P]asswd) *\\:","description":"Regular expression to match a password prompt."},"questionableLoginRegex":{"type":"string","example":"(?:[l,L]ast [l,L]ogin *\\:|allows only .* Telnet Client License)","description":"Regular expression to match a potential false negative login response."}},"description":""},"TokenResource":{"type":"object","discriminator":"","properties":{"key":{"type":"string","example":"","description":"The two-factor authentication token seed (key)."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"UnauthorizedError":{"type":"object","required":["status"],"discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","items":{"$ref":"#/definitions/Link"}},"message":{"type":"string","example":"An error has occurred.","description":"The messages indicating the cause or reason for failure."},"status":{"type":"string","example":"401","description":"The HTTP status code for the error (same as in the HTTP response).","enum":["401"]}},"description":""},"UniqueId":{"type":"object","required":["id"],"discriminator":"","properties":{"id":{"type":"string","example":"c56b2c59-4e9b-4b89-85e2-13f8146eb071","description":"The unique identifier."},"source":{"type":"string","example":"WQL","description":"The source of the unique identifier."}},"description":""},"UpdateId":{"type":"object","discriminator":"","properties":{"productId":{"type":"string","example":"281474976711146","description":"Product update identifier."},"versionId":{"type":"string","example":"490","description":"Version update identifier."}},"description":""},"UpdateInfo":{"type":"object","discriminator":"","properties":{"content":{"type":"string","example":"3192129162","description":"The most recent content update."},"contentPartial":{"type":"string","example":"723680177","description":"The most recent, partially-applied (in-memory), content update."},"id":{"example":"","description":"Details of update identifiers.","$ref":"#/definitions/UpdateId"},"product":{"type":"string","example":"2200922472","description":"The most recent product update."}},"description":""},"UpdateSettings":{"type":"object","discriminator":"","properties":{"contentAutoUpdate":{"type":"boolean","example":true,"description":"Whether automatic content updates are enabled."},"enabled":{"type":"boolean","example":true,"description":"Whether updates are enabled."},"productAutoUpdate":{"type":"boolean","example":true,"description":"Whether automatic product updates are enabled."}},"description":""},"User":{"type":"object","required":["login","name","password","role"],"discriminator":"","properties":{"authentication":{"example":"","description":"The details of the authentication source used to authenticate the user.","$ref":"#/definitions/CreateAuthenticationSource"},"email":{"type":"string","example":"","description":"The email address of the user."},"enabled":{"type":"boolean","example":false,"description":"Whether the user account is enabled. Defaults to `true`."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the user.","readOnly":true},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"locale":{"example":"","description":"The locale and language preferences for the user.","$ref":"#/definitions/LocalePreferences"},"locked":{"type":"boolean","example":false,"description":"Whether the user account is locked (exceeded maximum password retry attempts).","readOnly":true},"login":{"type":"string","example":"","description":"The login name of the user."},"name":{"type":"string","example":"","description":"The full name of the user."},"password":{"type":"string","example":"","description":"The password to use for the user."},"passwordResetOnLogin":{"type":"boolean","example":false,"description":"Whether to require a reset of the user's password upon first login. Defaults to `false`."},"role":{"example":"","description":"The privileges and role to assign the user.","$ref":"#/definitions/UserCreateRole"}},"description":""},"UserAccount":{"type":"object","required":["name"],"discriminator":"","properties":{"fullName":{"type":"string","example":"Smith, John","description":"The full name of the user account."},"id":{"type":"integer","format":"int32","example":8952,"description":"The identifier of the user account."},"name":{"type":"string","example":"john_smith","description":"The name of the user account."}},"description":""},"UserCreateRole":{"type":"object","required":["id"],"discriminator":"","properties":{"allAssetGroups":{"type":"boolean","example":false,"description":"Whether to grant the user access to all asset groups. Defaults to `false`."},"allSites":{"type":"boolean","example":false,"description":"Whether to grant the user access to all sites. Defaults to `false`."},"id":{"type":"string","example":"","description":"The identifier of the role the user is assigned to."},"superuser":{"type":"boolean","example":false,"description":"Whether the user is a superuser. Defaults to `false`."}},"description":""},"UserRole":{"type":"object","discriminator":"","properties":{"allAssetGroups":{"type":"boolean","example":false,"description":"Whether the user has access to all asset groups."},"allSites":{"type":"boolean","example":false,"description":"Whether the user has access to all sites."},"id":{"type":"string","example":"","description":"The identifier of the role the user is assigned to."},"name":{"type":"string","example":"","description":"The name of the role the user is assigned to."},"privileges":{"type":"array","description":"The privileges granted to the user by their role.","items":{"type":"string","enum":["all-permissions","create-reports","configure-global-settings","manage-sites","manage-tags","manage-static-asset-groups","manage-dynamic-asset-groups","manage-scan-templates","manage-report-templates","manage-scan-engines","submit-vulnerability-exceptions","approve-vulnerability-exceptions","delete-vulnerability-exceptions","create-tickets","close-tickets","assign-ticket-assignee","manage-site-access","manage-asset-group-access","manage-report-access","use-restricted-report-sections","manage-policies","view-asset-group-asset-data","manage-asset-group-assets","view-site-asset-data","specify-site-metadata","purge-site-asset-data","specify-scan-targets","assign-scan-engine","assign-scan-template","manage-site-credentials","manage-scan-alerts","schedule-automatic-scans","start-unscheduled-scans"]}},"superuser":{"type":"boolean","example":false,"description":"Whether the user is a superuser."}},"description":""},"VersionInfo":{"type":"object","discriminator":"","properties":{"build":{"type":"string","example":"2017-12-10-14-11","description":"The build number."},"changeset":{"type":"string","example":"7061fb4e7c355160df79a77d8983bed2af01f2bf","description":"The changeset of the source build."},"platform":{"type":"string","example":"Linux64","description":"The platform of the build."},"semantic":{"type":"string","example":"6.4.65","description":"The semantic version number of the installation."},"update":{"example":"","description":"Version update details.","$ref":"#/definitions/UpdateInfo"}},"description":""},"Vulnerabilities":{"type":"object","discriminator":"","properties":{"critical":{"type":"integer","format":"int64","example":16,"description":"The number of critical vulnerabilities.","readOnly":true},"moderate":{"type":"integer","format":"int64","example":3,"description":"The number of moderate vulnerabilities.","readOnly":true},"severe":{"type":"integer","format":"int64","example":76,"description":"The number of severe vulnerabilities.","readOnly":true},"total":{"type":"integer","format":"int64","example":95,"description":"The total number of vulnerabilities.","readOnly":true}},"description":""},"Vulnerability":{"type":"object","discriminator":"","properties":{"added":{"type":"string","example":"2017-10-10","description":"The date the vulnerability coverage was added. The format is an ISO 8601 date, `YYYY-MM-DD`."},"categories":{"type":"array","description":"All vulnerability categories assigned to this vulnerability.","items":{"type":"string"}},"cves":{"type":"array","description":"All CVEs assigned to this vulnerability.","items":{"type":"string"}},"cvss":{"example":"","description":"The CVSS vector(s) for the vulnerability.","$ref":"#/definitions/VulnerabilityCvss"},"denialOfService":{"type":"boolean","example":false,"description":"Whether the vulnerability can lead to Denial of Service (DoS)."},"description":{"example":"","description":"The description of the vulnerability.","$ref":"#/definitions/ContentDescription"},"exploits":{"type":"integer","format":"int32","example":"","description":"The exploits that can be used to exploit a vulnerability."},"id":{"type":"string","example":"msft-cve-2017-11804","description":"The identifier of the vulnerability."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"malwareKits":{"type":"integer","format":"int32","example":"","description":"The malware kits that are known to be used to exploit the vulnerability."},"modified":{"type":"string","example":"2017-10-10","description":"The last date the vulnerability was modified. The format is an ISO 8601 date, `YYYY-MM-DD`."},"pci":{"example":"","description":"Details the Payment Card Industry (PCI) details of the vulnerability.","$ref":"#/definitions/PCI"},"published":{"type":"string","example":"2017-10-10","description":"The date the vulnerability was first published or announced. The format is an ISO 8601 date, `YYYY-MM-DD`."},"riskScore":{"type":"number","format":"double","example":123.69,"description":"The risk score of the vulnerability, rounded to a maximum of to digits of precision. If using the default Rapid7 Real Riskâ„¢ model, this value ranges from 0-1000."},"severity":{"type":"string","example":"Severe","description":"The severity of the vulnerability, one of: `\"Moderate\"`, `\"Severe\"`, `\"Critical\"`."},"severityScore":{"type":"integer","format":"int32","example":4,"description":"The severity score of the vulnerability, on a scale of 0-10."},"title":{"type":"string","example":"Microsoft CVE-2017-11804: Scripting Engine Memory Corruption Vulnerability","description":"The title (summary) of the vulnerability."}},"description":""},"VulnerabilityCategory":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int32","example":23,"description":"The identifier of the vulnerability category."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"name":{"type":"string","example":"Microsoft","description":"The name of the category."}},"description":""},"VulnerabilityCheck":{"type":"object","discriminator":"","properties":{"id":{"type":"string","example":"WINDOWS-HOTFIX-MS14-009-01123281-bac0-44d8-a729-cd31c19d6bd1","description":"The identifier of the vulnerability check."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"plugin":{"type":"string","example":"WindowsHotfixScanner","description":"The name of the plugin (module) the check belongs to."},"potential":{"type":"boolean","example":false,"description":"Whether the check results in potential vulnerabilities."},"requiresCredentials":{"type":"boolean","example":true,"description":"Whether the check requires credentials in order to run."},"safe":{"type":"boolean","example":true,"description":"Whether the checked is deemed to be \"safe\" to run. A safe check is one that can be run without negatively impacting the host it is run against."},"service":{"type":"boolean","example":false,"description":"Whether the check operates against a service, or false it it is a local check."},"unique":{"type":"boolean","example":false,"description":"Whether the check may only register a result once during a scan of host. Otherwise, the tests in the check can run multiple times, possibly registering multiple results."},"vulnerability":{"type":"string","example":"windows-hotfix-ms14-009","description":"The identifier of the vulnerability the check results in."}},"description":""},"VulnerabilityCheckType":{"type":"object","discriminator":"","properties":{"disabled":{"type":"array","description":"The types of vulnerability checks to disable during a scan.","items":{"type":"string"}},"enabled":{"type":"array","description":"The types of vulnerability checks to enable during a scan.","items":{"type":"string"}},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}}},"description":""},"VulnerabilityCvss":{"type":"object","discriminator":"","properties":{"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"v2":{"example":"","description":"The Common Vulnerability Scoring System (CVSS v2) information for the vulnerability.","$ref":"#/definitions/VulnerabilityCvssV2"},"v3":{"example":"","description":"The Common Vulnerability Scoring System (CVSS v3) information for the vulnerability.","$ref":"#/definitions/VulnerabilityCvssV3"}},"description":""},"VulnerabilityCvssV2":{"type":"object","discriminator":"","properties":{"accessComplexity":{"type":"string","example":"M","description":"Access Complexity (AC) component which measures the complexity of the attack required to exploit the vulnerability once an attacker has gained access to the target system. \n| Access Complexity | Description | \n| ----------------------- | ------------------------------------------------------------------------ | \n| High (`\"H\"`) | Specialized access conditions exist. | \n| Medium (`\"M\"`) | The access conditions are somewhat specialized. | \n| Low (`\"L\"`) | Specialized access conditions or extenuating circumstances do not exist. |","enum":["L","M","H"]},"accessVector":{"type":"string","example":"L","description":"Access Vector (Av) component which reflects how the vulnerability is exploited. \n| Access Vector | Description | \n| -------------------------- | ----------- | \n| Local (`\"L\"`) | A vulnerability exploitable with only local access requires the attacker to have either physical access to the vulnerable system or a local (shell) account. | \n| Adjacent Network (`\"A\"`) | A vulnerability exploitable with adjacent network access requires the attacker to have access to either the broadcast or collision domain of the vulnerable software. | \n| Network (`\"N\"`) | A vulnerability exploitable with network access means the vulnerable software is bound to the network stack and the attacker does not require local network access or local access. Such a vulnerability is often termed \"remotely exploitable\". | \n","enum":["L","A","N"]},"authentication":{"type":"string","example":"N","description":"Authentication (Au) component which measures the number of times an attacker must authenticate to a target in order to exploit a vulnerability. \n| Authentication | Description | \n| -------------------- | ----------- | \n| Multiple (`\"M\"`) | Exploiting the vulnerability requires that the attacker authenticate two or more times, even if the same credentials are used each time. | \n| Single (`\"S\"`) | The vulnerability requires an attacker to be logged into the system. | \n| None (`\"N\"`) | Authentication is not required to exploit the vulnerability. |","enum":["N","S","M"]},"availabilityImpact":{"type":"string","example":"P","description":"Availability Impact (A) component which measures the impact to availability of a successfully exploited vulnerability. \n| Availability Impact | Description | \n| -------------------------- | ------------ | \n| None (`\"N\"`) | There is no impact to the availability of the system. | \n| Partial (`\"P\"`) | There is reduced performance or interruptions in resource availability. | \n| Complete (`\"C\"`) | There is a total shutdown of the affected resource. The attacker can render the resource completely unavailable. |","enum":["N","P","C"]},"confidentialityImpact":{"type":"string","example":"P","description":"Confidentiality Impact (C) component which measures the impact on confidentiality of a successfully exploited vulnerability. \n| Confidentiality Impact | Description | \n| -------------------------- | ------------ | \n| None (`\"N\"`) | There is no impact to the confidentiality of the system. | \n| Partial (`\"P\"`) | There is considerable informational disclosure. Access to some system files is possible, but the attacker does not have control over what is obtained, or the scope of the loss is constrained. | \n| Complete (`\"C\"`) | There is total information disclosure, resulting in all system files being revealed. The attacker is able to read all of the system's data (memory, files, etc.) | ","enum":["N","P","C"]},"exploitScore":{"type":"number","format":"double","example":3.3926,"description":"The CVSS exploit score."},"impactScore":{"type":"number","format":"double","example":6.443,"description":"The CVSS impact score."},"integrityImpact":{"type":"string","example":"P","description":"Integrity Impact (I) component measures the impact to integrity of a successfully exploited vulnerability. \n| Integrity Impact | Description | \n| -------------------------- | ------------ | \n| None (`\"N\"`) | There is no impact to the integrity of the system. | \n| Partial (`\"P\"`) | Modification of some system files or information is possible, but the attacker does not have control over what can be modified, or the scope of what the attacker can affect is limited. | \n| Complete (`\"C\"`) | There is a total compromise of system integrity. There is a complete loss of system protection, resulting in the entire system being compromised. The attacker is able to modify any files on the target system. |","enum":["N","P","C"]},"score":{"type":"number","format":"double","example":4.4,"description":"The CVSS score, which ranges from 0-10."},"vector":{"type":"string","example":"AV:L/AC:M/Au:N/C:P/I:P/A:P","description":"The CVSS v2 vector."}},"description":""},"VulnerabilityCvssV3":{"type":"object","discriminator":"","properties":{"attackComplexity":{"type":"string","example":"H","description":"Access Complexity (AC) component with measures the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. \n| Access Complexity | Description | \n| ---------------------- | ------------------------------------------------------------------------ | \n| Low (`\"L\"`) | Specialized access conditions or extenuating circumstances do not exist. | \n| High (`\"H\"`) | A successful attack depends on conditions beyond the attacker's control. |","enum":["L","H"]},"attackVector":{"type":"string","example":"N","description":"Attack Vector (AV) component which measures context by which vulnerability exploitation is possible. \n| Access Vector | Description | \n| ---------------------- | ------------------------------------------------------------------------ | \n| Local (`\"L\"`) | A vulnerability exploitable with only local access requires the attacker to have either physical access to the vulnerable system or a local (shell) account. | \n| Adjacent (`\"A\"`) | A vulnerability exploitable with adjacent network access requires the attacker to have access to either the broadcast or collision domain of the vulnerable software. | \n| Network (`\"N\"`) | A vulnerability exploitable with network access means the vulnerable software is bound to the network stack and the attacker does not require local network access or local access. Such a vulnerability is often termed \"remotely exploitable\". | \n","enum":["N","A","L","P"]},"availabilityImpact":{"type":"string","example":"H","description":"Availability Impact (A) measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. \n| Availability Impact | Description | \n| -------------------------- | ------------ | \n| High (`\"H\"`) | There is total loss of availability, resulting in the attacker being able to fully deny access to resources in the impacted component; this loss is either sustained (while the attacker continues to deliver the attack) or persistent (the condition persists even after the attack has completed). | \n| Low (`\"L\"`) | There is reduced performance or interruptions in resource availability. Even if repeated exploitation of the vulnerability is possible, the attacker does not have the ability to completely deny service to legitimate users. | \n| None (`\"N\"`) | There is no impact to availability within the impacted component. |","enum":["N","L","H"]},"confidentialityImpact":{"type":"string","example":"H","description":"Confidentiality Impact (C) component which measures the impact on confidentiality of a successfully exploited vulnerability. \n| Confidentiality Impact | Description | \n| -------------------------- | ------------ | \n| High (`\"H\"`) | There is total loss of confidentiality, resulting in all resources within the impacted component being divulged to the attacker. | \n| Low (`\"L\"`) | There is some loss of confidentiality. Access to some restricted information is obtained, but the attacker does not have control over what information is obtained, or the amount or kind of loss is constrained. | \n| None (`\"N\"`) | There is no loss of confidentiality within the impacted component. |","enum":["N","L","H"]},"exploitScore":{"type":"number","format":"double","example":1.6201,"description":"The CVSS impact score."},"impactScore":{"type":"number","format":"double","example":5.8731,"description":"The CVSS exploit score."},"integrityImpact":{"type":"string","example":"H","description":"Integrity Impact (I) measures the impact to integrity of a successfully exploited vulnerability. Integrity refers to the trustworthiness and veracity of information. \n| Integrity Impact | Description | \n| ------------------- | ------------ | \n| High (`\"H\"`) | There is a total loss of integrity, or a complete loss of protection. | \n| Low (`\"L\"`) | Modification of data is possible, but the attacker does not have control over the consequence of a modification, or the amount of modification is constrained. | \n| None (`\"N\"`) | There is no loss of integrity within the impacted component. |","enum":["N","L","H"]},"privilegeRequired":{"type":"string","example":"N","description":"Privileges Required (PR) measures the level of privileges an attacker must possess before successfully exploiting the vulnerability. \n| Privileges Required (PR) | Description | \n| ---------------------------- | ------------------------------------------------------------------------ | \n| None (`\"N\"`) | The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files to carry out an attack. | \n| Low (`\"L\"`) | The attacker is authorized with (i.e. requires) privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. | \n| High (`\"H\"`) | The attacker is authorized with (i.e. requires) privileges that provide significant (e.g. administrative) control over the vulnerable component that could affect component-wide settings and files. |","enum":["N","L","H"]},"scope":{"type":"string","example":"U","description":"Scope (S) measures the collection of privileges defined by a computing authority (e.g. an application, an operating system, or a sandbox environment) when granting access to computing resources (e.g. files, CPU, memory, etc). These privileges are assigned based on some method of identification and authorization. \n| Scope (S) | Description | \n| -------------------- | ------------------------------------------------------------------------ | \n| Unchanged (`\"U\"`) | An exploited vulnerability can only affect resources managed by the same authority. In this case the vulnerable component and the impacted component are the same. | \n| Changed (`\"C\"`) | An exploited vulnerability can affect resources beyond the authorization privileges intended by the vulnerable component. In this case the vulnerable component and the impacted component are different. |","enum":["U","C"]},"score":{"type":"number","format":"double","example":7.5,"description":"The CVSS score, which ranges from 0-10."},"userInteraction":{"type":"string","example":"R","description":"User Interaction (UI) measures the requirement for a user, other than the attacker, to participate in the successful compromise of the vulnerable component. \n| User Interaction (UI) | Description | \n| ---------------------------- | ------------------------------------------------------------------------- | \n| None (`\"N\"`) | The vulnerable system can be exploited without interaction from any user. | \n| Required (`\"R\"`) | Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited. |","enum":["N","R"]},"vector":{"type":"string","example":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","description":"The CVSS v3 vector."}},"description":""},"VulnerabilityEvents":{"type":"object","required":["confirmedVulnerabilities","potentialVulnerabilities","unconfirmedVulnerabilities","vulnerabilitySeverity"],"discriminator":"","properties":{"confirmedVulnerabilities":{"type":"boolean","example":false,"description":"Generates an alert for vulnerability results of confirmed vulnerabilties. A vulnerability is \"confirmed\" when asset-specific vulnerability tests, such as exploits, produce positive results. Default value is `true`."},"potentialVulnerabilities":{"type":"boolean","example":false,"description":"Generates an alert for vulnerability results of potential vulnerabilties. A vulnerability is \"potential\" if a check for a potential vulnerabilty is positive. Default value is `true`."},"unconfirmedVulnerabilities":{"type":"boolean","example":false,"description":"Generates an alert for vulnerability results of unconfirmed vulnerabilties. A vulnerability is \"unconfirmed\" when a version of a scanned service or software is known to be vulnerable, but there is no positive verification. Default value is `true`."},"vulnerabilitySeverity":{"type":"string","example":"","description":"Generates an alert for vulnerability results of the selected vulnerability severity. Default value is `\"any_severity\"`.","enum":["any_severity","severe_and_critical","only_critical"]}},"description":""},"VulnerabilityException":{"type":"object","discriminator":"","properties":{"expires":{"type":"string","example":"","description":"The date and time the vulnerability exception is set to expire."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the vulnerability exception.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"review":{"example":"","description":"Details regarding the review and/or approval of the exception.","readOnly":true,"$ref":"#/definitions/Review"},"scope":{"example":"","description":"The scope of the vulnerability exception, indicating the results it applies to.","$ref":"#/definitions/ExceptionScope"},"state":{"type":"string","example":"","description":"The state of the vulnerability exception. One of: `\"Deleted\"`, `\"Expired\"`, `\"Approved\"`, `\"Rejected\"`, `\"Under Review\"."},"submit":{"example":"","description":"Details regarding the submission of the exception.","readOnly":true,"$ref":"#/definitions/Submission"}},"description":""},"VulnerabilityFinding":{"type":"object","required":["id","instances","status"],"discriminator":"","properties":{"id":{"type":"string","example":"ssh-openssh-x11uselocalhost-x11-forwarding-session-hijack","description":"The identifier of the vulnerability."},"instances":{"type":"integer","format":"int32","example":1,"description":"The number of vulnerable occurrences of the vulnerability. This does not include `invulnerable` instances."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"results":{"type":"array","description":"The vulnerability check results for the finding. Multiple instances may be present if one or more checks fired, or a check has multiple independent results.","items":{"$ref":"#/definitions/AssessmentResult"}},"status":{"type":"string","example":"vulnerable","description":"The status of the finding.","enum":["vulnerable","invulnerable","no-results"]}},"description":""},"VulnerabilityReference":{"type":"object","discriminator":"","properties":{"advisory":{"example":"","description":"Hypermedia link to the destination of the vulnerability reference.","$ref":"#/definitions/AdvisoryLink"},"id":{"type":"integer","format":"int32","example":157986,"description":"The identifier of the vulnerability reference."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"reference":{"type":"string","example":"4041689","description":"The contents of the reference, typically an identifier or hyperlink. Example: `\"CVE-2011-0762\"`"},"source":{"type":"string","example":"mskb","description":"The originating source of the reference. Examples: `\"url\"`, `\"cve\"`, `\"bid\"`, `\"redhat\"`"}},"description":""},"VulnerabilityValidationResource":{"type":"object","discriminator":"","properties":{"date":{"type":"string","example":"2017-12-21T04:54:32.314Z","description":"The date and time the vulnerability was validated, in the ISO8601 format."},"id":{"type":"integer","format":"int64","example":46,"description":"The identifier of the vulnerability validation.","readOnly":true},"links":{"type":"array","items":{"$ref":"#/definitions/Link"}},"source":{"example":"","description":"The source used to validate the vulnerability.","$ref":"#/definitions/VulnerabilityValidationSource"}},"description":""},"VulnerabilityValidationSource":{"type":"object","discriminator":"","properties":{"key":{"type":"string","example":"exploit/windows/iis/iis_webdav_scstoragepathfromurl","description":"The identifier or name of the exploit that was used to validate the vulnerability."},"name":{"type":"string","example":"metasploit","description":"The name of the source used to validate the vulnerability.","enum":["metasploit","other"]}},"description":""},"WebApplication":{"type":"object","discriminator":"","properties":{"id":{"type":"integer","format":"int64","example":30712,"description":"The identifier of the web application."},"pages":{"type":"array","description":"The pages discovered on the web application.","items":{"$ref":"#/definitions/WebPage"}},"root":{"type":"string","example":"/","description":"The web root of the web application."},"virtualHost":{"type":"string","example":"102.89.22.253","description":"The virtual host of the web application."}},"description":""},"WebFormAuthentication":{"type":"object","discriminator":"","properties":{"baseURL":{"type":"string","example":"","description":"The base URL is the main address from which all paths in the target Web site begin. Includes the protocol. Example: http://acme.com."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the HTML form web authentication is enabled for the site's scans."},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the HTML form web authentication."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"loginRegularExpression":{"type":"string","example":"","description":"The regular expression matches the message that the Web server returns if the login attempt fails."},"loginURL":{"type":"string","example":"","description":"The login page URL contains form for logging on. Include the base URL. Example: http://acme.com/login."},"name":{"type":"string","example":"","description":"The HTML form web authentication name."},"service":{"type":"string","example":"","description":"Value indicating whether this web authentication configuration is for HTML form authentication or HTTP header authentication.","enum":["html-form","http-header"]}},"description":""},"WebHeaderAuthentication":{"type":"object","discriminator":"","properties":{"baseURL":{"type":"string","example":"","description":"The base URL is the main address from which all paths in the target Web site begin. Includes the protocol. Example: http://acme.com."},"enabled":{"type":"boolean","example":false,"description":"Flag indicating whether the HTTP header web authentication is enabled for the site's scans."},"headers":{"type":"object","example":"","description":"A map of HTTP headers the scan engine will use when negotiating with the Web server for an \"authenticated\" page. Make sure that the session ID is valid between the time you save this ID for the site and when you start the scan. Note: This property is not returned in responses for security.","additionalProperties":{"type":"string"}},"id":{"type":"integer","format":"int32","example":"","description":"The identifier of the HTTP header web authentication."},"links":{"type":"array","description":"Hypermedia links to corresponding or related resources.","readOnly":true,"items":{"$ref":"#/definitions/Link"}},"loginRegularExpression":{"type":"string","example":"","description":"The regular expression matches the message that the Web server returns if the login attempt fails."},"name":{"type":"string","example":"","description":"The HTTP header web authentication name."},"service":{"type":"string","example":"","description":"Value indicating whether this web authentication configuration is for HTML form authentication or HTTP header authentication.","enum":["html-form","http-header"]}},"description":""},"WebPage":{"type":"object","discriminator":"","properties":{"linkType":{"type":"string","example":"html-ref","description":"The type of link used to traverse or detect the page.","enum":["seed","html-ref","robots","js-string","query-param","pdf","css","implied-dir","rss","redirection","sitemap","backup","vck-rewrite","non-ref-guess","soft-404"]},"path":{"type":"string","example":"/docs/config/index.html","description":"The path to the page (URI)."},"response":{"type":"integer","format":"int32","example":200,"description":"The HTTP response code observed with retrieving the page."}},"description":""},"WebSettings":{"type":"object","discriminator":"","properties":{"maxThreads":{"type":"integer","format":"int32","example":100,"description":"The maximum number of request handling threads."},"minThreads":{"type":"integer","format":"int32","example":10,"description":"The minimum number of request handling threads."},"port":{"type":"integer","format":"int32","example":3780,"description":"The port the web server is accepting requests."},"sessionTimeout":{"type":"string","example":"PT10M","description":"Session timeout duration, in ISO 8601 format. For example: `\"PT10M\"`."}},"description":""}}}
\ No newline at end of file
diff --git a/docs/Account.md b/docs/Account.md
new file mode 100644
index 0000000..be66cd8
--- /dev/null
+++ b/docs/Account.md
@@ -0,0 +1,8 @@
+# Rapid7VmConsole::Account
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**service** | **String** | | [optional]
+
+
diff --git a/docs/AdditionalInformation.md b/docs/AdditionalInformation.md
new file mode 100644
index 0000000..53ab9c9
--- /dev/null
+++ b/docs/AdditionalInformation.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::AdditionalInformation
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**html** | **String** | Hypertext Markup Language (HTML) representation of the content. | [optional]
+**text** | **String** | Textual representation of the content. | [optional]
+
+
diff --git a/docs/Address.md b/docs/Address.md
new file mode 100644
index 0000000..ec2e163
--- /dev/null
+++ b/docs/Address.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::Address
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**ip** | **String** | The IPv4 or IPv6 address. | [optional]
+**mac** | **String** | The Media Access Control (MAC) address. The format is six groups of two hexadecimal digits separated by colons. | [optional]
+
+
diff --git a/docs/AdhocScan.md b/docs/AdhocScan.md
new file mode 100644
index 0000000..87dea0f
--- /dev/null
+++ b/docs/AdhocScan.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::AdhocScan
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**engine_id** | **Integer** | The identifier of the scan engine. | [optional]
+**hosts** | **Array<String>** | The hosts that should be included as a part of the scan. This should be a mixture of IP Addresses and Hostnames as a String array. | [optional]
+**name** | **String** | The user-driven scan name for the scan. | [optional]
+**template_id** | **String** | The identifier of the scan template | [optional]
+
+
diff --git a/docs/AdministrationApi.md b/docs/AdministrationApi.md
new file mode 100644
index 0000000..33af437
--- /dev/null
+++ b/docs/AdministrationApi.md
@@ -0,0 +1,276 @@
+# Rapid7VmConsole::AdministrationApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**activate_license**](AdministrationApi.md#activate_license) | **POST** /api/3/administration/license | License
+[**execute_command**](AdministrationApi.md#execute_command) | **POST** /api/3/administration/commands | Console Commands
+[**get_info**](AdministrationApi.md#get_info) | **GET** /api/3/administration/info | Information
+[**get_license**](AdministrationApi.md#get_license) | **GET** /api/3/administration/license | License
+[**get_properties**](AdministrationApi.md#get_properties) | **GET** /api/3/administration/properties | Properties
+[**get_settings**](AdministrationApi.md#get_settings) | **GET** /api/3/administration/settings | Settings
+
+
+# **activate_license**
+> Links activate_license(opts)
+
+License
+
+Licenses the product with an activation key or a provided license file. If both are provided, the license file is preferred. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AdministrationApi.new
+
+opts = {
+ license: File.new("/path/to/file.txt"), # File | The contents of a license (.lic) file.
+ key: "key_example" # String | A license activation key.
+}
+
+begin
+ #License
+ result = api_instance.activate_license(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AdministrationApi->activate_license: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **license** | **File**| The contents of a license (.lic) file. | [optional]
+ **key** | **String**| A license activation key. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: multipart/form-data
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **execute_command**
+> ConsoleCommandOutput execute_command(opts)
+
+Console Commands
+
+Executes a console command against the Security Console. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AdministrationApi.new
+
+opts = {
+ param0: "param0_example" # String | The console command to execute.
+}
+
+begin
+ #Console Commands
+ result = api_instance.execute_command(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AdministrationApi->execute_command: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | **String**| The console command to execute. | [optional]
+
+### Return type
+
+[**ConsoleCommandOutput**](ConsoleCommandOutput.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_info**
+> Info get_info
+
+Information
+
+Returns system details, including host and version information.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AdministrationApi.new
+
+begin
+ #Information
+ result = api_instance.get_info
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AdministrationApi->get_info: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Info**](Info.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_license**
+> License get_license
+
+License
+
+Returns the enabled features and limits of the current license. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AdministrationApi.new
+
+begin
+ #License
+ result = api_instance.get_license
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AdministrationApi->get_license: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**License**](License.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_properties**
+> EnvironmentProperties get_properties
+
+Properties
+
+Returns system details, including host and version information.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AdministrationApi.new
+
+begin
+ #Properties
+ result = api_instance.get_properties
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AdministrationApi->get_properties: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**EnvironmentProperties**](EnvironmentProperties.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_settings**
+> Settings get_settings
+
+Settings
+
+Returns the current administration settings. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AdministrationApi.new
+
+begin
+ #Settings
+ result = api_instance.get_settings
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AdministrationApi->get_settings: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Settings**](Settings.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/AdvisoryLink.md b/docs/AdvisoryLink.md
new file mode 100644
index 0000000..9b31516
--- /dev/null
+++ b/docs/AdvisoryLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::AdvisoryLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**href** | **String** | The hypertext reference for the vulnerability reference. | [optional]
+**rel** | **String** | The relation of the hypermedia link, `\"Advisory\"`. | [optional]
+
+
diff --git a/docs/Alert.md b/docs/Alert.md
new file mode 100644
index 0000000..d9b73df
--- /dev/null
+++ b/docs/Alert.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::Alert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**enabled** | **BOOLEAN** | Flag indicating the alert is enabled. |
+**enabled_scan_events** | [**ScanEvents**](ScanEvents.md) | Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`. | [optional]
+**enabled_vulnerability_events** | [**VulnerabilityEvents**](VulnerabilityEvents.md) | Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`. | [optional]
+**id** | **Integer** | The identifier of the alert. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**maximum_alerts** | **Integer** | The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`. | [optional]
+**name** | **String** | The name of the alert. |
+**notification** | **String** | The type of alert. |
+
+
diff --git a/docs/AssessmentResult.md b/docs/AssessmentResult.md
new file mode 100644
index 0000000..cc5554a
--- /dev/null
+++ b/docs/AssessmentResult.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::AssessmentResult
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**check_id** | **String** | The identifier of the vulnerability check. | [optional]
+**exceptions** | **Array<Integer>** | If the result is vulnerable with exceptions applied, the identifier(s) of the exceptions actively applied to the result. | [optional]
+**key** | **String** | An additional discriminating key used to uniquely identify between multiple instances of results on the same finding. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**port** | **Integer** | The port of the service the result was discovered on. | [optional]
+**proof** | **String** | The proof explaining why the result was found vulnerable. The proof may container embedded HTML formatting markup. | [optional]
+**protocol** | **String** | The protocol of the service the result was discovered on. | [optional]
+**status** | **String** | The status of the vulnerability check result. |
+
+
diff --git a/docs/Asset.md b/docs/Asset.md
new file mode 100644
index 0000000..c6c4a24
--- /dev/null
+++ b/docs/Asset.md
@@ -0,0 +1,31 @@
+# Rapid7VmConsole::Asset
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**addresses** | [**Array<Address>**](Address.md) | All addresses discovered on the asset. | [optional]
+**assessed_for_policies** | **BOOLEAN** | Whether the asset has been assessed for policies at least once. | [optional]
+**assessed_for_vulnerabilities** | **BOOLEAN** | Whether the asset has been assessed for vulnerabilities at least once. | [optional]
+**configurations** | [**Array<Configuration>**](Configuration.md) | Configuration key-values pairs enumerated on the asset. | [optional]
+**databases** | [**Array<Database>**](Database.md) | The databases enumerated on the asset. | [optional]
+**files** | **Array<File>** | The files discovered with searching on the asset. | [optional]
+**history** | [**Array<AssetHistory>**](AssetHistory.md) | The history of changes to the asset over time. | [optional]
+**host_name** | **String** | The primary host name (local or FQDN) of the asset. | [optional]
+**host_names** | [**Array<HostName>**](HostName.md) | All host names or aliases discovered on the asset. | [optional]
+**id** | **Integer** | The identifier of the asset. | [optional]
+**ids** | [**Array<UniqueId>**](UniqueId.md) | Unique identifiers found on the asset, such as hardware or operating system identifiers. | [optional]
+**ip** | **String** | The primary IPv4 or IPv6 address of the asset. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**mac** | **String** | The primary Media Access Control (MAC) address of the asset. The format is six groups of two hexadecimal digits separated by colons. | [optional]
+**os** | **String** | The full description of the operating system of the asset. | [optional]
+**os_fingerprint** | [**OperatingSystem**](OperatingSystem.md) | The details of the operating system of the asset. | [optional]
+**raw_risk_score** | **Float** | The base risk score of the asset. | [optional]
+**risk_score** | **Float** | The risk score (with criticality adjustments) of the asset. | [optional]
+**services** | [**Array<Service>**](Service.md) | The services discovered on the asset. | [optional]
+**software** | [**Array<Software>**](Software.md) | The software discovered on the asset. | [optional]
+**type** | **String** | The type of asset. | [optional]
+**user_groups** | [**Array<GroupAccount>**](GroupAccount.md) | The group accounts enumerated on the asset. | [optional]
+**users** | [**Array<UserAccount>**](UserAccount.md) | The user accounts enumerated on the asset. | [optional]
+**vulnerabilities** | [**AssetVulnerabilities**](AssetVulnerabilities.md) | Summary information for vulnerabilities on the asset. | [optional]
+
+
diff --git a/docs/AssetApi.md b/docs/AssetApi.md
new file mode 100644
index 0000000..1affb37
--- /dev/null
+++ b/docs/AssetApi.md
@@ -0,0 +1,1286 @@
+# Rapid7VmConsole::AssetApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**add_asset_tag**](AssetApi.md#add_asset_tag) | **PUT** /api/3/assets/{id}/tags/{tagId} | Asset Tag
+[**create_asset**](AssetApi.md#create_asset) | **POST** /api/3/sites/{id}/assets | Assets
+[**delete_asset**](AssetApi.md#delete_asset) | **DELETE** /api/3/assets/{id} | Asset
+[**find_assets**](AssetApi.md#find_assets) | **POST** /api/3/assets/search | Asset Search
+[**get_asset**](AssetApi.md#get_asset) | **GET** /api/3/assets/{id} | Asset
+[**get_asset_databases**](AssetApi.md#get_asset_databases) | **GET** /api/3/assets/{id}/databases | Asset Databases
+[**get_asset_files**](AssetApi.md#get_asset_files) | **GET** /api/3/assets/{id}/files | Asset Files
+[**get_asset_service**](AssetApi.md#get_asset_service) | **GET** /api/3/assets/{id}/services/{protocol}/{port} | Asset Service
+[**get_asset_service_configurations**](AssetApi.md#get_asset_service_configurations) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/configurations | Asset Service Configurations
+[**get_asset_service_databases**](AssetApi.md#get_asset_service_databases) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/databases | Asset Service Databases
+[**get_asset_service_user_groups**](AssetApi.md#get_asset_service_user_groups) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/user_groups | Asset Service User Groups
+[**get_asset_service_users**](AssetApi.md#get_asset_service_users) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/users | Asset Service Users
+[**get_asset_service_web_application**](AssetApi.md#get_asset_service_web_application) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/web_applications/{webApplicationId} | Asset Service Web Application
+[**get_asset_service_web_applications**](AssetApi.md#get_asset_service_web_applications) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/web_applications | Asset Service Web Applications
+[**get_asset_services**](AssetApi.md#get_asset_services) | **GET** /api/3/assets/{id}/services | Asset Services
+[**get_asset_software**](AssetApi.md#get_asset_software) | **GET** /api/3/assets/{id}/software | Asset Software
+[**get_asset_tags**](AssetApi.md#get_asset_tags) | **GET** /api/3/assets/{id}/tags | Asset Tags
+[**get_asset_user_groups**](AssetApi.md#get_asset_user_groups) | **GET** /api/3/assets/{id}/user_groups | Asset User Groups
+[**get_asset_users**](AssetApi.md#get_asset_users) | **GET** /api/3/assets/{id}/users | Asset Users
+[**get_assets**](AssetApi.md#get_assets) | **GET** /api/3/assets | Assets
+[**get_operating_system**](AssetApi.md#get_operating_system) | **GET** /api/3/operating_systems/{id} | Operating System
+[**get_operating_systems**](AssetApi.md#get_operating_systems) | **GET** /api/3/operating_systems | Operating Systems
+[**get_software**](AssetApi.md#get_software) | **GET** /api/3/software/{id} | Software
+[**get_softwares**](AssetApi.md#get_softwares) | **GET** /api/3/software | Software
+[**remove_asset_tag**](AssetApi.md#remove_asset_tag) | **DELETE** /api/3/assets/{id}/tags/{tagId} | Asset Tag
+
+
+# **add_asset_tag**
+> Links add_asset_tag(id, tag_id)
+
+Asset Tag
+
+Assigns the specified tag to the asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+tag_id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Asset Tag
+ result = api_instance.add_asset_tag(id, tag_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->add_asset_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **tag_id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_asset**
+> CreatedReference create_asset(id, opts)
+
+Assets
+
+Creates or updates an asset with the specified details.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param1: Rapid7VmConsole::AssetCreate.new # AssetCreate | The details of the asset being added or updated. The operating system can be specified in one of three ways, with the order of precedence: `\"osFingerprint\"`, `\"os\"`, `\"cpe\"`
+}
+
+begin
+ #Assets
+ result = api_instance.create_asset(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->create_asset: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param1** | [**AssetCreate**](AssetCreate.md)| The details of the asset being added or updated. The operating system can be specified in one of three ways, with the order of precedence: `\"osFingerprint\"`, `\"os\"`, `\"cpe\"` | [optional]
+
+### Return type
+
+[**CreatedReference**](CreatedReference.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_asset**
+> Links delete_asset(id)
+
+Asset
+
+Deletes the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset
+ result = api_instance.delete_asset(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->delete_asset: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **find_assets**
+> PageOfAsset find_assets(param1, opts)
+
+Asset Search
+
+Returns all assets for which you have access that match the given search criteria.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+param1 = Rapid7VmConsole::SearchCriteria.new # SearchCriteria | param1
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Asset Search
+ result = api_instance.find_assets(param1, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->find_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param1** | [**SearchCriteria**](SearchCriteria.md)| param1 |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfAsset**](PageOfAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset**
+> Asset get_asset(id)
+
+Asset
+
+Returns the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset
+ result = api_instance.get_asset(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**Asset**](Asset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_databases**
+> ResourcesDatabase get_asset_databases(id)
+
+Asset Databases
+
+Returns the databases enumerated on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Databases
+ result = api_instance.get_asset_databases(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_databases: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ResourcesDatabase**](ResourcesDatabase.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_files**
+> ResourcesFile get_asset_files(id)
+
+Asset Files
+
+Returns the files discovered on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Files
+ result = api_instance.get_asset_files(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_files: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ResourcesFile**](ResourcesFile.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service**
+> Service get_asset_service(id, protocol, port)
+
+Asset Service
+
+Returns the service running a port and protocol on the asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+
+begin
+ #Asset Service
+ result = api_instance.get_asset_service(id, protocol, port)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_service: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+
+### Return type
+
+[**Service**](Service.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service_configurations**
+> ResourcesConfiguration get_asset_service_configurations(id, protocol, port)
+
+Asset Service Configurations
+
+Returns the configuration (properties) of a port and protocol on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+
+begin
+ #Asset Service Configurations
+ result = api_instance.get_asset_service_configurations(id, protocol, port)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_service_configurations: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+
+### Return type
+
+[**ResourcesConfiguration**](ResourcesConfiguration.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service_databases**
+> ResourcesDatabase get_asset_service_databases(id, protocol, port)
+
+Asset Service Databases
+
+Returns the databases running on a port and protocol on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+
+begin
+ #Asset Service Databases
+ result = api_instance.get_asset_service_databases(id, protocol, port)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_service_databases: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+
+### Return type
+
+[**ResourcesDatabase**](ResourcesDatabase.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service_user_groups**
+> ResourcesGroupAccount get_asset_service_user_groups(id, protocol, port)
+
+Asset Service User Groups
+
+Returns the user groups enumerated on a port and protocol on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+
+begin
+ #Asset Service User Groups
+ result = api_instance.get_asset_service_user_groups(id, protocol, port)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_service_user_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+
+### Return type
+
+[**ResourcesGroupAccount**](ResourcesGroupAccount.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service_users**
+> ResourcesUserAccount get_asset_service_users(id, protocol, port)
+
+Asset Service Users
+
+Returns the users enumerated on a port and protocol on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+
+begin
+ #Asset Service Users
+ result = api_instance.get_asset_service_users(id, protocol, port)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_service_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+
+### Return type
+
+[**ResourcesUserAccount**](ResourcesUserAccount.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service_web_application**
+> WebApplication get_asset_service_web_application(id, protocol, port, web_application_id)
+
+Asset Service Web Application
+
+Returns a web application running on a port and protocol on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+web_application_id = 789 # Integer | The identifier of the web application.
+
+
+begin
+ #Asset Service Web Application
+ result = api_instance.get_asset_service_web_application(id, protocol, port, web_application_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_service_web_application: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+ **web_application_id** | **Integer**| The identifier of the web application. |
+
+### Return type
+
+[**WebApplication**](WebApplication.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service_web_applications**
+> ReferencesWithWebApplicationIDLink get_asset_service_web_applications(id, protocol, port)
+
+Asset Service Web Applications
+
+Returns the web applications running on a port and protocol on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+
+begin
+ #Asset Service Web Applications
+ result = api_instance.get_asset_service_web_applications(id, protocol, port)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_service_web_applications: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+
+### Return type
+
+[**ReferencesWithWebApplicationIDLink**](ReferencesWithWebApplicationIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_services**
+> ReferencesWithReferenceWithEndpointIDLinkServiceLink get_asset_services(id)
+
+Asset Services
+
+Returns the services discovered on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Services
+ result = api_instance.get_asset_services(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_services: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ReferencesWithReferenceWithEndpointIDLinkServiceLink**](ReferencesWithReferenceWithEndpointIDLinkServiceLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_software**
+> ResourcesSoftware get_asset_software(id)
+
+Asset Software
+
+Returns the software on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Software
+ result = api_instance.get_asset_software(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_software: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ResourcesSoftware**](ResourcesSoftware.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_tags**
+> ResourcesAssetTag get_asset_tags(id)
+
+Asset Tags
+
+Returns tags assigned to an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Tags
+ result = api_instance.get_asset_tags(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_tags: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ResourcesAssetTag**](ResourcesAssetTag.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_user_groups**
+> ResourcesGroupAccount get_asset_user_groups(id)
+
+Asset User Groups
+
+Returns user groups enumerated on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset User Groups
+ result = api_instance.get_asset_user_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_user_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ResourcesGroupAccount**](ResourcesGroupAccount.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_users**
+> ResourcesUserAccount get_asset_users(id)
+
+Asset Users
+
+Returns users enumerated on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Users
+ result = api_instance.get_asset_users(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_asset_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ResourcesUserAccount**](ResourcesUserAccount.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_assets**
+> PageOfAsset get_assets(opts)
+
+Assets
+
+Returns all assets for which you have access.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Assets
+ result = api_instance.get_assets(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfAsset**](PageOfAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_operating_system**
+> OperatingSystem get_operating_system(id)
+
+Operating System
+
+Returns the details for an operating system.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the operating system.
+
+
+begin
+ #Operating System
+ result = api_instance.get_operating_system(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_operating_system: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the operating system. |
+
+### Return type
+
+[**OperatingSystem**](OperatingSystem.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_operating_systems**
+> PageOfOperatingSystem get_operating_systems(opts)
+
+Operating Systems
+
+Returns all operating systems discovered across all assets.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Operating Systems
+ result = api_instance.get_operating_systems(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_operating_systems: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfOperatingSystem**](PageOfOperatingSystem.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_software**
+> Software get_software(id)
+
+Software
+
+Returns the details for software.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the software.
+
+
+begin
+ #Software
+ result = api_instance.get_software(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_software: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the software. |
+
+### Return type
+
+[**Software**](Software.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_softwares**
+> PageOfSoftware get_softwares(opts)
+
+Software
+
+Returns all software enumerated on any asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Software
+ result = api_instance.get_softwares(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->get_softwares: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfSoftware**](PageOfSoftware.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_asset_tag**
+> Links remove_asset_tag(id, tag_id)
+
+Asset Tag
+
+Removes the specified tag from the asset's tags.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+tag_id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Asset Tag
+ result = api_instance.remove_asset_tag(id, tag_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetApi->remove_asset_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **tag_id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/AssetCreate.md b/docs/AssetCreate.md
new file mode 100644
index 0000000..ce74eba
--- /dev/null
+++ b/docs/AssetCreate.md
@@ -0,0 +1,34 @@
+# Rapid7VmConsole::AssetCreate
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**addresses** | [**Array<Address>**](Address.md) | All addresses discovered on the asset. | [optional]
+**assessed_for_policies** | **BOOLEAN** | Whether the asset has been assessed for policies at least once. | [optional]
+**assessed_for_vulnerabilities** | **BOOLEAN** | Whether the asset has been assessed for vulnerabilities at least once. | [optional]
+**configurations** | [**Array<Configuration>**](Configuration.md) | Configuration key-values pairs enumerated on the asset. | [optional]
+**cpe** | **String** | The Common Platform Enumeration (CPE) of the operating system. This is the tertiary means of specifying the operating system fingerprint. Use `\"osFingerprint\"` or `\"os\"` as a more accurate means of defining the operating system. | [optional]
+**databases** | [**Array<Database>**](Database.md) | The databases enumerated on the asset. | [optional]
+**date** | **String** | The date the data was collected on the asset. |
+**description** | **String** | The description of the source or collection of information on the asset. This description will appear in the history of the asset for future auditing purposes. | [optional]
+**files** | **Array<File>** | The files discovered with searching on the asset. | [optional]
+**history** | [**Array<AssetHistory>**](AssetHistory.md) | The history of changes to the asset over time. | [optional]
+**host_name** | [**HostName**](HostName.md) | The primary host name (local or FQDN) of the asset. | [optional]
+**host_names** | [**Array<HostName>**](HostName.md) | Additional host names for the asset. | [optional]
+**id** | **Integer** | The identifier of the asset. | [optional]
+**ids** | [**Array<UniqueId>**](UniqueId.md) | Unique identifiers found on the asset, such as hardware or operating system identifiers. | [optional]
+**ip** | **String** | The primary IPv4 or IPv6 address of the asset. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**mac** | **String** | The primary Media Access Control (MAC) address of the asset. The format is six groups of two hexadecimal digits separated by colons. | [optional]
+**os** | **String** | Free-form textual description of the operating system of the asset, typically from a fingerprinting source. This input will be parsed to produce a full fingerprint. This is the secondary means of specifying the operating system. Use `osFingerprint` for a more accurate definition. | [optional]
+**os_fingerprint** | [**OperatingSystem**](OperatingSystem.md) | The details of the operating system of the asset. At least one of `vendor`, `family`, or `product` must be supplied. This is the preferred means of defining the operating system. | [optional]
+**raw_risk_score** | **Float** | The base risk score of the asset. | [optional]
+**risk_score** | **Float** | The risk score (with criticality adjustments) of the asset. | [optional]
+**services** | [**Array<Service>**](Service.md) | The services discovered on the asset. | [optional]
+**software** | [**Array<Software>**](Software.md) | The software discovered on the asset. | [optional]
+**type** | **String** | The type of asset. | [optional]
+**user_groups** | [**Array<GroupAccount>**](GroupAccount.md) | The group accounts enumerated on the asset. | [optional]
+**users** | [**Array<UserAccount>**](UserAccount.md) | The user accounts enumerated on the asset. | [optional]
+**vulnerabilities** | [**AssetVulnerabilities**](AssetVulnerabilities.md) | Summary information for vulnerabilities on the asset. | [optional]
+
+
diff --git a/docs/AssetCreatedOrUpdatedReference.md b/docs/AssetCreatedOrUpdatedReference.md
new file mode 100644
index 0000000..eb2bbf2
--- /dev/null
+++ b/docs/AssetCreatedOrUpdatedReference.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::AssetCreatedOrUpdatedReference
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**body** | [**ReferenceWithAssetIDLink**](ReferenceWithAssetIDLink.md) | | [optional]
+**status_code** | **String** | | [optional]
+
+
diff --git a/docs/AssetDiscoveryApi.md b/docs/AssetDiscoveryApi.md
new file mode 100644
index 0000000..03814e0
--- /dev/null
+++ b/docs/AssetDiscoveryApi.md
@@ -0,0 +1,489 @@
+# Rapid7VmConsole::AssetDiscoveryApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_sonar_query**](AssetDiscoveryApi.md#create_sonar_query) | **POST** /api/3/sonar_queries | Sonar Queries
+[**delete_sonar_query**](AssetDiscoveryApi.md#delete_sonar_query) | **DELETE** /api/3/sonar_queries/{id} | Sonar Query
+[**get_discovery_connection**](AssetDiscoveryApi.md#get_discovery_connection) | **GET** /api/3/discovery_connections/{id} | Discovery Connection
+[**get_discovery_connections**](AssetDiscoveryApi.md#get_discovery_connections) | **GET** /api/3/discovery_connections | Discovery Connections
+[**get_sonar_queries**](AssetDiscoveryApi.md#get_sonar_queries) | **GET** /api/3/sonar_queries | Sonar Queries
+[**get_sonar_query**](AssetDiscoveryApi.md#get_sonar_query) | **GET** /api/3/sonar_queries/{id} | Sonar Query
+[**get_sonar_query_assets**](AssetDiscoveryApi.md#get_sonar_query_assets) | **GET** /api/3/sonar_queries/{id}/assets | Sonar Query Assets
+[**reconnect_discovery_connection**](AssetDiscoveryApi.md#reconnect_discovery_connection) | **POST** /api/3/discovery_connections/{id}/connect | Discovery Connection Reconnect
+[**sonar_query_search**](AssetDiscoveryApi.md#sonar_query_search) | **POST** /api/3/sonar_queries/search | Sonar Query Search
+[**update_sonar_query**](AssetDiscoveryApi.md#update_sonar_query) | **PUT** /api/3/sonar_queries/{id} | Sonar Query
+
+
+# **create_sonar_query**
+> CreatedReferenceDiscoveryQueryIDLink create_sonar_query(param0)
+
+Sonar Queries
+
+Creates a sonar query.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+param0 = Rapid7VmConsole::SonarQuery.new # SonarQuery | param0
+
+
+begin
+ #Sonar Queries
+ result = api_instance.create_sonar_query(param0)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->create_sonar_query: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**SonarQuery**](SonarQuery.md)| param0 |
+
+### Return type
+
+[**CreatedReferenceDiscoveryQueryIDLink**](CreatedReferenceDiscoveryQueryIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_sonar_query**
+> Links delete_sonar_query(id)
+
+Sonar Query
+
+Removes a sonar query.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+id = 789 # Integer | The identifier of the Sonar query.
+
+
+begin
+ #Sonar Query
+ result = api_instance.delete_sonar_query(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->delete_sonar_query: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the Sonar query. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_discovery_connection**
+> DiscoveryConnection get_discovery_connection(id)
+
+Discovery Connection
+
+Returns a discovery connection.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+id = 789 # Integer | The identifier of the discovery connection.
+
+
+begin
+ #Discovery Connection
+ result = api_instance.get_discovery_connection(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->get_discovery_connection: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the discovery connection. |
+
+### Return type
+
+[**DiscoveryConnection**](DiscoveryConnection.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_discovery_connections**
+> PageOfDiscoveryConnection get_discovery_connections(opts)
+
+Discovery Connections
+
+Returns all discovery connections.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Discovery Connections
+ result = api_instance.get_discovery_connections(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->get_discovery_connections: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfDiscoveryConnection**](PageOfDiscoveryConnection.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_sonar_queries**
+> ResourcesSonarQuery get_sonar_queries
+
+Sonar Queries
+
+Returns all sonar queries.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+begin
+ #Sonar Queries
+ result = api_instance.get_sonar_queries
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->get_sonar_queries: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesSonarQuery**](ResourcesSonarQuery.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_sonar_query**
+> SonarQuery get_sonar_query(id)
+
+Sonar Query
+
+Returns a sonar query.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+id = 789 # Integer | The identifier of the Sonar query.
+
+
+begin
+ #Sonar Query
+ result = api_instance.get_sonar_query(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->get_sonar_query: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the Sonar query. |
+
+### Return type
+
+[**SonarQuery**](SonarQuery.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_sonar_query_assets**
+> ResourcesDiscoveryAsset get_sonar_query_assets(id)
+
+Sonar Query Assets
+
+Returns the assets that are discovered by a Sonar query.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+id = 789 # Integer | The identifier of the Sonar query.
+
+
+begin
+ #Sonar Query Assets
+ result = api_instance.get_sonar_query_assets(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->get_sonar_query_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the Sonar query. |
+
+### Return type
+
+[**ResourcesDiscoveryAsset**](ResourcesDiscoveryAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **reconnect_discovery_connection**
+> reconnect_discovery_connection(id)
+
+Discovery Connection Reconnect
+
+Attempts to reconnect the discovery connection.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+id = 789 # Integer | The identifier of the discovery connection.
+
+
+begin
+ #Discovery Connection Reconnect
+ api_instance.reconnect_discovery_connection(id)
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->reconnect_discovery_connection: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the discovery connection. |
+
+### Return type
+
+nil (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **sonar_query_search**
+> Array<DiscoveryAsset> sonar_query_search(param0)
+
+Sonar Query Search
+
+Executes a Sonar query to discover assets with the given search criteria.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+param0 = Rapid7VmConsole::SonarCriteria.new # SonarCriteria | param0
+
+
+begin
+ #Sonar Query Search
+ result = api_instance.sonar_query_search(param0)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->sonar_query_search: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**SonarCriteria**](SonarCriteria.md)| param0 |
+
+### Return type
+
+[**Array<DiscoveryAsset>**](DiscoveryAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_sonar_query**
+> Links update_sonar_query(id, param1)
+
+Sonar Query
+
+Updates a sonar query.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetDiscoveryApi.new
+
+id = 789 # Integer | The identifier of the Sonar query.
+
+param1 = Rapid7VmConsole::SonarQuery.new # SonarQuery | param1
+
+
+begin
+ #Sonar Query
+ result = api_instance.update_sonar_query(id, param1)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetDiscoveryApi->update_sonar_query: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the Sonar query. |
+ **param1** | [**SonarQuery**](SonarQuery.md)| param1 |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/AssetGroup.md b/docs/AssetGroup.md
new file mode 100644
index 0000000..4d4f068
--- /dev/null
+++ b/docs/AssetGroup.md
@@ -0,0 +1,16 @@
+# Rapid7VmConsole::AssetGroup
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | **Integer** | The number of assets that belong to the asset group. | [optional]
+**description** | **String** | The description of the asset group. | [optional]
+**id** | **Integer** | The identifier of the asset group. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the asset group. |
+**risk_score** | **Float** | The total risk score of all assets that belong to the asset group. | [optional]
+**search_criteria** | [**SearchCriteria**](SearchCriteria.md) | Search criteria used to determine dynamic membership, if `type` is `\"dynamic\"`. | [optional]
+**type** | **String** | The type of the asset group. |
+**vulnerabilities** | [**Vulnerabilities**](Vulnerabilities.md) | Summary information for distinct vulnerabilities found on the assets. | [optional]
+
+
diff --git a/docs/AssetGroupApi.md b/docs/AssetGroupApi.md
new file mode 100644
index 0000000..4807dc1
--- /dev/null
+++ b/docs/AssetGroupApi.md
@@ -0,0 +1,1064 @@
+# Rapid7VmConsole::AssetGroupApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**add_asset_group_tag**](AssetGroupApi.md#add_asset_group_tag) | **PUT** /api/3/asset_groups/{id}/tags/{tagId} | Asset Group Tag
+[**add_asset_group_user**](AssetGroupApi.md#add_asset_group_user) | **PUT** /api/3/asset_groups/{id}/users/{userId} | Asset Group User
+[**add_asset_to_asset_group**](AssetGroupApi.md#add_asset_to_asset_group) | **PUT** /api/3/asset_groups/{id}/assets/{assetId} | Asset Group Asset
+[**create_asset_group**](AssetGroupApi.md#create_asset_group) | **POST** /api/3/asset_groups | Asset Groups
+[**delete_asset_group**](AssetGroupApi.md#delete_asset_group) | **DELETE** /api/3/asset_groups/{id} | Asset Group
+[**get_asset_group**](AssetGroupApi.md#get_asset_group) | **GET** /api/3/asset_groups/{id} | Asset Group
+[**get_asset_group_assets**](AssetGroupApi.md#get_asset_group_assets) | **GET** /api/3/asset_groups/{id}/assets | Asset Group Assets
+[**get_asset_group_search_criteria**](AssetGroupApi.md#get_asset_group_search_criteria) | **GET** /api/3/asset_groups/{id}/search_criteria | Asset Group Search Criteria
+[**get_asset_group_tags**](AssetGroupApi.md#get_asset_group_tags) | **GET** /api/3/asset_groups/{id}/tags | Asset Group Tags
+[**get_asset_group_users**](AssetGroupApi.md#get_asset_group_users) | **GET** /api/3/asset_groups/{id}/users | Asset Group Users
+[**get_asset_groups**](AssetGroupApi.md#get_asset_groups) | **GET** /api/3/asset_groups | Asset Groups
+[**remove_all_asset_group_tags**](AssetGroupApi.md#remove_all_asset_group_tags) | **DELETE** /api/3/asset_groups/{id}/tags | Asset Group Tags
+[**remove_all_assets_from_asset_group**](AssetGroupApi.md#remove_all_assets_from_asset_group) | **DELETE** /api/3/asset_groups/{id}/assets | Asset Group Assets
+[**remove_asset_from_asset_group**](AssetGroupApi.md#remove_asset_from_asset_group) | **DELETE** /api/3/asset_groups/{id}/assets/{assetId} | Asset Group Asset
+[**remove_asset_group_tag**](AssetGroupApi.md#remove_asset_group_tag) | **DELETE** /api/3/asset_groups/{id}/tags/{tagId} | Asset Group Tag
+[**remove_asset_group_user**](AssetGroupApi.md#remove_asset_group_user) | **DELETE** /api/3/asset_groups/{id}/users/{userId} | Asset Group User
+[**set_asset_group_search_criteria**](AssetGroupApi.md#set_asset_group_search_criteria) | **PUT** /api/3/asset_groups/{id}/search_criteria | Asset Group Search Criteria
+[**set_asset_group_tags**](AssetGroupApi.md#set_asset_group_tags) | **PUT** /api/3/asset_groups/{id}/tags | Asset Group Tags
+[**set_asset_group_users**](AssetGroupApi.md#set_asset_group_users) | **PUT** /api/3/asset_groups/{id}/users | Asset Group Users
+[**update_asset_group**](AssetGroupApi.md#update_asset_group) | **PUT** /api/3/asset_groups/{id} | Asset Group
+[**update_asset_group_assets**](AssetGroupApi.md#update_asset_group_assets) | **PUT** /api/3/asset_groups/{id}/assets | Asset Group Assets
+
+
+# **add_asset_group_tag**
+> Links add_asset_group_tag(id, tag_id)
+
+Asset Group Tag
+
+Adds a tag to an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+tag_id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Asset Group Tag
+ result = api_instance.add_asset_group_tag(id, tag_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->add_asset_group_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **tag_id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **add_asset_group_user**
+> Links add_asset_group_user(id, user_id)
+
+Asset Group User
+
+Grants a user with sufficient privileges access to the asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+user_id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Asset Group User
+ result = api_instance.add_asset_group_user(id, user_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->add_asset_group_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **user_id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **add_asset_to_asset_group**
+> Links add_asset_to_asset_group(id, asset_id)
+
+Asset Group Asset
+
+Adds an asset to a static asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Group Asset
+ result = api_instance.add_asset_to_asset_group(id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->add_asset_to_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_asset_group**
+> CreatedReferenceAssetGroupIDLink create_asset_group(opts)
+
+Asset Groups
+
+Creates a new asset group. The `searchCriteria` field can be passed no matter what the type of the asset group is. The asset group `type` changes when the assets are refreshed. Dynamic asset groups constantly refreshed their membership as assets are scanned whereas static asset groups do not change membership automatically. See the Search Criteria for more information on using dynamic criteria.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+opts = {
+ param0: Rapid7VmConsole::AssetGroup.new # AssetGroup | The details of the asset group.
+}
+
+begin
+ #Asset Groups
+ result = api_instance.create_asset_group(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->create_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**AssetGroup**](AssetGroup.md)| The details of the asset group. | [optional]
+
+### Return type
+
+[**CreatedReferenceAssetGroupIDLink**](CreatedReferenceAssetGroupIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_asset_group**
+> Links delete_asset_group(id)
+
+Asset Group
+
+Deletes the asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group
+ result = api_instance.delete_asset_group(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->delete_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_group**
+> AssetGroup get_asset_group(id)
+
+Asset Group
+
+Returns an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group
+ result = api_instance.get_asset_group(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->get_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**AssetGroup**](AssetGroup.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_group_assets**
+> ReferencesWithAssetIDLink get_asset_group_assets(id)
+
+Asset Group Assets
+
+Returns hypermedia links for the assets that belong to an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Assets
+ result = api_instance.get_asset_group_assets(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->get_asset_group_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**ReferencesWithAssetIDLink**](ReferencesWithAssetIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_group_search_criteria**
+> SearchCriteria get_asset_group_search_criteria(id)
+
+Asset Group Search Criteria
+
+Returns the search criteria of a dynamic asset group.For a reference of valid search criteria input see the Asset Search resource.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Search Criteria
+ result = api_instance.get_asset_group_search_criteria(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->get_asset_group_search_criteria: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**SearchCriteria**](SearchCriteria.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_group_tags**
+> ReferencesWithTagIDLink get_asset_group_tags(id)
+
+Asset Group Tags
+
+Returns the tags assigned to an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Tags
+ result = api_instance.get_asset_group_tags(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->get_asset_group_tags: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**ReferencesWithTagIDLink**](ReferencesWithTagIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_group_users**
+> ReferencesWithUserIDLink get_asset_group_users(id)
+
+Asset Group Users
+
+Returns hypermedia links for the users with access to this asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Users
+ result = api_instance.get_asset_group_users(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->get_asset_group_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**ReferencesWithUserIDLink**](ReferencesWithUserIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_groups**
+> PageOfAssetGroup get_asset_groups(opts)
+
+Asset Groups
+
+Returns all asset groups.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+opts = {
+ type: "type_example", # String | The type of asset group.
+ name: "name_example", # String | A search pattern for the name of the asset group. Searches are case-insensitive contains.
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Asset Groups
+ result = api_instance.get_asset_groups(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->get_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **type** | **String**| The type of asset group. | [optional]
+ **name** | **String**| A search pattern for the name of the asset group. Searches are case-insensitive contains. | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfAssetGroup**](PageOfAssetGroup.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_all_asset_group_tags**
+> Links remove_all_asset_group_tags(id)
+
+Asset Group Tags
+
+Removes all tag associations from the asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Tags
+ result = api_instance.remove_all_asset_group_tags(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->remove_all_asset_group_tags: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_all_assets_from_asset_group**
+> Links remove_all_assets_from_asset_group(id)
+
+Asset Group Assets
+
+Removes the assets from the given static asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Assets
+ result = api_instance.remove_all_assets_from_asset_group(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->remove_all_assets_from_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_asset_from_asset_group**
+> Links remove_asset_from_asset_group(id, asset_id)
+
+Asset Group Asset
+
+Removes an asset from an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Group Asset
+ result = api_instance.remove_asset_from_asset_group(id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->remove_asset_from_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_asset_group_tag**
+> Links remove_asset_group_tag(id, tag_id)
+
+Asset Group Tag
+
+Removes a tag from an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+tag_id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Asset Group Tag
+ result = api_instance.remove_asset_group_tag(id, tag_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->remove_asset_group_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **tag_id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_asset_group_user**
+> Links remove_asset_group_user(id, user_id)
+
+Asset Group User
+
+Removes a user's access from an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+user_id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Asset Group User
+ result = api_instance.remove_asset_group_user(id, user_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->remove_asset_group_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **user_id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_asset_group_search_criteria**
+> Links set_asset_group_search_criteria(id, opts)
+
+Asset Group Search Criteria
+
+Updates the search criteria of a dynamic asset group. For a reference of valid search criteria input see the Asset Search resource.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+opts = {
+ param1: Rapid7VmConsole::SearchCriteria.new # SearchCriteria | The search criteria specification.
+}
+
+begin
+ #Asset Group Search Criteria
+ result = api_instance.set_asset_group_search_criteria(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->set_asset_group_search_criteria: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **param1** | [**SearchCriteria**](SearchCriteria.md)| The search criteria specification. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_asset_group_tags**
+> Links set_asset_group_tags(id, opts)
+
+Asset Group Tags
+
+Updates the tags of an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The tags to associate to the asset group.
+}
+
+begin
+ #Asset Group Tags
+ result = api_instance.set_asset_group_tags(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->set_asset_group_tags: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **param1** | **Array<Integer>**| The tags to associate to the asset group. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_asset_group_users**
+> Links set_asset_group_users(id, opts)
+
+Asset Group Users
+
+Grants users with sufficient privileges access to an asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The users to grant access to the asset group.
+}
+
+begin
+ #Asset Group Users
+ result = api_instance.set_asset_group_users(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->set_asset_group_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **param1** | **Array<Integer>**| The users to grant access to the asset group. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_asset_group**
+> Links update_asset_group(id, opts)
+
+Asset Group
+
+Updates the details of an asset group. See the search criteria endpoint (/search_criteria) for more information about building the search criteria and examples.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+opts = {
+ param1: Rapid7VmConsole::AssetGroup.new # AssetGroup | The details of the asset group.
+}
+
+begin
+ #Asset Group
+ result = api_instance.update_asset_group(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->update_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **param1** | [**AssetGroup**](AssetGroup.md)| The details of the asset group. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_asset_group_assets**
+> Links update_asset_group_assets(id, opts)
+
+Asset Group Assets
+
+Updates all the assets that belong to a static asset group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::AssetGroupApi.new
+
+id = 56 # Integer | The identifier of the asset group.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The assets to place in the asset group.
+}
+
+begin
+ #Asset Group Assets
+ result = api_instance.update_asset_group_assets(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling AssetGroupApi->update_asset_group_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset group. |
+ **param1** | **Array<Integer>**| The assets to place in the asset group. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/AssetHistory.md b/docs/AssetHistory.md
new file mode 100644
index 0000000..4020be5
--- /dev/null
+++ b/docs/AssetHistory.md
@@ -0,0 +1,14 @@
+# Rapid7VmConsole::AssetHistory
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**date** | **String** | The date the asset information was collected or changed. | [optional]
+**description** | **String** | Additional information describing the change. | [optional]
+**scan_id** | **Integer** | If a scan-oriented change, the identifier of the corresponding scan the asset was scanned in. | [optional]
+**type** | **String** | The type of change. May be one of: | Type | Source of Data | | ----------------------------------- | ----------------------------------------------------------- | | `ASSET-IMPORT`, `EXTERNAL-IMPORT` | External source such as the API | | `EXTERNAL-IMPORT-APPSPIDER` | Rapid7 InsightAppSec (previously known as AppSpider) | | `SCAN` | Scan engine scan | | `ACTIVE-SYNC` | ActiveSync | | `SCAN-LOG-IMPORT` | Manual import of a scan log | | `VULNERABILITY_EXCEPTION_APPLIED` | Vulnerability exception applied | | `VULNERABILITY_EXCEPTION_UNAPPLIED` | Vulnerability exception unapplied | | [optional]
+**user** | **String** | If a vulnerability exception change, the login name of the user that performed the operation. | [optional]
+**version** | **Integer** | The version number of the change (a chronological incrementing number starting from 1). | [optional]
+**vulnerability_exception_id** | **Integer** | If a vulnerability exception change, the identifier of the vulnerability exception that caused the change. | [optional]
+
+
diff --git a/docs/AssetPolicy.md b/docs/AssetPolicy.md
new file mode 100644
index 0000000..c1944b5
--- /dev/null
+++ b/docs/AssetPolicy.md
@@ -0,0 +1,28 @@
+# Rapid7VmConsole::AssetPolicy
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**benchmark_name** | **String** | The name of the policy's benchmark. | [optional]
+**benchmark_version** | **String** | The version number of the benchmark that includes the policy. | [optional]
+**category** | **String** | A grouping of similar benchmarks based on their source, purpose, or other criteria. Examples include FDCC, USGCB, and CIS. | [optional]
+**description** | **String** | The description of the policy. | [optional]
+**failed_assets_count** | **Integer** | The number of assets that are not compliant with the policy. The assets considered in the calculation are based on the user's list of accessible assets. | [optional]
+**failed_rules_count** | **Integer** | The number of rules in the policy that are not compliant with any scanned assets. The assets considered in the calculation are based on the user's list of accessible assets. | [optional]
+**id** | **String** | The textual representation of the policy identifier. | [optional]
+**is_custom** | **BOOLEAN** | A flag indicating whether the policy is custom. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**not_applicable_assets_count** | **Integer** | The number of assets that were attempted to be scanned, but are not applicable to the policy. The assets considered in the calculation are based on the user's list of accessible assets. | [optional]
+**not_applicable_rules_count** | **Integer** | The number of rules in the policy that are not applicable with any scanned assets. The assets considered in the calculation are based on the user's list of accessible assets. | [optional]
+**passed_assets_count** | **Integer** | The number of assets that are compliant with the policy. The assets considered in the calculation are based on the user's list of accessible assets. | [optional]
+**passed_rules_count** | **Integer** | The number of rules in the policy that are compliant with all scanned assets. The assets considered in the calculation are based on the user's list of accessible assets. | [optional]
+**policy_name** | **String** | The name of the policy. | [optional]
+**rule_compliance** | **Float** | The ratio of PASS results for the rules to the total number of rules in each policy. | [optional]
+**rule_compliance_delta** | **Float** | The change in rule compliance between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets. | [optional]
+**scope** | **String** | The textual representation of the policy scope. Policies that are automatically available have `\"Built-in\"` scope, whereas policies created by users have scope as `\"Custom\"`. | [optional]
+**status** | **String** | The overall compliance status of the policy. | [optional]
+**surrogate_id** | **Integer** | The identifier of the policy | [optional]
+**title** | **String** | The title of the policy as visible to the user. | [optional]
+**unscored_rules** | **Integer** | The number of rules defined in the policy with a role of \"unscored\". These rules will not affect rule compliance scoring for the policy. | [optional]
+
+
diff --git a/docs/AssetPolicyAssessment.md b/docs/AssetPolicyAssessment.md
new file mode 100644
index 0000000..e5f701a
--- /dev/null
+++ b/docs/AssetPolicyAssessment.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::AssetPolicyAssessment
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**total** | **Integer** | The total number of assets. | [optional]
+**total_failed** | **Integer** | The total number of assets that are not compliant. | [optional]
+**total_not_applicable** | **Integer** | The total number of assets that are not applicable. | [optional]
+**total_passed** | **Integer** | | [optional]
+
+
diff --git a/docs/AssetPolicyItem.md b/docs/AssetPolicyItem.md
new file mode 100644
index 0000000..c97ffbe
--- /dev/null
+++ b/docs/AssetPolicyItem.md
@@ -0,0 +1,20 @@
+# Rapid7VmConsole::AssetPolicyItem
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | [**AssetPolicyAssessment**](AssetPolicyAssessment.md) | A summary of asset compliance. | [optional]
+**description** | **String** | A description of the policy rule or group. | [optional]
+**has_override** | **BOOLEAN** | A flag indicating whether the policy rule has an active override applied to it. This field only applies to resources representing policy rules. | [optional]
+**id** | **Integer** | The identifier of the policy rule or group. | [optional]
+**is_unscored** | **BOOLEAN** | A flag indicating whether the policy rule has a role of `\"unscored\"`. This field only applies to resources representing policy rules. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the policy rule or group. | [optional]
+**policy** | [**PolicyMetadataResource**](PolicyMetadataResource.md) | Information about the policy. | [optional]
+**rules** | [**PolicyRuleAssessmentResource**](PolicyRuleAssessmentResource.md) | A summary of rule compliance for multiple policy rules. This field only applies to resources representing policy groups. | [optional]
+**scope** | **String** | The textual representation of the policy rule/group scope. Policy rules or groups that are automatically available have `\"Built-in\"` scope, whereas policy rules or groups created by users have scope as `\"Custom\"`. | [optional]
+**status** | **String** | The asset's rule compliance status. | [optional]
+**title** | **String** | The title of the policy rule, or group, as visible to the user. | [optional]
+**type** | **String** | Indicates whether the resource represents either a policy rule or group. | [optional]
+
+
diff --git a/docs/AssetTag.md b/docs/AssetTag.md
new file mode 100644
index 0000000..2330f40
--- /dev/null
+++ b/docs/AssetTag.md
@@ -0,0 +1,17 @@
+# Rapid7VmConsole::AssetTag
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**color** | **String** | The color to use when rendering the tag in a user interface. | [optional]
+**created** | **String** | The date and time the tag was created. | [optional]
+**id** | **Integer** | The identifier of the tag. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name (label) of the tab. |
+**risk_modifier** | **Object** | The amount to adjust risk of an asset tagged with this tag. | [optional]
+**search_criteria** | [**SearchCriteria**](SearchCriteria.md) | | [optional]
+**source** | **String** | The source of the tag. | [optional]
+**sources** | [**Array<TagAssetSource>**](TagAssetSource.md) | The source(s) by which a tag is applied to an asset. | [optional]
+**type** | **String** | The type of the tag. |
+
+
diff --git a/docs/AssetVulnerabilities.md b/docs/AssetVulnerabilities.md
new file mode 100644
index 0000000..8683b2c
--- /dev/null
+++ b/docs/AssetVulnerabilities.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::AssetVulnerabilities
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**critical** | **Integer** | The number of critical vulnerabilities. | [optional]
+**exploits** | **Integer** | The number of distinct exploits that can exploit any of the vulnerabilities on the asset. | [optional]
+**malware_kits** | **Integer** | The number of distinct malware kits that vulnerabilities on the asset are susceptible to. | [optional]
+**moderate** | **Integer** | The number of moderate vulnerabilities. | [optional]
+**severe** | **Integer** | The number of severe vulnerabilities. | [optional]
+**total** | **Integer** | The total number of vulnerabilities. | [optional]
+
+
diff --git a/docs/AuthenticationSettings.md b/docs/AuthenticationSettings.md
new file mode 100644
index 0000000..9212c89
--- /dev/null
+++ b/docs/AuthenticationSettings.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::AuthenticationSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**_2fa** | **BOOLEAN** | Whether two-factor authentication is enabled. | [optional]
+**login_lock_threshold** | **Integer** | The maximum number of failed login attempts for an account becomes locked. | [optional]
+
+
diff --git a/docs/AuthenticationSource.md b/docs/AuthenticationSource.md
new file mode 100644
index 0000000..18224dc
--- /dev/null
+++ b/docs/AuthenticationSource.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::AuthenticationSource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**external** | **BOOLEAN** | Whether the authentication source is external (true) or internal (false). | [optional]
+**id** | **Integer** | The identifier of the authentication source. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the authentication source. | [optional]
+**type** | **String** | The type of the authentication source. | [optional]
+
+
diff --git a/docs/AvailableReportFormat.md b/docs/AvailableReportFormat.md
new file mode 100644
index 0000000..a5298bc
--- /dev/null
+++ b/docs/AvailableReportFormat.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::AvailableReportFormat
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**format** | **String** | The output file-format of a report. | [optional]
+**templates** | **Array<String>** | The report template identifiers that can be used within a report format. | [optional]
+
+
diff --git a/docs/BackupsSize.md b/docs/BackupsSize.md
new file mode 100644
index 0000000..e1529e7
--- /dev/null
+++ b/docs/BackupsSize.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::BackupsSize
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/BadRequestError.md b/docs/BadRequestError.md
new file mode 100644
index 0000000..f20a4f6
--- /dev/null
+++ b/docs/BadRequestError.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::BadRequestError
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The messages indicating the cause or reason for failure. | [optional]
+**status** | **String** | The HTTP status code for the error (same as in the HTTP response). |
+
+
diff --git a/docs/CPUInfo.md b/docs/CPUInfo.md
new file mode 100644
index 0000000..2e24352
--- /dev/null
+++ b/docs/CPUInfo.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CPUInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**clock_speed** | **Integer** | The clock speed of the host, in MHz. | [optional]
+**count** | **Integer** | The number of CPUs. | [optional]
+
+
diff --git a/docs/Configuration.md b/docs/Configuration.md
new file mode 100644
index 0000000..ae5886d
--- /dev/null
+++ b/docs/Configuration.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::Configuration
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**name** | **String** | The name of the configuration value. |
+**value** | **String** | The configuration value. | [optional]
+
+
diff --git a/docs/ConsoleCommandOutput.md b/docs/ConsoleCommandOutput.md
new file mode 100644
index 0000000..ee5ec60
--- /dev/null
+++ b/docs/ConsoleCommandOutput.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ConsoleCommandOutput
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**output** | **String** | The output of the command that was executed. | [optional]
+
+
diff --git a/docs/ContentDescription.md b/docs/ContentDescription.md
new file mode 100644
index 0000000..ce0f157
--- /dev/null
+++ b/docs/ContentDescription.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ContentDescription
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**html** | **String** | Hypertext Markup Language (HTML) representation of the content. | [optional]
+**text** | **String** | Textual representation of the content. | [optional]
+
+
diff --git a/docs/CreateAuthenticationSource.md b/docs/CreateAuthenticationSource.md
new file mode 100644
index 0000000..9ca47e8
--- /dev/null
+++ b/docs/CreateAuthenticationSource.md
@@ -0,0 +1,8 @@
+# Rapid7VmConsole::CreateAuthenticationSource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**type** | **String** | The type of the authentication source to use to authenticate the user. Defaults to `normal`. | [optional]
+
+
diff --git a/docs/CreatedOrUpdatedReference.md b/docs/CreatedOrUpdatedReference.md
new file mode 100644
index 0000000..90c2bdd
--- /dev/null
+++ b/docs/CreatedOrUpdatedReference.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedOrUpdatedReference
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Object** | The identifier of the resource created or updated. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReference.md b/docs/CreatedReference.md
new file mode 100644
index 0000000..467af0e
--- /dev/null
+++ b/docs/CreatedReference.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReference
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Object** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceAssetGroupIDLink.md b/docs/CreatedReferenceAssetGroupIDLink.md
new file mode 100644
index 0000000..61d046e
--- /dev/null
+++ b/docs/CreatedReferenceAssetGroupIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceAssetGroupIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceCredentialIDLink.md b/docs/CreatedReferenceCredentialIDLink.md
new file mode 100644
index 0000000..a6909ca
--- /dev/null
+++ b/docs/CreatedReferenceCredentialIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceCredentialIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceDiscoveryQueryIDLink.md b/docs/CreatedReferenceDiscoveryQueryIDLink.md
new file mode 100644
index 0000000..80f1dd2
--- /dev/null
+++ b/docs/CreatedReferenceDiscoveryQueryIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceDiscoveryQueryIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceEngineIDLink.md b/docs/CreatedReferenceEngineIDLink.md
new file mode 100644
index 0000000..2ab9790
--- /dev/null
+++ b/docs/CreatedReferenceEngineIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceEngineIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferencePolicyOverrideIDLink.md b/docs/CreatedReferencePolicyOverrideIDLink.md
new file mode 100644
index 0000000..46e23ed
--- /dev/null
+++ b/docs/CreatedReferencePolicyOverrideIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferencePolicyOverrideIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceScanIDLink.md b/docs/CreatedReferenceScanIDLink.md
new file mode 100644
index 0000000..4a45996
--- /dev/null
+++ b/docs/CreatedReferenceScanIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceScanIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceScanTemplateIDLink.md b/docs/CreatedReferenceScanTemplateIDLink.md
new file mode 100644
index 0000000..efb339a
--- /dev/null
+++ b/docs/CreatedReferenceScanTemplateIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceScanTemplateIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **String** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceUserIDLink.md b/docs/CreatedReferenceUserIDLink.md
new file mode 100644
index 0000000..b951a94
--- /dev/null
+++ b/docs/CreatedReferenceUserIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceUserIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceVulnerabilityExceptionIDLink.md b/docs/CreatedReferenceVulnerabilityExceptionIDLink.md
new file mode 100644
index 0000000..87ab54b
--- /dev/null
+++ b/docs/CreatedReferenceVulnerabilityExceptionIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceVulnerabilityExceptionIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceVulnerabilityValidationIDLink.md b/docs/CreatedReferenceVulnerabilityValidationIDLink.md
new file mode 100644
index 0000000..c7d4ce5
--- /dev/null
+++ b/docs/CreatedReferenceVulnerabilityValidationIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceVulnerabilityValidationIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CreatedReferenceintLink.md b/docs/CreatedReferenceintLink.md
new file mode 100644
index 0000000..4a7b605
--- /dev/null
+++ b/docs/CreatedReferenceintLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::CreatedReferenceintLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource created. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/CredentialApi.md b/docs/CredentialApi.md
new file mode 100644
index 0000000..99285a3
--- /dev/null
+++ b/docs/CredentialApi.md
@@ -0,0 +1,289 @@
+# Rapid7VmConsole::CredentialApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_shared_credential**](CredentialApi.md#create_shared_credential) | **POST** /api/3/shared_credentials | Shared Credentials
+[**delete_all_shared_credentials**](CredentialApi.md#delete_all_shared_credentials) | **DELETE** /api/3/shared_credentials | Shared Credentials
+[**delete_shared_credential**](CredentialApi.md#delete_shared_credential) | **DELETE** /api/3/shared_credentials/{id} | Shared Credential
+[**get_shared_credential**](CredentialApi.md#get_shared_credential) | **GET** /api/3/shared_credentials/{id} | Shared Credential
+[**get_shared_credentials**](CredentialApi.md#get_shared_credentials) | **GET** /api/3/shared_credentials | Shared Credentials
+[**update_shared_credential**](CredentialApi.md#update_shared_credential) | **PUT** /api/3/shared_credentials/{id} | Shared Credential
+
+
+# **create_shared_credential**
+> CreatedReferenceCredentialIDLink create_shared_credential(opts)
+
+Shared Credentials
+
+Creates a new shared credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::CredentialApi.new
+
+opts = {
+ param0: Rapid7VmConsole::SharedCredential.new # SharedCredential | The specification of a shared credential.
+}
+
+begin
+ #Shared Credentials
+ result = api_instance.create_shared_credential(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling CredentialApi->create_shared_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**SharedCredential**](SharedCredential.md)| The specification of a shared credential. | [optional]
+
+### Return type
+
+[**CreatedReferenceCredentialIDLink**](CreatedReferenceCredentialIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_all_shared_credentials**
+> Links delete_all_shared_credentials
+
+Shared Credentials
+
+Deletes all shared credentials.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::CredentialApi.new
+
+begin
+ #Shared Credentials
+ result = api_instance.delete_all_shared_credentials
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling CredentialApi->delete_all_shared_credentials: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_shared_credential**
+> Links delete_shared_credential(id)
+
+Shared Credential
+
+Deletes the specified shared scan credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::CredentialApi.new
+
+id = 56 # Integer | The identifier of the credential.
+
+
+begin
+ #Shared Credential
+ result = api_instance.delete_shared_credential(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling CredentialApi->delete_shared_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the credential. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_shared_credential**
+> SharedCredential get_shared_credential(id)
+
+Shared Credential
+
+Retrieves the specified shared credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::CredentialApi.new
+
+id = 56 # Integer | The identifier of the credential.
+
+
+begin
+ #Shared Credential
+ result = api_instance.get_shared_credential(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling CredentialApi->get_shared_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the credential. |
+
+### Return type
+
+[**SharedCredential**](SharedCredential.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_shared_credentials**
+> ResourcesSharedCredential get_shared_credentials
+
+Shared Credentials
+
+Retrieves all defined shared credential resources.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::CredentialApi.new
+
+begin
+ #Shared Credentials
+ result = api_instance.get_shared_credentials
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling CredentialApi->get_shared_credentials: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesSharedCredential**](ResourcesSharedCredential.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_shared_credential**
+> Links update_shared_credential(id, opts)
+
+Shared Credential
+
+Updates the specified shared credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::CredentialApi.new
+
+id = 56 # Integer | The identifier of the credential.
+
+opts = {
+ param1: Rapid7VmConsole::SharedCredential.new # SharedCredential | The specification of the shared credential to update.
+}
+
+begin
+ #Shared Credential
+ result = api_instance.update_shared_credential(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling CredentialApi->update_shared_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the credential. |
+ **param1** | [**SharedCredential**](SharedCredential.md)| The specification of the shared credential to update. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/Criterion.md b/docs/Criterion.md
new file mode 100644
index 0000000..cc323d8
--- /dev/null
+++ b/docs/Criterion.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::Criterion
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**extras** | **Object** | | [optional]
+**meta_data** | [**IMetaData**](IMetaData.md) | | [optional]
+**metadata** | [**MetadataContainer**](MetadataContainer.md) | | [optional]
+**operator** | **String** | | [optional]
+**values** | **Array<String>** | | [optional]
+
+
diff --git a/docs/Database.md b/docs/Database.md
new file mode 100644
index 0000000..7a6e838
--- /dev/null
+++ b/docs/Database.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::Database
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**description** | **String** | The description of the database instance. | [optional]
+**id** | **Integer** | The identifier of the database. | [optional]
+**name** | **String** | The name of the database instance. |
+
+
diff --git a/docs/DatabaseConnectionSettings.md b/docs/DatabaseConnectionSettings.md
new file mode 100644
index 0000000..95a5aa3
--- /dev/null
+++ b/docs/DatabaseConnectionSettings.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::DatabaseConnectionSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**maximum_administration_pool_size** | **Integer** | The maximum number of administrative connections in the connection pool. -1 means unlimited. | [optional]
+**maximum_pool_size** | **Integer** | ${settings.database.connection.max} | [optional]
+**maximum_prepared_statement_pool_size** | **Integer** | The maximum number of prepared statements in the prepared statement pool. -1 means unlimited. | [optional]
+
+
diff --git a/docs/DatabaseSettings.md b/docs/DatabaseSettings.md
new file mode 100644
index 0000000..03440fc
--- /dev/null
+++ b/docs/DatabaseSettings.md
@@ -0,0 +1,14 @@
+# Rapid7VmConsole::DatabaseSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**connection** | [**DatabaseConnectionSettings**](DatabaseConnectionSettings.md) | Details connection settings for the database. | [optional]
+**host** | **String** | The database host. | [optional]
+**maintenance_thread_pool_size** | **Integer** | The maximum number of parallel tasks when executing maintenance tasks. | [optional]
+**port** | **Integer** | The database port. | [optional]
+**url** | **String** | The database connection URL. | [optional]
+**user** | **String** | The database user. | [optional]
+**vendor** | **String** | The database vendor. | [optional]
+
+
diff --git a/docs/DatabaseSize.md b/docs/DatabaseSize.md
new file mode 100644
index 0000000..b6f3bab
--- /dev/null
+++ b/docs/DatabaseSize.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::DatabaseSize
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/DiscoveryAsset.md b/docs/DiscoveryAsset.md
new file mode 100644
index 0000000..332df36
--- /dev/null
+++ b/docs/DiscoveryAsset.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::DiscoveryAsset
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**address** | **String** | The IP address of a discovered asset. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The host name of a discovered asset. | [optional]
+
+
diff --git a/docs/DiscoveryConnection.md b/docs/DiscoveryConnection.md
new file mode 100644
index 0000000..ba742d6
--- /dev/null
+++ b/docs/DiscoveryConnection.md
@@ -0,0 +1,28 @@
+# Rapid7VmConsole::DiscoveryConnection
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**access_key_id** | **String** | The AWS credential access key identifier (only used for the AWS connection). | [optional]
+**address** | **String** | ${discovery.connection.address} | [optional]
+**arn** | **String** | The AWS credential ARN (only used for the AWS connection). | [optional]
+**aws_session_name** | **String** | The AWS credential session name (only used for the AWS connection). | [optional]
+**connection_type** | **String** | The type of the discovery connection. | [optional]
+**event_source** | **String** | The event source type to use. | [optional]
+**exchange_server_hostname** | **String** | The hostname of the exchange server to connect to. | [optional]
+**exchange_user** | **String** | The username used to connect to the exchange server. | [optional]
+**folder_path** | **String** | The folder path to pull logs from. | [optional]
+**id** | **Integer** | The identifier of the discovery connection. | [optional]
+**ldap_server** | **String** | The LDAP server to connect to. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The discovery connection name. | [optional]
+**port** | **Integer** | The address used to connect to the discovery connection source. | [optional]
+**protocol** | **String** | The protocol used to connect to the discovery connection source. | [optional]
+**region** | **String** | The AWS region (only used for the AWS connection). | [optional]
+**scan_engine_is_inside_aws** | **BOOLEAN** | Flag denoting whether the scan engine is in AWS, this is used for AWS discovery connections for scanning purposes (only used for the AWS connection). | [optional]
+**secret_access_key** | **String** | The AWS credential secret access key (only used for the AWS connection). | [optional]
+**status** | **String** | The status of the discovery connection. | [optional]
+**username** | **String** | The username used to authenticate to the discovery connection source. | [optional]
+**win_rm_server** | **String** | The WinRM server to connect to. | [optional]
+
+
diff --git a/docs/DiscoverySearchCriteria.md b/docs/DiscoverySearchCriteria.md
new file mode 100644
index 0000000..8a45bfa
--- /dev/null
+++ b/docs/DiscoverySearchCriteria.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::DiscoverySearchCriteria
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**connection_type** | **String** | The type of discovery connection configured for the site. This property only applies to dynamic sites. | [optional]
+**filters** | [**Array<SwaggerDiscoverySearchCriteriaFilter>**](SwaggerDiscoverySearchCriteriaFilter.md) | Filters used to match assets from a discovery connection. See <a href=\"#section/Responses/DiscoverySearchCriteria\">Discovery Connection Search Criteria</a> for more information on the structure and format. | [optional]
+**match** | **String** | Operator to determine how to match filters. `all` requires that all filters match for an asset to be included. `any` requires only one filter to match for an asset to be included. | [optional]
+
+
diff --git a/docs/DiskFree.md b/docs/DiskFree.md
new file mode 100644
index 0000000..030c070
--- /dev/null
+++ b/docs/DiskFree.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::DiskFree
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/DiskInfo.md b/docs/DiskInfo.md
new file mode 100644
index 0000000..9dc8af5
--- /dev/null
+++ b/docs/DiskInfo.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::DiskInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**free** | [**DiskFree**](DiskFree.md) | Available disk space. | [optional]
+**installation** | [**InstallSize**](InstallSize.md) | Details regarding the size of disk used by the console installation. | [optional]
+**total** | [**DiskTotal**](DiskTotal.md) | Total disk space. | [optional]
+
+
diff --git a/docs/DiskTotal.md b/docs/DiskTotal.md
new file mode 100644
index 0000000..8feed38
--- /dev/null
+++ b/docs/DiskTotal.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::DiskTotal
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/DynamicSite.md b/docs/DynamicSite.md
new file mode 100644
index 0000000..6ad7b0f
--- /dev/null
+++ b/docs/DynamicSite.md
@@ -0,0 +1,8 @@
+# Rapid7VmConsole::DynamicSite
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the discovery connection. |
+
+
diff --git a/docs/EnginePool.md b/docs/EnginePool.md
new file mode 100644
index 0000000..7199669
--- /dev/null
+++ b/docs/EnginePool.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::EnginePool
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**engines** | **Array<Integer>** | The identifiers of the scan engines in the engine pool. | [optional]
+**id** | **Integer** | The identifier of the scan engine. |
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The name of the scan engine. |
+
+
diff --git a/docs/EnvironmentProperties.md b/docs/EnvironmentProperties.md
new file mode 100644
index 0000000..92ccb39
--- /dev/null
+++ b/docs/EnvironmentProperties.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::EnvironmentProperties
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**properties** | **Object** | Key-value pairs for system and environment properties that are currently defined. | [optional]
+
+
diff --git a/docs/Error.md b/docs/Error.md
new file mode 100644
index 0000000..067cd13
--- /dev/null
+++ b/docs/Error.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::Error
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The messages indicating the cause or reason for failure. | [optional]
+**status** | **String** | The HTTP status code for the error (same as in the HTTP response). | [optional]
+
+
diff --git a/docs/ExceptionScope.md b/docs/ExceptionScope.md
new file mode 100644
index 0000000..9691eea
--- /dev/null
+++ b/docs/ExceptionScope.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::ExceptionScope
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the vulnerability to which the exception applies. | [optional]
+**key** | **String** | If the scope type is `\"Instance\"`, an optional key to discriminate the instance the exception applies to. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**port** | **Integer** | If the scope type is `\"Instance\"` and the vulnerability is detected on a service, the port on which the exception applies. | [optional]
+**type** | **String** | The type of the exception scope. One of: `\"Global\"`, `\"Site\"`, `\"Asset\"`, `\"Asset Group\"`, `\"Instance\"` | [optional]
+**vulnerability** | **String** | The identifier of the vulnerability to which the exception applies. | [optional]
+
+
diff --git a/docs/ExcludedAssetGroups.md b/docs/ExcludedAssetGroups.md
new file mode 100644
index 0000000..fbf5015
--- /dev/null
+++ b/docs/ExcludedAssetGroups.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ExcludedAssetGroups
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**asset_group_i_ds** | **Array<Integer>** | List of asset group identifiers. Each element is an integer. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+
+
diff --git a/docs/ExcludedScanTargets.md b/docs/ExcludedScanTargets.md
new file mode 100644
index 0000000..9d6911a
--- /dev/null
+++ b/docs/ExcludedScanTargets.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ExcludedScanTargets
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**addresses** | **Array<String>** | List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+
+
diff --git a/docs/Exploit.md b/docs/Exploit.md
new file mode 100644
index 0000000..4129749
--- /dev/null
+++ b/docs/Exploit.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::Exploit
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the exploit. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**skill_level** | **String** | The level of skill required to use the exploit. | [optional]
+**source** | [**ExploitSource**](ExploitSource.md) | Details about where the exploit is defined. | [optional]
+**title** | **String** | The title (short summary) of the exploit. | [optional]
+
+
diff --git a/docs/ExploitSource.md b/docs/ExploitSource.md
new file mode 100644
index 0000000..9117964
--- /dev/null
+++ b/docs/ExploitSource.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ExploitSource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**key** | **String** | The identifier of the exploit in the source library. | [optional]
+**link** | [**ExploitSourceLink**](ExploitSourceLink.md) | ${exploit.source.link.description} | [optional]
+**name** | **String** | The source library of the exploit, typically the name of the vendor that maintains and/or defined the exploit. | [optional]
+
+
diff --git a/docs/ExploitSourceLink.md b/docs/ExploitSourceLink.md
new file mode 100644
index 0000000..2c953c6
--- /dev/null
+++ b/docs/ExploitSourceLink.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ExploitSourceLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**href** | **String** | The hypertext reference for the exploit source. | [optional]
+**id** | **String** | Hypermedia link to the destination of the exploit source. | [optional]
+**rel** | **String** | The relation of the hypermedia link, `\"Source\"`. | [optional]
+
+
diff --git a/docs/Features.md b/docs/Features.md
new file mode 100644
index 0000000..19a7b55
--- /dev/null
+++ b/docs/Features.md
@@ -0,0 +1,20 @@
+# Rapid7VmConsole::Features
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**adaptive_security** | **BOOLEAN** | Whether Adaptive Security features are available. | [optional]
+**agents** | **BOOLEAN** | Whether the use of agents is allowed. | [optional]
+**dynamic_discovery** | **BOOLEAN** | Whether dynamic discovery sources may be used. | [optional]
+**early_access** | **BOOLEAN** | Whether early-access features are available prior to general availability. | [optional]
+**engine_pool** | **BOOLEAN** | Whether scan engine pools may be used. | [optional]
+**insight_platform** | **BOOLEAN** | Whether the usage of the Insight Platform is allowed. | [optional]
+**mobile** | **BOOLEAN** | Whether mobile features are allowed. | [optional]
+**multitenancy** | **BOOLEAN** | Whether multitenancy is allowed. | [optional]
+**policy_editor** | **BOOLEAN** | Whether the editing of policies is allowed. | [optional]
+**policy_manager** | **BOOLEAN** | Whether the policy manager is allowed. | [optional]
+**remediation_analytics** | **BOOLEAN** | Whether Remediation Analytics features are available. | [optional]
+**reporting** | [**LicenseReporting**](LicenseReporting.md) | The reporting features available in the license. | [optional]
+**scanning** | [**LicenseScanning**](LicenseScanning.md) | The scanning features available in the license. | [optional]
+
+
diff --git a/docs/File.md b/docs/File.md
new file mode 100644
index 0000000..bcd6391
--- /dev/null
+++ b/docs/File.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::File
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**attributes** | [**Array<Configuration>**](Configuration.md) | Attributes detected on the file. | [optional]
+**name** | **String** | The name of the file. |
+**size** | **Integer** | The size of the regular file (in bytes). If the file is a directory, no value is returned. | [optional]
+**type** | **String** | The type of the file. |
+
+
diff --git a/docs/Fingerprint.md b/docs/Fingerprint.md
new file mode 100644
index 0000000..3dced6d
--- /dev/null
+++ b/docs/Fingerprint.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::Fingerprint
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**description** | **String** | The description of the matched fingerprint. | [optional]
+**family** | **String** | The family of the matched fingerprint. | [optional]
+**product** | **String** | The product of the matched fingerprint. | [optional]
+**vendor** | **String** | The description of the matched fingerprint. | [optional]
+**version** | **String** | The version of the matched fingerprint. | [optional]
+
+
diff --git a/docs/GlobalScan.md b/docs/GlobalScan.md
new file mode 100644
index 0000000..c73e1a7
--- /dev/null
+++ b/docs/GlobalScan.md
@@ -0,0 +1,23 @@
+# Rapid7VmConsole::GlobalScan
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | **Integer** | The number of assets found in the scan. | [optional]
+**duration** | **String** | The duration of the scan in ISO8601 format. | [optional]
+**end_time** | **String** | The end time of the scan in ISO8601 format. | [optional]
+**engine_id** | **Integer** | The identifier of the scan engine. | [optional]
+**engine_name** | **String** | The name of the scan engine. | [optional]
+**id** | **Integer** | The identifier of the scan. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The reason for the scan status. | [optional]
+**scan_name** | **String** | The user-driven scan name for the scan. | [optional]
+**scan_type** | **String** | The scan type (automated, manual, scheduled). | [optional]
+**site_id** | **Integer** | | [optional]
+**site_name** | **String** | | [optional]
+**start_time** | **String** | The start time of the scan in ISO8601 format. | [optional]
+**started_by** | **String** | The name of the user that started the scan. | [optional]
+**status** | **String** | The scan status. | [optional]
+**vulnerabilities** | [**Vulnerabilities**](Vulnerabilities.md) | The vulnerability synopsis of the scan. | [optional]
+
+
diff --git a/docs/GroupAccount.md b/docs/GroupAccount.md
new file mode 100644
index 0000000..a55f10c
--- /dev/null
+++ b/docs/GroupAccount.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::GroupAccount
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the user group. | [optional]
+**name** | **String** | The name of the user group. |
+
+
diff --git a/docs/HostName.md b/docs/HostName.md
new file mode 100644
index 0000000..dc52165
--- /dev/null
+++ b/docs/HostName.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::HostName
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**name** | **String** | The host name (local or FQDN). |
+**source** | **String** | The source used to detect the host name. `user` indicates the host name source is user-supplied (e.g. in a site target definition). | [optional]
+
+
diff --git a/docs/IMetaData.md b/docs/IMetaData.md
new file mode 100644
index 0000000..69ac513
--- /dev/null
+++ b/docs/IMetaData.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::IMetaData
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**field_name** | **String** | | [optional]
+**supported_operators** | **Array<String>** | | [optional]
+**type** | **String** | | [optional]
+
+
diff --git a/docs/IncludedAssetGroups.md b/docs/IncludedAssetGroups.md
new file mode 100644
index 0000000..3dbf25e
--- /dev/null
+++ b/docs/IncludedAssetGroups.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::IncludedAssetGroups
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**asset_group_i_ds** | **Array<Integer>** | List of asset group identifiers. Each element is an integer. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+
+
diff --git a/docs/IncludedScanTargets.md b/docs/IncludedScanTargets.md
new file mode 100644
index 0000000..340caa4
--- /dev/null
+++ b/docs/IncludedScanTargets.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::IncludedScanTargets
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**addresses** | **Array<String>** | List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+
+
diff --git a/docs/Info.md b/docs/Info.md
new file mode 100644
index 0000000..5e06aca
--- /dev/null
+++ b/docs/Info.md
@@ -0,0 +1,21 @@
+# Rapid7VmConsole::Info
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**cpu** | [**CPUInfo**](CPUInfo.md) | Details regarding the host CPU. | [optional]
+**disk** | [**DiskInfo**](DiskInfo.md) | Details regarding host disk usage. | [optional]
+**distinguished_name** | **String** | The distinguished name of the console. | [optional]
+**fqdn** | **String** | The fully-qualified domain name of the local host the service is running on. | [optional]
+**host** | **String** | The name of the local host the service is running on. | [optional]
+**ip** | **String** | The IP address of the local host the service is running on. | [optional]
+**jvm** | [**JVMInfo**](JVMInfo.md) | Details regarding the Java Virtual Machine. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**memory** | [**MemoryInfo**](MemoryInfo.md) | Details regarding host memory usage. | [optional]
+**operating_system** | **String** | The operating system of the host the service is running on. | [optional]
+**serial** | **String** | The serial number of the console. | [optional]
+**superuser** | **BOOLEAN** | Whether the service is running a super-user. | [optional]
+**user** | **String** | The user running the service. | [optional]
+**version** | [**VersionInfo**](VersionInfo.md) | Details regarding the version of the installation. | [optional]
+
+
diff --git a/docs/InstallSize.md b/docs/InstallSize.md
new file mode 100644
index 0000000..bba4d49
--- /dev/null
+++ b/docs/InstallSize.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::InstallSize
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**backups** | [**BackupsSize**](BackupsSize.md) | The disk space used by backups. | [optional]
+**database** | [**DatabaseSize**](DatabaseSize.md) | The disk space used by the database. | [optional]
+**directory** | **File** | The installation directory. | [optional]
+**reports** | [**ReportSize**](ReportSize.md) | The disk space used by reports. | [optional]
+**scans** | [**ScanSize**](ScanSize.md) | The disk space used by scans. | [optional]
+**total** | [**InstallationTotalSize**](InstallationTotalSize.md) | Total disk space used by the installation. | [optional]
+
+
diff --git a/docs/InstallationTotalSize.md b/docs/InstallationTotalSize.md
new file mode 100644
index 0000000..e707889
--- /dev/null
+++ b/docs/InstallationTotalSize.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::InstallationTotalSize
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/InternalServerError.md b/docs/InternalServerError.md
new file mode 100644
index 0000000..514626d
--- /dev/null
+++ b/docs/InternalServerError.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::InternalServerError
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The messages indicating the cause or reason for failure. | [optional]
+**status** | **String** | The HTTP status code for the error (same as in the HTTP response). |
+
+
diff --git a/docs/JVMInfo.md b/docs/JVMInfo.md
new file mode 100644
index 0000000..b52d1d4
--- /dev/null
+++ b/docs/JVMInfo.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::JVMInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**name** | **String** | The name of the Java Virtual Machine. | [optional]
+**start_time** | **String** | The date and time the Java Virtual Machine last started. | [optional]
+**uptime** | **String** | Total up-time of the Java Virtual Machine, in ISO 8601 format. For example: `\"PT1H4M24.214S\"`. | [optional]
+**vendor** | **String** | The vendor of the Java Virtual Machine. | [optional]
+**version** | **String** | The version of the Java Virtual Machine. | [optional]
+
+
diff --git a/docs/JsonNode.md b/docs/JsonNode.md
new file mode 100644
index 0000000..8e9249e
--- /dev/null
+++ b/docs/JsonNode.md
@@ -0,0 +1,28 @@
+# Rapid7VmConsole::JsonNode
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**array** | **BOOLEAN** | | [optional]
+**big_decimal** | **BOOLEAN** | | [optional]
+**big_integer** | **BOOLEAN** | | [optional]
+**binary** | **BOOLEAN** | | [optional]
+**boolean** | **BOOLEAN** | | [optional]
+**container_node** | **BOOLEAN** | | [optional]
+**double** | **BOOLEAN** | | [optional]
+**float** | **BOOLEAN** | | [optional]
+**floating_point_number** | **BOOLEAN** | | [optional]
+**int** | **BOOLEAN** | | [optional]
+**integral_number** | **BOOLEAN** | | [optional]
+**long** | **BOOLEAN** | | [optional]
+**missing_node** | **BOOLEAN** | | [optional]
+**node_type** | **String** | | [optional]
+**null** | **BOOLEAN** | | [optional]
+**number** | **BOOLEAN** | | [optional]
+**object** | **BOOLEAN** | | [optional]
+**pojo** | **BOOLEAN** | | [optional]
+**short** | **BOOLEAN** | | [optional]
+**textual** | **BOOLEAN** | | [optional]
+**value_node** | **BOOLEAN** | | [optional]
+
+
diff --git a/docs/License.md b/docs/License.md
new file mode 100644
index 0000000..f9e8e7e
--- /dev/null
+++ b/docs/License.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::License
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**edition** | **String** | The edition of the product. | [optional]
+**evaluation** | **BOOLEAN** | Whether the license is a time-restricted evaluation. | [optional]
+**expires** | **String** | The date and time the license expires. | [optional]
+**features** | [**Features**](Features.md) | The features available in the license. | [optional]
+**limits** | [**LicenseLimits**](LicenseLimits.md) | The limits of the license. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**perpetual** | **BOOLEAN** | Whether the license is perpetual. | [optional]
+**status** | **String** | The status of the license. | [optional]
+
+
diff --git a/docs/LicenseLimits.md b/docs/LicenseLimits.md
new file mode 100644
index 0000000..6808469
--- /dev/null
+++ b/docs/LicenseLimits.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::LicenseLimits
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | **Integer** | The maximum number of assets that can be assessed. | [optional]
+**assets_with_hosted_engine** | **Integer** | The maximum number of assets that may be scanned with the hosted scan engine. | [optional]
+**scan_engines** | **Integer** | The maximum number of scan engines that may be used. | [optional]
+**users** | **Integer** | The maximum number of users allowed. | [optional]
+
+
diff --git a/docs/LicensePolicyScanning.md b/docs/LicensePolicyScanning.md
new file mode 100644
index 0000000..0cd5c8e
--- /dev/null
+++ b/docs/LicensePolicyScanning.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::LicensePolicyScanning
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**benchmarks** | [**LicensePolicyScanningBenchmarks**](LicensePolicyScanningBenchmarks.md) | The benchmarks available to policy scan. | [optional]
+**scanning** | **BOOLEAN** | Whether policy scanning is allowed. | [optional]
+
+
diff --git a/docs/LicensePolicyScanningBenchmarks.md b/docs/LicensePolicyScanningBenchmarks.md
new file mode 100644
index 0000000..76328bb
--- /dev/null
+++ b/docs/LicensePolicyScanningBenchmarks.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::LicensePolicyScanningBenchmarks
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**cis** | **BOOLEAN** | Whether policy scanning for CIS benchmarks is allowed. | [optional]
+**custom** | **BOOLEAN** | Whether custom benchmarks can be used during scanning. | [optional]
+**disa** | **BOOLEAN** | Whether policy scanning for DISA benchmarks is allowed. | [optional]
+**fdcc** | **BOOLEAN** | Whether policy scanning for FDCC benchmarks is allowed. | [optional]
+**usgcb** | **BOOLEAN** | Whether policy scanning for USGCB benchmarks is allowed. | [optional]
+
+
diff --git a/docs/LicenseReporting.md b/docs/LicenseReporting.md
new file mode 100644
index 0000000..d2999e5
--- /dev/null
+++ b/docs/LicenseReporting.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::LicenseReporting
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**advanced** | **BOOLEAN** | Whether advanced reporting is available. | [optional]
+**customizable_csv_export** | **BOOLEAN** | Whether customizable CSV Export is available. | [optional]
+**pci** | **BOOLEAN** | Whether PCI reporting is available. | [optional]
+
+
diff --git a/docs/LicenseScanning.md b/docs/LicenseScanning.md
new file mode 100644
index 0000000..c704f4d
--- /dev/null
+++ b/docs/LicenseScanning.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::LicenseScanning
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**discovery** | **BOOLEAN** | Whether discovery scanning may be used. | [optional]
+**policy** | [**LicensePolicyScanning**](LicensePolicyScanning.md) | Details as to whether policy scanning and what benchmarks are available. | [optional]
+**scada** | **BOOLEAN** | Whether SCADA scanning may be used. | [optional]
+**virtual** | **BOOLEAN** | Whether virtual scanning may be used. | [optional]
+**web_application** | **BOOLEAN** | Whether web scanning may be used. | [optional]
+
+
diff --git a/docs/Link.md b/docs/Link.md
new file mode 100644
index 0000000..cb142f6
--- /dev/null
+++ b/docs/Link.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::Link
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**href** | **String** | A hypertext reference, which is either a URI (see <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc3986\">RFC 3986</a>) or URI template (see <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc6570\">RFC 6570</a>). | [optional]
+**rel** | **String** | The link relation type. This value is one from the <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc5988#section-6.2\">Link Relation Type Registry</a> or is the type of resource being linked to. | [optional]
+
+
diff --git a/docs/Links.md b/docs/Links.md
new file mode 100644
index 0000000..954ef84
--- /dev/null
+++ b/docs/Links.md
@@ -0,0 +1,8 @@
+# Rapid7VmConsole::Links
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/LocalePreferences.md b/docs/LocalePreferences.md
new file mode 100644
index 0000000..6e604fa
--- /dev/null
+++ b/docs/LocalePreferences.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::LocalePreferences
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**default** | **String** | The default language to use. The format is a <a target=\"_blank\" href=\"https://tools.ietf.org/html/bcp47\">IETF BCP 47</a> language tag. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**reports** | **String** | The language to use to generate reports. The format is a <a target=\"_blank\" href=\"https://tools.ietf.org/html/bcp47\">IETF BCP 47</a> language tag. | [optional]
+
+
diff --git a/docs/MalwareKit.md b/docs/MalwareKit.md
new file mode 100644
index 0000000..9d1c52e
--- /dev/null
+++ b/docs/MalwareKit.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::MalwareKit
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the malware kit. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the malware kit. | [optional]
+**popularity** | **String** | The name of the malware kit. One of: `\"Rare\"`, `\"Uncommon\"`, `\"Occasional\"`, `\"Common\"`, `\"Popular\"`, `\"Favored\"`, `\"Unknown\"` | [optional]
+
+
diff --git a/docs/MatchedSolution.md b/docs/MatchedSolution.md
new file mode 100644
index 0000000..0e9c32d
--- /dev/null
+++ b/docs/MatchedSolution.md
@@ -0,0 +1,17 @@
+# Rapid7VmConsole::MatchedSolution
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**additional_information** | [**AdditionalInformation**](AdditionalInformation.md) | Additional information or resources that can assist in applying the remediation. | [optional]
+**applies_to** | **String** | The systems or software the solution applies to. | [optional]
+**confidence** | **String** | The confidence of the matching process for the solution. | [optional]
+**estimate** | **String** | The estimated duration to apply the solution, in ISO 8601 format. For example: `\"PT5M\"`. | [optional]
+**id** | **String** | The identifier of the solution. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**matches** | [**Array<SolutionMatch>**](SolutionMatch.md) | The raw matches that were performed in order to select the best solution(s). | [optional]
+**steps** | [**Steps**](Steps.md) | The steps required to remediate the vulnerability. | [optional]
+**summary** | [**Summary**](Summary.md) | The summary of the solution. | [optional]
+**type** | **String** | The type of the solution. One of: `\"Configuration\"`, `\"Rollup patch\"`, `\"Patch\"` | [optional]
+
+
diff --git a/docs/MemoryFree.md b/docs/MemoryFree.md
new file mode 100644
index 0000000..44d1657
--- /dev/null
+++ b/docs/MemoryFree.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::MemoryFree
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/MemoryInfo.md b/docs/MemoryInfo.md
new file mode 100644
index 0000000..fa4d401
--- /dev/null
+++ b/docs/MemoryInfo.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::MemoryInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**free** | [**MemoryFree**](MemoryFree.md) | Free memory. | [optional]
+**total** | [**MemoryTotal**](MemoryTotal.md) | Total memory usage. | [optional]
+
+
diff --git a/docs/MemoryTotal.md b/docs/MemoryTotal.md
new file mode 100644
index 0000000..15abab5
--- /dev/null
+++ b/docs/MemoryTotal.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::MemoryTotal
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/MetadataContainer.md b/docs/MetadataContainer.md
new file mode 100644
index 0000000..5e2a83e
--- /dev/null
+++ b/docs/MetadataContainer.md
@@ -0,0 +1,8 @@
+# Rapid7VmConsole::MetadataContainer
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**field_name** | [**IMetaData**](IMetaData.md) | | [optional]
+
+
diff --git a/docs/NotFoundError.md b/docs/NotFoundError.md
new file mode 100644
index 0000000..483c0e3
--- /dev/null
+++ b/docs/NotFoundError.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::NotFoundError
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The messages indicating the cause or reason for failure. | [optional]
+**status** | **String** | The HTTP status code for the error (same as in the HTTP response). |
+
+
diff --git a/docs/OperatingSystem.md b/docs/OperatingSystem.md
new file mode 100644
index 0000000..001b7e2
--- /dev/null
+++ b/docs/OperatingSystem.md
@@ -0,0 +1,18 @@
+# Rapid7VmConsole::OperatingSystem
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**architecture** | **String** | The architecture of the operating system. | [optional]
+**configurations** | [**Array<Configuration>**](Configuration.md) | Configuration key-values pairs enumerated on the operating system. | [optional]
+**cpe** | [**OperatingSystemCpe**](OperatingSystemCpe.md) | The Common Platform Enumeration (CPE) of the operating system. | [optional]
+**description** | **String** | The description of the operating system (containing vendor, family, product, version and architecture in a single string). | [optional]
+**family** | **String** | The family of the operating system. | [optional]
+**id** | **Integer** | The identifier of the operating system. | [optional]
+**product** | **String** | The name of the operating system. | [optional]
+**system_name** | **String** | A combination of vendor and family (with redundancies removed), suitable for grouping. | [optional]
+**type** | **String** | The type of operating system. | [optional]
+**vendor** | **String** | The vendor of the operating system. | [optional]
+**version** | **String** | The version of the operating system. | [optional]
+
+
diff --git a/docs/OperatingSystemCpe.md b/docs/OperatingSystemCpe.md
new file mode 100644
index 0000000..b503886
--- /dev/null
+++ b/docs/OperatingSystemCpe.md
@@ -0,0 +1,20 @@
+# Rapid7VmConsole::OperatingSystemCpe
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**edition** | **String** | Edition-related terms applied by the vendor to the product. | [optional]
+**language** | **String** | Defines the language supported in the user interface of the product being described. The format is of the language tag adheres to <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc5646\">RFC5646</a>. | [optional]
+**other** | **String** | Captures any other general descriptive or identifying information which is vendor- or product-specific and which does not logically fit in any other attribute value. | [optional]
+**part** | **String** | A single letter code that designates the particular platform part that is being identified. |
+**product** | **String** | the most common and recognizable title or name of the product. | [optional]
+**sw_edition** | **String** | Characterizes how the product is tailored to a particular market or class of end users. | [optional]
+**target_hw** | **String** | Characterize the instruction set architecture on which the product operates. | [optional]
+**target_sw** | **String** | Characterize the software computing environment within which the product operates. | [optional]
+**update** | **String** | Vendor-specific alphanumeric strings characterizing the particular update, service pack, or point release of the product. | [optional]
+**v2_2** | **String** | The full CPE string in the <a target=\"_blank\" href=\"https://cpe.mitre.org/files/cpe-specification_2.2.pdf\">CPE 2.2</a> format. | [optional]
+**v2_3** | **String** | The full CPE string in the <a target=\"_blank\" href=\"http://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir7695.pdf\">CPE 2.3</a> format. | [optional]
+**vendor** | **String** | The person or organization that manufactured or created the product. | [optional]
+**version** | **String** | Vendor-specific alphanumeric strings characterizing the particular release version of the product. | [optional]
+
+
diff --git a/docs/PCI.md b/docs/PCI.md
new file mode 100644
index 0000000..8cab5d8
--- /dev/null
+++ b/docs/PCI.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::PCI
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**adjusted_cvss_score** | **Integer** | The CVSS score of the vulnerability, adjusted for PCI rules and exceptions, on a scale of 0-10. | [optional]
+**adjusted_severity_score** | **Integer** | The severity score of the vulnerability, adjusted for PCI rules and exceptions, on a scale of 0-10. | [optional]
+**fail** | **BOOLEAN** | Whether if present on a host this vulnerability would cause a PCI failure. `true` if \"status\" is `\"Fail\"`, `false` otherwise. | [optional]
+**special_notes** | **String** | Any special notes or remarks about the vulnerability that pertain to PCI compliance. | [optional]
+**status** | **String** | The PCI compliance status of the vulnerability. One of: `\"Pass\"`, `\"Fail\"`. | [optional]
+
+
diff --git a/docs/PageInfo.md b/docs/PageInfo.md
new file mode 100644
index 0000000..f0d5749
--- /dev/null
+++ b/docs/PageInfo.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::PageInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**number** | **Integer** | The index (zero-based) of the current page returned. | [optional]
+**size** | **Integer** | The maximum size of the page returned. | [optional]
+**total_pages** | **Integer** | The total number of pages available. | [optional]
+**total_resources** | **Integer** | The total number of resources available across all pages. | [optional]
+
+
diff --git a/docs/PageOfAsset.md b/docs/PageOfAsset.md
new file mode 100644
index 0000000..e64bff1
--- /dev/null
+++ b/docs/PageOfAsset.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfAsset
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Asset>**](Asset.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfAssetGroup.md b/docs/PageOfAssetGroup.md
new file mode 100644
index 0000000..d07e41d
--- /dev/null
+++ b/docs/PageOfAssetGroup.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfAssetGroup
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<AssetGroup>**](AssetGroup.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfAssetPolicy.md b/docs/PageOfAssetPolicy.md
new file mode 100644
index 0000000..8b42fad
--- /dev/null
+++ b/docs/PageOfAssetPolicy.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfAssetPolicy
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<AssetPolicy>**](AssetPolicy.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfAssetPolicyItem.md b/docs/PageOfAssetPolicyItem.md
new file mode 100644
index 0000000..31bb2ad
--- /dev/null
+++ b/docs/PageOfAssetPolicyItem.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfAssetPolicyItem
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<AssetPolicyItem>**](AssetPolicyItem.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfDiscoveryConnection.md b/docs/PageOfDiscoveryConnection.md
new file mode 100644
index 0000000..912324f
--- /dev/null
+++ b/docs/PageOfDiscoveryConnection.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfDiscoveryConnection
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<DiscoveryConnection>**](DiscoveryConnection.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfExploit.md b/docs/PageOfExploit.md
new file mode 100644
index 0000000..39b7bce
--- /dev/null
+++ b/docs/PageOfExploit.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfExploit
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Exploit>**](Exploit.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfGlobalScan.md b/docs/PageOfGlobalScan.md
new file mode 100644
index 0000000..58dfa2b
--- /dev/null
+++ b/docs/PageOfGlobalScan.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfGlobalScan
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<GlobalScan>**](GlobalScan.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfMalwareKit.md b/docs/PageOfMalwareKit.md
new file mode 100644
index 0000000..16edd4b
--- /dev/null
+++ b/docs/PageOfMalwareKit.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfMalwareKit
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<MalwareKit>**](MalwareKit.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfOperatingSystem.md b/docs/PageOfOperatingSystem.md
new file mode 100644
index 0000000..5ae962c
--- /dev/null
+++ b/docs/PageOfOperatingSystem.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfOperatingSystem
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<OperatingSystem>**](OperatingSystem.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfPolicy.md b/docs/PageOfPolicy.md
new file mode 100644
index 0000000..7b49f2c
--- /dev/null
+++ b/docs/PageOfPolicy.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfPolicy
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Policy>**](Policy.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfPolicyAsset.md b/docs/PageOfPolicyAsset.md
new file mode 100644
index 0000000..10f749c
--- /dev/null
+++ b/docs/PageOfPolicyAsset.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfPolicyAsset
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<PolicyAsset>**](PolicyAsset.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfPolicyControl.md b/docs/PageOfPolicyControl.md
new file mode 100644
index 0000000..5740108
--- /dev/null
+++ b/docs/PageOfPolicyControl.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfPolicyControl
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<PolicyControl>**](PolicyControl.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfPolicyGroup.md b/docs/PageOfPolicyGroup.md
new file mode 100644
index 0000000..5d4cc0e
--- /dev/null
+++ b/docs/PageOfPolicyGroup.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfPolicyGroup
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<PolicyGroup>**](PolicyGroup.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfPolicyItem.md b/docs/PageOfPolicyItem.md
new file mode 100644
index 0000000..2a600d0
--- /dev/null
+++ b/docs/PageOfPolicyItem.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfPolicyItem
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<PolicyItem>**](PolicyItem.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfPolicyOverride.md b/docs/PageOfPolicyOverride.md
new file mode 100644
index 0000000..9e7bc88
--- /dev/null
+++ b/docs/PageOfPolicyOverride.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfPolicyOverride
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<PolicyOverride>**](PolicyOverride.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfPolicyRule.md b/docs/PageOfPolicyRule.md
new file mode 100644
index 0000000..306a454
--- /dev/null
+++ b/docs/PageOfPolicyRule.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfPolicyRule
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<PolicyRule>**](PolicyRule.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfReport.md b/docs/PageOfReport.md
new file mode 100644
index 0000000..103f1a6
--- /dev/null
+++ b/docs/PageOfReport.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfReport
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Report>**](Report.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfScan.md b/docs/PageOfScan.md
new file mode 100644
index 0000000..d671dee
--- /dev/null
+++ b/docs/PageOfScan.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfScan
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Scan>**](Scan.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfSite.md b/docs/PageOfSite.md
new file mode 100644
index 0000000..09c528c
--- /dev/null
+++ b/docs/PageOfSite.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfSite
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Site>**](Site.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfSoftware.md b/docs/PageOfSoftware.md
new file mode 100644
index 0000000..05b9345
--- /dev/null
+++ b/docs/PageOfSoftware.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfSoftware
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Software>**](Software.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfTag.md b/docs/PageOfTag.md
new file mode 100644
index 0000000..fde4a9c
--- /dev/null
+++ b/docs/PageOfTag.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfTag
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Tag>**](Tag.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfUser.md b/docs/PageOfUser.md
new file mode 100644
index 0000000..06e89a2
--- /dev/null
+++ b/docs/PageOfUser.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfUser
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<User>**](User.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfVulnerability.md b/docs/PageOfVulnerability.md
new file mode 100644
index 0000000..8d700d9
--- /dev/null
+++ b/docs/PageOfVulnerability.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfVulnerability
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<Vulnerability>**](Vulnerability.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfVulnerabilityCategory.md b/docs/PageOfVulnerabilityCategory.md
new file mode 100644
index 0000000..d5ca3db
--- /dev/null
+++ b/docs/PageOfVulnerabilityCategory.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfVulnerabilityCategory
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<VulnerabilityCategory>**](VulnerabilityCategory.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfVulnerabilityCheck.md b/docs/PageOfVulnerabilityCheck.md
new file mode 100644
index 0000000..8607035
--- /dev/null
+++ b/docs/PageOfVulnerabilityCheck.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfVulnerabilityCheck
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<VulnerabilityCheck>**](VulnerabilityCheck.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfVulnerabilityException.md b/docs/PageOfVulnerabilityException.md
new file mode 100644
index 0000000..5e7b2e2
--- /dev/null
+++ b/docs/PageOfVulnerabilityException.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfVulnerabilityException
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<VulnerabilityException>**](VulnerabilityException.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfVulnerabilityFinding.md b/docs/PageOfVulnerabilityFinding.md
new file mode 100644
index 0000000..9a952fe
--- /dev/null
+++ b/docs/PageOfVulnerabilityFinding.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfVulnerabilityFinding
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<VulnerabilityFinding>**](VulnerabilityFinding.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/PageOfVulnerabilityReference.md b/docs/PageOfVulnerabilityReference.md
new file mode 100644
index 0000000..9aef3c8
--- /dev/null
+++ b/docs/PageOfVulnerabilityReference.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::PageOfVulnerabilityReference
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**page** | [**PageInfo**](PageInfo.md) | The details of pagination indicating which page was returned, and how the remaining pages can be retrieved. | [optional]
+**resources** | [**Array<VulnerabilityReference>**](VulnerabilityReference.md) | The page of resources returned. | [optional]
+
+
diff --git a/docs/Policy.md b/docs/Policy.md
new file mode 100644
index 0000000..a2ae972
--- /dev/null
+++ b/docs/Policy.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::Policy
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**enabled** | **Array<Integer>** | The identifiers of the policies enabled to be checked during a scan. No policies are enabled by default. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**recursive_windows_fs_search** | **BOOLEAN** | Whether recursive windows file searches are enabled, if your internal security practices require this capability. Recursive file searches can increase scan times by several hours, depending on the number of files and other factors, so this setting is disabled for Windows systems by default. Defaults to `false`. | [optional]
+**store_scap** | **BOOLEAN** | Whether Asset Reporting Format (ARF) results are stored. If you are required to submit reports of your policy scan results to the U.S. government in ARF for SCAP certification, you will need to store SCAP data so that it can be exported in this format. Note that stored SCAP data can accumulate rapidly, which can have a significant impact on file storage. Defaults to `false`. | [optional]
+
+
diff --git a/docs/PolicyApi.md b/docs/PolicyApi.md
new file mode 100644
index 0000000..dde4f5a
--- /dev/null
+++ b/docs/PolicyApi.md
@@ -0,0 +1,1421 @@
+# Rapid7VmConsole::PolicyApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**get_asset_policy_children**](PolicyApi.md#get_asset_policy_children) | **GET** /api/3/assets/{assetId}/policies/{policyId}/children | Policy Rules or Groups Directly Under Policy For Asset
+[**get_asset_policy_group_children**](PolicyApi.md#get_asset_policy_group_children) | **GET** /api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/children | Policy Rules or Groups Directly Under Policy Group For Asset
+[**get_asset_policy_rules_summary**](PolicyApi.md#get_asset_policy_rules_summary) | **GET** /api/3/assets/{assetId}/policies/{policyId}/rules | Policy Rules For Asset
+[**get_descendant_policy_rules**](PolicyApi.md#get_descendant_policy_rules) | **GET** /api/3/policies/{policyId}/groups/{groupId}/rules | Policy Rules Under Policy Group
+[**get_disabled_policy_rules**](PolicyApi.md#get_disabled_policy_rules) | **GET** /api/3/policies/{policyId}/rules/disabled | Disabled Policy Rules
+[**get_policies**](PolicyApi.md#get_policies) | **GET** /api/3/policies | Policies
+[**get_policies_for_asset**](PolicyApi.md#get_policies_for_asset) | **GET** /api/3/assets/{assetId}/policies | Policies For Asset
+[**get_policy**](PolicyApi.md#get_policy) | **GET** /api/3/policies/{policyId} | Policy
+[**get_policy_asset_result**](PolicyApi.md#get_policy_asset_result) | **GET** /api/3/policies/{policyId}/assets/{assetId} | Policy Asset Result
+[**get_policy_asset_results**](PolicyApi.md#get_policy_asset_results) | **GET** /api/3/policies/{policyId}/assets | Policy Asset Results
+[**get_policy_children**](PolicyApi.md#get_policy_children) | **GET** /api/3/policies/{id}/children | Policy Rules or Groups Directly Under Policy
+[**get_policy_group**](PolicyApi.md#get_policy_group) | **GET** /api/3/policies/{policyId}/groups/{groupId} | Policy Group
+[**get_policy_group_asset_result**](PolicyApi.md#get_policy_group_asset_result) | **GET** /api/3/policies/{policyId}/groups/{groupId}/assets/{assetId} | Asset Compliance For Policy Rules Under Policy Group
+[**get_policy_group_asset_results**](PolicyApi.md#get_policy_group_asset_results) | **GET** /api/3/policies/{policyId}/groups/{groupId}/assets | Assets Compliance For Policy Rules Under Policy Group
+[**get_policy_group_children**](PolicyApi.md#get_policy_group_children) | **GET** /api/3/policies/{policyId}/groups/{groupId}/children | Policy Rules or Groups Directly Under Policy Group
+[**get_policy_group_rules_with_asset_assessment**](PolicyApi.md#get_policy_group_rules_with_asset_assessment) | **GET** /api/3/assets/{assetId}/policies/{policyId}/groups/{groupId}/rules | Policy Rules Under Policy Group For Asset
+[**get_policy_groups**](PolicyApi.md#get_policy_groups) | **GET** /api/3/policies/{policyId}/groups | Policy Groups
+[**get_policy_rule**](PolicyApi.md#get_policy_rule) | **GET** /api/3/policies/{policyId}/rules/{ruleId} | Policy Rule
+[**get_policy_rule_asset_result**](PolicyApi.md#get_policy_rule_asset_result) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId} | Asset Compliance For Policy Rule
+[**get_policy_rule_asset_result_proof**](PolicyApi.md#get_policy_rule_asset_result_proof) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/assets/{assetId}/proof | Policy Rule Proof For Asset
+[**get_policy_rule_asset_results**](PolicyApi.md#get_policy_rule_asset_results) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/assets | Assets Compliance For Policy Rule
+[**get_policy_rule_controls**](PolicyApi.md#get_policy_rule_controls) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/controls | Policy Rule Controls
+[**get_policy_rule_rationale**](PolicyApi.md#get_policy_rule_rationale) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/rationale | Policy Rule Rationale
+[**get_policy_rule_remediation**](PolicyApi.md#get_policy_rule_remediation) | **GET** /api/3/policies/{policyId}/rules/{ruleId}/remediation | Policy Rule Remediation
+[**get_policy_rules**](PolicyApi.md#get_policy_rules) | **GET** /api/3/policies/{policyId}/rules | Policy Rules
+[**get_policy_summary**](PolicyApi.md#get_policy_summary) | **GET** /api/3/policy/summary | Policy Compliance Summaries
+
+
+# **get_asset_policy_children**
+> PageOfAssetPolicyItem get_asset_policy_children(asset_id, policy_id)
+
+Policy Rules or Groups Directly Under Policy For Asset
+
+Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy with rule compliance results for the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+policy_id = 789 # Integer | The identifier of the policy
+
+
+begin
+ #Policy Rules or Groups Directly Under Policy For Asset
+ result = api_instance.get_asset_policy_children(asset_id, policy_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_asset_policy_children: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **asset_id** | **Integer**| The identifier of the asset. |
+ **policy_id** | **Integer**| The identifier of the policy |
+
+### Return type
+
+[**PageOfAssetPolicyItem**](PageOfAssetPolicyItem.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_policy_group_children**
+> PageOfAssetPolicyItem get_asset_policy_group_children(asset_id, policy_id, group_id)
+
+Policy Rules or Groups Directly Under Policy Group For Asset
+
+Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy group with rule compliance results for the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+policy_id = 789 # Integer | The identifier of the policy
+
+group_id = 789 # Integer | The identifier of the policy group.
+
+
+begin
+ #Policy Rules or Groups Directly Under Policy Group For Asset
+ result = api_instance.get_asset_policy_group_children(asset_id, policy_id, group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_asset_policy_group_children: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **asset_id** | **Integer**| The identifier of the asset. |
+ **policy_id** | **Integer**| The identifier of the policy |
+ **group_id** | **Integer**| The identifier of the policy group. |
+
+### Return type
+
+[**PageOfAssetPolicyItem**](PageOfAssetPolicyItem.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_policy_rules_summary**
+> PageOfPolicyRule get_asset_policy_rules_summary(asset_id, policy_id, opts)
+
+Policy Rules For Asset
+
+Retrieves the list of policy rules with compliance results for the specified asset and policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+policy_id = 789 # Integer | The identifier of the policy
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Rules For Asset
+ result = api_instance.get_asset_policy_rules_summary(asset_id, policy_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_asset_policy_rules_summary: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **asset_id** | **Integer**| The identifier of the asset. |
+ **policy_id** | **Integer**| The identifier of the policy |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyRule**](PageOfPolicyRule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_descendant_policy_rules**
+> PageOfPolicyRule get_descendant_policy_rules(policy_id, group_id, opts)
+
+Policy Rules Under Policy Group
+
+Retrieves the list of policy rules defined directly, or indirectly, underneath the specified policy group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+group_id = 789 # Integer | The identifier of the policy group.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Rules Under Policy Group
+ result = api_instance.get_descendant_policy_rules(policy_id, group_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_descendant_policy_rules: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **group_id** | **Integer**| The identifier of the policy group. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyRule**](PageOfPolicyRule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_disabled_policy_rules**
+> PageOfPolicyRule get_disabled_policy_rules(policy_id, opts)
+
+Disabled Policy Rules
+
+Retrieves a paged resource of disabled policy rules for the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Disabled Policy Rules
+ result = api_instance.get_disabled_policy_rules(policy_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_disabled_policy_rules: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyRule**](PageOfPolicyRule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policies**
+> PageOfPolicy get_policies(opts)
+
+Policies
+
+Retrieves a paged resource of policies.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+opts = {
+ filter: "filter_example", # String | Filters the retrieved policies with those whose titles that match the parameter.
+ scanned_only: true, # BOOLEAN | Flag indicating the policies retrieved should only include those with Pass or Fail compliance results. The list of scanned policies is based on the user's list of accessible assets.
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policies
+ result = api_instance.get_policies(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policies: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **filter** | **String**| Filters the retrieved policies with those whose titles that match the parameter. | [optional]
+ **scanned_only** | **BOOLEAN**| Flag indicating the policies retrieved should only include those with Pass or Fail compliance results. The list of scanned policies is based on the user's list of accessible assets. | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicy**](PageOfPolicy.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policies_for_asset**
+> PageOfAssetPolicy get_policies_for_asset(asset_id, opts)
+
+Policies For Asset
+
+Retrieves the list of policies with compliance results for the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+opts = {
+ applicable_only: true, # BOOLEAN | An optional boolean parameter indicating the policies retrieved should only include those with a policy compliance status of either a PASS of FAIL result. Default value is `false`, which will also include policies with a compliance status of NOT_APPLICABLE.
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policies For Asset
+ result = api_instance.get_policies_for_asset(asset_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policies_for_asset: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **asset_id** | **Integer**| The identifier of the asset. |
+ **applicable_only** | **BOOLEAN**| An optional boolean parameter indicating the policies retrieved should only include those with a policy compliance status of either a PASS of FAIL result. Default value is `false`, which will also include policies with a compliance status of NOT_APPLICABLE. | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfAssetPolicy**](PageOfAssetPolicy.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy**
+> Policy get_policy(policy_id)
+
+Policy
+
+Retrieves the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+
+begin
+ #Policy
+ result = api_instance.get_policy(policy_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+
+### Return type
+
+[**Policy**](Policy.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_asset_result**
+> PolicyAsset get_policy_asset_result(policy_id, asset_id)
+
+Policy Asset Result
+
+Retrieves an asset resource with rule compliance results for the specified asset and policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Policy Asset Result
+ result = api_instance.get_policy_asset_result(policy_id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_asset_result: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**PolicyAsset**](PolicyAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_asset_results**
+> PageOfPolicyAsset get_policy_asset_results(policy_id, opts)
+
+Policy Asset Results
+
+Retrieves asset resources with rule compliance results for the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+opts = {
+ applicable_only: true, # BOOLEAN | An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Asset Results
+ result = api_instance.get_policy_asset_results(policy_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_asset_results: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **applicable_only** | **BOOLEAN**| An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE. | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyAsset**](PageOfPolicyAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_children**
+> PageOfPolicyItem get_policy_children(id)
+
+Policy Rules or Groups Directly Under Policy
+
+Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+id = 789 # Integer | The identifier of the policy
+
+
+begin
+ #Policy Rules or Groups Directly Under Policy
+ result = api_instance.get_policy_children(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_children: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the policy |
+
+### Return type
+
+[**PageOfPolicyItem**](PageOfPolicyItem.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_group**
+> PolicyGroup get_policy_group(policy_id, group_id)
+
+Policy Group
+
+Retrieves the specified policy group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+group_id = 789 # Integer | The identifier of the policy group.
+
+
+begin
+ #Policy Group
+ result = api_instance.get_policy_group(policy_id, group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **group_id** | **Integer**| The identifier of the policy group. |
+
+### Return type
+
+[**PolicyGroup**](PolicyGroup.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_group_asset_result**
+> PolicyAsset get_policy_group_asset_result(policy_id, group_id, asset_id)
+
+Asset Compliance For Policy Rules Under Policy Group
+
+Retrieves an asset resource with rule compliance status against all rules under the specified policy group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+group_id = 789 # Integer | The identifier of the policy group.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Compliance For Policy Rules Under Policy Group
+ result = api_instance.get_policy_group_asset_result(policy_id, group_id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_group_asset_result: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **group_id** | **Integer**| The identifier of the policy group. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**PolicyAsset**](PolicyAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_group_asset_results**
+> PageOfPolicyAsset get_policy_group_asset_results(policy_id, group_id, opts)
+
+Assets Compliance For Policy Rules Under Policy Group
+
+Retrieves asset resources with rule compliance status against all rules under the specified policy group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+group_id = 789 # Integer | The identifier of the policy group.
+
+opts = {
+ applicable_only: true, # BOOLEAN | An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Assets Compliance For Policy Rules Under Policy Group
+ result = api_instance.get_policy_group_asset_results(policy_id, group_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_group_asset_results: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **group_id** | **Integer**| The identifier of the policy group. |
+ **applicable_only** | **BOOLEAN**| An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE. | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyAsset**](PageOfPolicyAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_group_children**
+> PageOfPolicyItem get_policy_group_children(policy_id, group_id)
+
+Policy Rules or Groups Directly Under Policy Group
+
+Retrieves a paged resource of either policy rules, or groups, that are defined directly underneath the specified policy group.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+group_id = 789 # Integer | The identifier of the policy group.
+
+
+begin
+ #Policy Rules or Groups Directly Under Policy Group
+ result = api_instance.get_policy_group_children(policy_id, group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_group_children: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **group_id** | **Integer**| The identifier of the policy group. |
+
+### Return type
+
+[**PageOfPolicyItem**](PageOfPolicyItem.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_group_rules_with_asset_assessment**
+> PageOfPolicyRule get_policy_group_rules_with_asset_assessment(asset_id, policy_id, group_id, opts)
+
+Policy Rules Under Policy Group For Asset
+
+Retrieves the list of policy rules defined directly, or indirectly, underneath the specified policy group and the compliance results for the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+policy_id = 789 # Integer | The identifier of the policy
+
+group_id = 789 # Integer | The identifier of the policy group.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Rules Under Policy Group For Asset
+ result = api_instance.get_policy_group_rules_with_asset_assessment(asset_id, policy_id, group_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_group_rules_with_asset_assessment: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **asset_id** | **Integer**| The identifier of the asset. |
+ **policy_id** | **Integer**| The identifier of the policy |
+ **group_id** | **Integer**| The identifier of the policy group. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyRule**](PageOfPolicyRule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_groups**
+> PageOfPolicyGroup get_policy_groups(policy_id, opts)
+
+Policy Groups
+
+Retrieves a paged resource of policy groups for the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Groups
+ result = api_instance.get_policy_groups(policy_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyGroup**](PageOfPolicyGroup.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_rule**
+> PolicyRule get_policy_rule(policy_id, rule_id)
+
+Policy Rule
+
+Retrieves the specified policy rule.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+rule_id = 789 # Integer | The identifier of the policy rule.
+
+
+begin
+ #Policy Rule
+ result = api_instance.get_policy_rule(policy_id, rule_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rule: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **rule_id** | **Integer**| The identifier of the policy rule. |
+
+### Return type
+
+[**PolicyRule**](PolicyRule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_rule_asset_result**
+> PolicyAsset get_policy_rule_asset_result(policy_id, rule_id, asset_id)
+
+Asset Compliance For Policy Rule
+
+Retrieves an asset resource with rule compliance results for the specified policy policy rule.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+rule_id = 789 # Integer | The identifier of the policy rule.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Compliance For Policy Rule
+ result = api_instance.get_policy_rule_asset_result(policy_id, rule_id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rule_asset_result: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **rule_id** | **Integer**| The identifier of the policy rule. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**PolicyAsset**](PolicyAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_rule_asset_result_proof**
+> String get_policy_rule_asset_result_proof(policy_id, rule_id, asset_id)
+
+Policy Rule Proof For Asset
+
+Retrieves the policy rule proof captured during evaluation against the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+rule_id = 789 # Integer | The identifier of the policy rule.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Policy Rule Proof For Asset
+ result = api_instance.get_policy_rule_asset_result_proof(policy_id, rule_id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rule_asset_result_proof: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **rule_id** | **Integer**| The identifier of the policy rule. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: text/html
+
+
+
+# **get_policy_rule_asset_results**
+> PageOfPolicyAsset get_policy_rule_asset_results(policy_id, rule_id, opts)
+
+Assets Compliance For Policy Rule
+
+Retrieves asset resources with rule compliance results for the specified policy policy rule.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+rule_id = 789 # Integer | The identifier of the policy rule.
+
+opts = {
+ applicable_only: true, # BOOLEAN | An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE.
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Assets Compliance For Policy Rule
+ result = api_instance.get_policy_rule_asset_results(policy_id, rule_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rule_asset_results: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **rule_id** | **Integer**| The identifier of the policy rule. |
+ **applicable_only** | **BOOLEAN**| An optional boolean parameter indicating the assets retrieved should only include those with rule results of either PASS or FAIL. Default value is `false`, which will also include assets with a compliance status of NOT_APPLICABLE. | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyAsset**](PageOfPolicyAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_rule_controls**
+> PageOfPolicyControl get_policy_rule_controls(policy_id, rule_id, opts)
+
+Policy Rule Controls
+
+Retrieves all NIST SP 800-53 controls mappings for each CCE within the specified policy rule.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+rule_id = 789 # Integer | The identifier of the policy rule.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Rule Controls
+ result = api_instance.get_policy_rule_controls(policy_id, rule_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rule_controls: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **rule_id** | **Integer**| The identifier of the policy rule. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyControl**](PageOfPolicyControl.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_rule_rationale**
+> String get_policy_rule_rationale(policy_id, rule_id)
+
+Policy Rule Rationale
+
+Retrieves the policy rule rationale for the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+rule_id = 789 # Integer | The identifier of the policy rule.
+
+
+begin
+ #Policy Rule Rationale
+ result = api_instance.get_policy_rule_rationale(policy_id, rule_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rule_rationale: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **rule_id** | **Integer**| The identifier of the policy rule. |
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: text/html
+
+
+
+# **get_policy_rule_remediation**
+> String get_policy_rule_remediation(policy_id, rule_id)
+
+Policy Rule Remediation
+
+Retrieves the policy rule remediation for the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+rule_id = 789 # Integer | The identifier of the policy rule.
+
+
+begin
+ #Policy Rule Remediation
+ result = api_instance.get_policy_rule_remediation(policy_id, rule_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rule_remediation: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **rule_id** | **Integer**| The identifier of the policy rule. |
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: text/html
+
+
+
+# **get_policy_rules**
+> PageOfPolicyRule get_policy_rules(policy_id, opts)
+
+Policy Rules
+
+Retrieves a paged resource of policy rules for the specified policy.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+policy_id = 789 # Integer | The identifier of the policy
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Rules
+ result = api_instance.get_policy_rules(policy_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_rules: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **policy_id** | **Integer**| The identifier of the policy |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyRule**](PageOfPolicyRule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_summary**
+> PolicySummaryResource get_policy_summary
+
+Policy Compliance Summaries
+
+Retrieves a compliance summary of all policies.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyApi.new
+
+begin
+ #Policy Compliance Summaries
+ result = api_instance.get_policy_summary
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyApi->get_policy_summary: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**PolicySummaryResource**](PolicySummaryResource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/PolicyAsset.md b/docs/PolicyAsset.md
new file mode 100644
index 0000000..f20e34f
--- /dev/null
+++ b/docs/PolicyAsset.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::PolicyAsset
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**hostname** | **String** | The primary host name (local or FQDN) of the asset. | [optional]
+**id** | **Integer** | The identifier of the asset. | [optional]
+**ip** | **String** | The primary IPv4 or IPv6 address of the asset. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**os** | [**OperatingSystem**](OperatingSystem.md) | The full description of the operating system of the asset. | [optional]
+**status** | **String** | The overall compliance status of the asset. | [optional]
+
+
diff --git a/docs/PolicyBenchmark.md b/docs/PolicyBenchmark.md
new file mode 100644
index 0000000..6fc04df
--- /dev/null
+++ b/docs/PolicyBenchmark.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::PolicyBenchmark
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the policy's benchmark. | [optional]
+**title** | **String** | The title of the policy benchmark. | [optional]
+**version** | **String** | The version number of the benchmark that includes the policy. | [optional]
+
+
diff --git a/docs/PolicyControl.md b/docs/PolicyControl.md
new file mode 100644
index 0000000..1d980fc
--- /dev/null
+++ b/docs/PolicyControl.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::PolicyControl
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**cce_item_id** | **String** | The identifier of the CCE item. | [optional]
+**cce_platform** | **String** | The platform of the CCE. | [optional]
+**control_name** | **String** | The name of the control mapping. | [optional]
+**id** | **String** | The textual representation of the control identifier. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**published_date** | **Integer** | The published date of the control mapping. | [optional]
+
+
diff --git a/docs/PolicyGroup.md b/docs/PolicyGroup.md
new file mode 100644
index 0000000..591d1ce
--- /dev/null
+++ b/docs/PolicyGroup.md
@@ -0,0 +1,18 @@
+# Rapid7VmConsole::PolicyGroup
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | [**AssetPolicyAssessment**](AssetPolicyAssessment.md) | A summary of asset compliance. | [optional]
+**benchmark** | [**PolicyBenchmark**](PolicyBenchmark.md) | Information about the policy benchmark. | [optional]
+**description** | **String** | A description of the policy group. | [optional]
+**id** | **String** | The textual representation of the policy group identifier. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the policy group. | [optional]
+**policy** | [**PolicyMetadataResource**](PolicyMetadataResource.md) | Information about the policy. | [optional]
+**scope** | **String** | The textual representation of the policy group scope. Policy groups that are automatically available have `\"Built-in\"` scope, whereas policy groups created by users have scope as `\"Custom\"`. | [optional]
+**status** | **String** | The overall compliance status of the policy group. | [optional]
+**surrogate_id** | **Integer** | The identifier of the policy group. | [optional]
+**title** | **String** | The title of the policy group as visible to the user. | [optional]
+
+
diff --git a/docs/PolicyItem.md b/docs/PolicyItem.md
new file mode 100644
index 0000000..a232bfb
--- /dev/null
+++ b/docs/PolicyItem.md
@@ -0,0 +1,20 @@
+# Rapid7VmConsole::PolicyItem
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | [**AssetPolicyAssessment**](AssetPolicyAssessment.md) | A summary of asset compliance. | [optional]
+**description** | **String** | A description of the policy rule or group. | [optional]
+**has_override** | **BOOLEAN** | A flag indicating whether the policy rule has an active override applied to it. This field only applies to resources representing policy rules. | [optional]
+**id** | **Integer** | The identifier of the policy rule or group. | [optional]
+**is_unscored** | **BOOLEAN** | A flag indicating whether the policy rule has a role of `\"unscored\"`. This field only applies to resources representing policy rules. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the policy rule or group. | [optional]
+**policy** | [**PolicyMetadataResource**](PolicyMetadataResource.md) | Information about the policy. | [optional]
+**rules** | [**PolicyRuleAssessmentResource**](PolicyRuleAssessmentResource.md) | A summary of rule compliance for multiple policy rules. This field only applies to resources representing policy groups. | [optional]
+**scope** | **String** | The textual representation of the policy rule/group scope. Policy rules or groups that are automatically available have `\"Built-in\"` scope, whereas policy rules or groups created by users have scope as `\"Custom\"`. | [optional]
+**status** | **String** | The overall compliance status of the policy rule or group. | [optional]
+**title** | **String** | The title of the policy rule, or group, as visible to the user. | [optional]
+**type** | **String** | Indicates whether the resource represents either a policy rule or group. | [optional]
+
+
diff --git a/docs/PolicyMetadataResource.md b/docs/PolicyMetadataResource.md
new file mode 100644
index 0000000..0338f1e
--- /dev/null
+++ b/docs/PolicyMetadataResource.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::PolicyMetadataResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the policy. | [optional]
+**title** | **String** | The title of the policy as visible to the user. | [optional]
+**version** | **String** | The version of the policy. | [optional]
+
+
diff --git a/docs/PolicyOverride.md b/docs/PolicyOverride.md
new file mode 100644
index 0000000..9a942ab
--- /dev/null
+++ b/docs/PolicyOverride.md
@@ -0,0 +1,14 @@
+# Rapid7VmConsole::PolicyOverride
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**expires** | **String** | The date the policy override is set to expire. Date is represented in ISO 8601 format. | [optional]
+**id** | **Integer** | The identifier of the policy override. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**review** | [**PolicyOverrideReviewer**](PolicyOverrideReviewer.md) | Details regarding the review and/or approval of the policy override. | [optional]
+**scope** | [**PolicyOverrideScope**](PolicyOverrideScope.md) | The scope of the policy override. Indicates which assets' policy compliance results are to be affected by the override. |
+**state** | **String** | The state of the policy override. Can be one of the following values: | Value | Description | Affects Compliance Results | | ---------------- | ----------------------------------------------------------------------------------- |:--------------------------:| | `\"deleted\"` | The policy override has been deleted. | | | `\"expired\"` | The policy override had an expiration date and it has expired. | | | `\"approved\"` | The policy override was submitted and approved. | ✓ | | `\"rejected\"` | The policy override was rejected by the reviewer. | | | `\"under-review\"` | The policy override was submitted but not yet approved or rejected by the reviewer. | | |
+**submit** | [**PolicyOverrideSubmitter**](PolicyOverrideSubmitter.md) | Details regarding the submission of the policy override. |
+
+
diff --git a/docs/PolicyOverrideApi.md b/docs/PolicyOverrideApi.md
new file mode 100644
index 0000000..da5c28e
--- /dev/null
+++ b/docs/PolicyOverrideApi.md
@@ -0,0 +1,408 @@
+# Rapid7VmConsole::PolicyOverrideApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_policy_override**](PolicyOverrideApi.md#create_policy_override) | **POST** /api/3/policy_overrides | Policy Overrides
+[**delete_policy_override**](PolicyOverrideApi.md#delete_policy_override) | **DELETE** /api/3/policy_overrides/{id} | Policy Override
+[**get_asset_policy_overrides**](PolicyOverrideApi.md#get_asset_policy_overrides) | **GET** /api/3/assets/{id}/policy_overrides | Asset Policy Overrides
+[**get_policy_override**](PolicyOverrideApi.md#get_policy_override) | **GET** /api/3/policy_overrides/{id} | Policy Override
+[**get_policy_override_expiration**](PolicyOverrideApi.md#get_policy_override_expiration) | **GET** /api/3/policy_overrides/{id}/expires | Policy Override Expiration
+[**get_policy_overrides**](PolicyOverrideApi.md#get_policy_overrides) | **GET** /api/3/policy_overrides | Policy Overrides
+[**set_policy_override_expiration**](PolicyOverrideApi.md#set_policy_override_expiration) | **PUT** /api/3/policy_overrides/{id}/expires | Policy Override Expiration
+[**set_policy_override_status**](PolicyOverrideApi.md#set_policy_override_status) | **POST** /api/3/policy_overrides/{id}/{status} | Policy Override Status
+
+
+# **create_policy_override**
+> CreatedReferencePolicyOverrideIDLink create_policy_override(opts)
+
+Policy Overrides
+
+Submit a policy override. The policy override can be submitted or it can be submitted and approved in a single request.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+opts = {
+ param0: Rapid7VmConsole::PolicyOverride.new # PolicyOverride | The specification of a policy override. Allows users to override the compliance result of a policy rule.
+}
+
+begin
+ #Policy Overrides
+ result = api_instance.create_policy_override(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->create_policy_override: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**PolicyOverride**](PolicyOverride.md)| The specification of a policy override. Allows users to override the compliance result of a policy rule. | [optional]
+
+### Return type
+
+[**CreatedReferencePolicyOverrideIDLink**](CreatedReferencePolicyOverrideIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_policy_override**
+> Links delete_policy_override(id)
+
+Policy Override
+
+Removes a policy override created for a policy rule.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+id = 789 # Integer | The identifier of the policy override.
+
+
+begin
+ #Policy Override
+ result = api_instance.delete_policy_override(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->delete_policy_override: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the policy override. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_policy_overrides**
+> ResourcesPolicyOverride get_asset_policy_overrides(id)
+
+Asset Policy Overrides
+
+Retrieves policy overrides defined on policy rules for the specified asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Asset Policy Overrides
+ result = api_instance.get_asset_policy_overrides(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->get_asset_policy_overrides: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**ResourcesPolicyOverride**](ResourcesPolicyOverride.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_override**
+> PolicyOverride get_policy_override(id)
+
+Policy Override
+
+Retrieve the specified policy override.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+id = 789 # Integer | The identifier of the policy override.
+
+
+begin
+ #Policy Override
+ result = api_instance.get_policy_override(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->get_policy_override: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the policy override. |
+
+### Return type
+
+[**PolicyOverride**](PolicyOverride.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_override_expiration**
+> String get_policy_override_expiration(id)
+
+Policy Override Expiration
+
+Get the expiration date for a policy override.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+id = 789 # Integer | The identifier of the policy override.
+
+
+begin
+ #Policy Override Expiration
+ result = api_instance.get_policy_override_expiration(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->get_policy_override_expiration: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the policy override. |
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_policy_overrides**
+> PageOfPolicyOverride get_policy_overrides(opts)
+
+Policy Overrides
+
+Retrieves policy overrides defined on policy rules.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Policy Overrides
+ result = api_instance.get_policy_overrides(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->get_policy_overrides: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfPolicyOverride**](PageOfPolicyOverride.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_policy_override_expiration**
+> Links set_policy_override_expiration(id, opts)
+
+Policy Override Expiration
+
+Set the expiration date for a policy override. This must be a valid date in the future.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+id = 789 # Integer | The identifier of the policy override.
+
+opts = {
+ param1: "param1_example" # String | The date the policy override is set to expire. Date is represented in ISO 8601 format.
+}
+
+begin
+ #Policy Override Expiration
+ result = api_instance.set_policy_override_expiration(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->set_policy_override_expiration: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the policy override. |
+ **param1** | **String**| The date the policy override is set to expire. Date is represented in ISO 8601 format. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_policy_override_status**
+> set_policy_override_status(id, status, opts)
+
+Policy Override Status
+
+Update the status of the specified policy override. The status can be one of the following: `\"recall\"`, `\"approve\"`, or `\"reject\"`.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::PolicyOverrideApi.new
+
+id = 789 # Integer | The identifier of the policy override.
+
+status = "status_example" # String | Policy Override Status
+
+opts = {
+ param2: "param2_example" # String | A comment describing the change of the policy override status.
+}
+
+begin
+ #Policy Override Status
+ api_instance.set_policy_override_status(id, status, opts)
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling PolicyOverrideApi->set_policy_override_status: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the policy override. |
+ **status** | **String**| Policy Override Status |
+ **param2** | **String**| A comment describing the change of the policy override status. | [optional]
+
+### Return type
+
+nil (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/PolicyOverrideReviewer.md b/docs/PolicyOverrideReviewer.md
new file mode 100644
index 0000000..08c5b8a
--- /dev/null
+++ b/docs/PolicyOverrideReviewer.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::PolicyOverrideReviewer
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **String** | A comment from the reviewer detailing the review. Cannot exceed 1024 characters. | [optional]
+**date** | **String** | The date the review took place. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The identifier of the user that reviewed the policy override. | [optional]
+**user** | **Integer** | The login name of the user that reviewed the policy override. | [optional]
+
+
diff --git a/docs/PolicyOverrideScope.md b/docs/PolicyOverrideScope.md
new file mode 100644
index 0000000..a9014aa
--- /dev/null
+++ b/docs/PolicyOverrideScope.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::PolicyOverrideScope
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**asset** | **Integer** | The identifier of the asset whose compliance results are to be overridden. Property is required if the property `scope` is set to either `\"specific-asset\"` or `\"specific-asset-until-next-scan\"`. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**new_result** | **String** | The new policy rule result after the override is applied. |
+**original_result** | **String** | The original policy rule result before the override was applied. This property only applies to overrides with a scope of either `\"specific-asset\"` or `\"specific-asset-until-next-scan\"`. | [optional]
+**rule** | **Integer** | The identifier of the policy rule whose compliance results are to be overridden. |
+**type** | **String** | The scope of assets affected by the policy override. Can be one of the following values: | Value | Description | | ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | | `\"all-assets\"` | Overrides the compliance result of all assets evaluated with the specified policy rule. | | `\"specific-asset\"` | Overrides the compliance result of a single asset evaluated with the specified policy rule. | | `\"specific-asset-until-next-scan\"` | Overrides the compliance result of a single asset evaluated with the specified policy rule until the next time asset is evaluated against that policy rule. | |
+
+
diff --git a/docs/PolicyOverrideSubmitter.md b/docs/PolicyOverrideSubmitter.md
new file mode 100644
index 0000000..45d4b40
--- /dev/null
+++ b/docs/PolicyOverrideSubmitter.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::PolicyOverrideSubmitter
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **String** | A comment from the submitter as to why the policy override was submitted. Cannot exceed 1024 characters. |
+**date** | **String** | The date the policy override was submitted. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The login name of the user that submitted the policy override. | [optional]
+**user** | **Integer** | The identifier of the user that submitted the policy override. | [optional]
+
+
diff --git a/docs/PolicyRule.md b/docs/PolicyRule.md
new file mode 100644
index 0000000..c0ebfad
--- /dev/null
+++ b/docs/PolicyRule.md
@@ -0,0 +1,19 @@
+# Rapid7VmConsole::PolicyRule
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | [**AssetPolicyAssessment**](AssetPolicyAssessment.md) | A summary of asset compliance. | [optional]
+**benchmark** | [**PolicyBenchmark**](PolicyBenchmark.md) | Information about the policy benchmark. | [optional]
+**description** | **String** | A description of the rule. | [optional]
+**id** | **String** | The textual representation of the policy rule identifier. | [optional]
+**is_custom** | **BOOLEAN** | A flag indicating whether the policy rule is custom. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the rule. | [optional]
+**role** | **String** | The role of the policy rule. It's value determines how it's results affect compliance. | [optional]
+**scope** | **String** | The textual representation of the policy rule scope. Policy rules that are automatically available have `\"Built-in\"` scope, whereas policy rules created by users have scope as `\"Custom\"`. | [optional]
+**status** | **String** | The overall compliance status of the policy rule. | [optional]
+**surrogate_id** | **Integer** | The identifier of the policy rule. | [optional]
+**title** | **String** | The title of the policy rule as visible to the user. | [optional]
+
+
diff --git a/docs/PolicyRuleAssessmentResource.md b/docs/PolicyRuleAssessmentResource.md
new file mode 100644
index 0000000..a2e5e12
--- /dev/null
+++ b/docs/PolicyRuleAssessmentResource.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::PolicyRuleAssessmentResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**total** | **Integer** | The total number of policy rules. | [optional]
+**total_failed** | **Integer** | The total number of policy rules that are not compliant against all assets. | [optional]
+**total_not_applicable** | **Integer** | The total number of policy rules that are not applicable against all assets. | [optional]
+**total_passed** | **Integer** | The total number of policy rules that are compliant against all assets. | [optional]
+**unscored** | **Integer** | The total number of policy rules that have a role of `\"unscored\"`. | [optional]
+
+
diff --git a/docs/PolicySummaryResource.md b/docs/PolicySummaryResource.md
new file mode 100644
index 0000000..c473564
--- /dev/null
+++ b/docs/PolicySummaryResource.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::PolicySummaryResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**decreased_compliance** | **Integer** | The total number of policies whose overall compliance has decreased between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets. | [optional]
+**increased_compliance** | **Integer** | The total number of policies whose overall compliance has increased between the last two scans of all assets. The list of scanned policies is based on the user's list of accessible assets. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**number_of_policies** | **Integer** | The total number of policies available in the Security Console. | [optional]
+**overall_compliance** | **Float** | The ratio of compliant rules to the total number of rules across all policies. | [optional]
+**scanned_policies** | **Integer** | The total number of policies that were evaluated against assets and have applicable results. The assets considered in the calculation are based on the user's list of accessible assets. | [optional]
+
+
diff --git a/docs/Privileges.md b/docs/Privileges.md
new file mode 100644
index 0000000..32bffc2
--- /dev/null
+++ b/docs/Privileges.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::Privileges
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**resources** | **Array<String>** | | [optional]
+
+
diff --git a/docs/ReferenceWithAlertIDLink.md b/docs/ReferenceWithAlertIDLink.md
new file mode 100644
index 0000000..cb08d4d
--- /dev/null
+++ b/docs/ReferenceWithAlertIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithAlertIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferenceWithAssetIDLink.md b/docs/ReferenceWithAssetIDLink.md
new file mode 100644
index 0000000..5fae2ee
--- /dev/null
+++ b/docs/ReferenceWithAssetIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithAssetIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferenceWithEndpointIDLink.md b/docs/ReferenceWithEndpointIDLink.md
new file mode 100644
index 0000000..c089cb8
--- /dev/null
+++ b/docs/ReferenceWithEndpointIDLink.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ReferenceWithEndpointIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**port** | **Integer** | The port of the service. | [optional]
+**protocol** | **String** | The protocol of the service. | [optional]
+
+
diff --git a/docs/ReferenceWithEngineIDLink.md b/docs/ReferenceWithEngineIDLink.md
new file mode 100644
index 0000000..5b205c5
--- /dev/null
+++ b/docs/ReferenceWithEngineIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithEngineIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferenceWithReportIDLink.md b/docs/ReferenceWithReportIDLink.md
new file mode 100644
index 0000000..7c43772
--- /dev/null
+++ b/docs/ReferenceWithReportIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithReportIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the report instance. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferenceWithScanScheduleIDLink.md b/docs/ReferenceWithScanScheduleIDLink.md
new file mode 100644
index 0000000..2de3148
--- /dev/null
+++ b/docs/ReferenceWithScanScheduleIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithScanScheduleIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferenceWithSiteIDLink.md b/docs/ReferenceWithSiteIDLink.md
new file mode 100644
index 0000000..7d1cc5d
--- /dev/null
+++ b/docs/ReferenceWithSiteIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithSiteIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferenceWithTagIDLink.md b/docs/ReferenceWithTagIDLink.md
new file mode 100644
index 0000000..ab11bbf
--- /dev/null
+++ b/docs/ReferenceWithTagIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithTagIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferenceWithUserIDLink.md b/docs/ReferenceWithUserIDLink.md
new file mode 100644
index 0000000..de75704
--- /dev/null
+++ b/docs/ReferenceWithUserIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferenceWithUserIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the resource. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ReferencesWithAssetGroupIDLink.md b/docs/ReferencesWithAssetGroupIDLink.md
new file mode 100644
index 0000000..6899929
--- /dev/null
+++ b/docs/ReferencesWithAssetGroupIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithAssetGroupIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<Integer>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithAssetIDLink.md b/docs/ReferencesWithAssetIDLink.md
new file mode 100644
index 0000000..ce34488
--- /dev/null
+++ b/docs/ReferencesWithAssetIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithAssetIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<Integer>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithEngineIDLink.md b/docs/ReferencesWithEngineIDLink.md
new file mode 100644
index 0000000..26d690e
--- /dev/null
+++ b/docs/ReferencesWithEngineIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithEngineIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<Integer>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithReferenceWithEndpointIDLinkServiceLink.md b/docs/ReferencesWithReferenceWithEndpointIDLinkServiceLink.md
new file mode 100644
index 0000000..3a95218
--- /dev/null
+++ b/docs/ReferencesWithReferenceWithEndpointIDLinkServiceLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithReferenceWithEndpointIDLinkServiceLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<ServiceLink>**](ServiceLink.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<ReferenceWithEndpointIDLink>**](ReferenceWithEndpointIDLink.md) | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithSiteIDLink.md b/docs/ReferencesWithSiteIDLink.md
new file mode 100644
index 0000000..44a41bb
--- /dev/null
+++ b/docs/ReferencesWithSiteIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithSiteIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<Integer>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithSolutionNaturalIDLink.md b/docs/ReferencesWithSolutionNaturalIDLink.md
new file mode 100644
index 0000000..e033ac0
--- /dev/null
+++ b/docs/ReferencesWithSolutionNaturalIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithSolutionNaturalIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<String>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithTagIDLink.md b/docs/ReferencesWithTagIDLink.md
new file mode 100644
index 0000000..48225ad
--- /dev/null
+++ b/docs/ReferencesWithTagIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithTagIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<Integer>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithUserIDLink.md b/docs/ReferencesWithUserIDLink.md
new file mode 100644
index 0000000..44e209c
--- /dev/null
+++ b/docs/ReferencesWithUserIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithUserIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<Integer>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithVulnerabilityCheckIDLink.md b/docs/ReferencesWithVulnerabilityCheckIDLink.md
new file mode 100644
index 0000000..f2b6c4e
--- /dev/null
+++ b/docs/ReferencesWithVulnerabilityCheckIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithVulnerabilityCheckIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<String>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithVulnerabilityCheckTypeIDLink.md b/docs/ReferencesWithVulnerabilityCheckTypeIDLink.md
new file mode 100644
index 0000000..607a6fe
--- /dev/null
+++ b/docs/ReferencesWithVulnerabilityCheckTypeIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithVulnerabilityCheckTypeIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<String>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithVulnerabilityNaturalIDLink.md b/docs/ReferencesWithVulnerabilityNaturalIDLink.md
new file mode 100644
index 0000000..4bc33c3
--- /dev/null
+++ b/docs/ReferencesWithVulnerabilityNaturalIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithVulnerabilityNaturalIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<String>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/ReferencesWithWebApplicationIDLink.md b/docs/ReferencesWithWebApplicationIDLink.md
new file mode 100644
index 0000000..0561576
--- /dev/null
+++ b/docs/ReferencesWithWebApplicationIDLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReferencesWithWebApplicationIDLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<Integer>** | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/RemediationApi.md b/docs/RemediationApi.md
new file mode 100644
index 0000000..9874729
--- /dev/null
+++ b/docs/RemediationApi.md
@@ -0,0 +1,59 @@
+# Rapid7VmConsole::RemediationApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**get_asset_vulnerability_solutions**](RemediationApi.md#get_asset_vulnerability_solutions) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/solution | Asset Vulnerability Solution
+
+
+# **get_asset_vulnerability_solutions**
+> ResourcesMatchedSolution get_asset_vulnerability_solutions(id, vulnerability_id)
+
+Asset Vulnerability Solution
+
+Returns the highest-superceding rollup solutions for a vulnerability on an asset. The solution(s) selected will be the most recent and cost-effective means by which the vulnerability can be remediated.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::RemediationApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+vulnerability_id = "vulnerability_id_example" # String | The identifier of the vulnerability.
+
+
+begin
+ #Asset Vulnerability Solution
+ result = api_instance.get_asset_vulnerability_solutions(id, vulnerability_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling RemediationApi->get_asset_vulnerability_solutions: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **vulnerability_id** | **String**| The identifier of the vulnerability. |
+
+### Return type
+
+[**ResourcesMatchedSolution**](ResourcesMatchedSolution.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/RepeatResource.md b/docs/RepeatResource.md
new file mode 100644
index 0000000..b43978f
--- /dev/null
+++ b/docs/RepeatResource.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::RepeatResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**day_of_week** | **String** | The day of the week the scheduled task should repeat. This property only applies to schedules with a `every` value of `\"day-of-month\"`. | [optional]
+**every** | **String** | The frequency schedule repeats. Each value represents a different unit of time and is used in conjunction with the property `interval`. For example, a schedule can repeat hourly, daily, monthly, etc. The following table describes each supported value: | Value | Description | | ---------- | ---------------- | | hour | Specifies the schedule repeats in hourly increments. | | day | Specifies the schedule repeats in daily increments. | | week | Specifies the schedule repeats in weekly increments. | | date-of-month | Specifies the schedule repeats nth day of the `interval` month. Requires the property `dateOfMonth` to be specified. For example, if `dateOfMonth` is `17` and the `interval` is `2`, then the schedule will repeat every 2 months on the 17th day of the month. | | day-of-month | Specifies the schedule repeats on a monthly interval but instead of a specific date being specified, the day of the week and week of the month are specified. Requires the properties `dayOfWeek` and `weekOfMonth` to be specified. For example, if `dayOfWeek` is `\"friday\"`, `weekOfMonth` is `3`, and the `interval` is `4`, then the schedule will repeat every 4 months on the 3rd Friday of the month. | |
+**interval** | **Integer** | The interval time the schedule should repeat. The is depends on the value set in `every`. For example, if the value in property `every` is set to `\"day\"` and `interval` is set to `2`, then the schedule will repeat every 2 days. |
+**last_day_of_month** | **BOOLEAN** | ${schedule.repeat.last.day.of.month} | [optional]
+**week_of_month** | **Integer** | The week of the month the scheduled task should repeat. For This property only applies to schedules with a `every` value of `\"day-of-month\"`. Each week of the month is counted in 7-day increments. For example, week 1 consists of days 1-7 of the month while week 2 consists of days 8-14 of the month and so forth. | [optional]
+
+
diff --git a/docs/RepeatSchedule.md b/docs/RepeatSchedule.md
new file mode 100644
index 0000000..fbd8c78
--- /dev/null
+++ b/docs/RepeatSchedule.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::RepeatSchedule
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**day_of_week** | **String** | The day of the week the scheduled task should repeat. This property only applies to schedules with a `every` value of `\"day-of-month\"`. | [optional]
+**every** | **String** | The frequency schedule repeats. Each value represents a different unit of time and is used in conjunction with the property `interval`. For example, a schedule can repeat hourly, daily, monthly, etc. The following table describes each supported value: | Value | Description | | ---------- | ---------------- | | hour | Specifies the schedule repeats in hourly increments. | | day | Specifies the schedule repeats in daily increments. | | week | Specifies the schedule repeats in weekly increments. | | date-of-month | Specifies the schedule repeats nth day of the `interval` month. Requires the property `dateOfMonth` to be specified. For example, if `dateOfMonth` is `17` and the `interval` is `2`, then the schedule will repeat every 2 months on the 17th day of the month. | | day-of-month | Specifies the schedule repeats on a monthly interval but instead of a specific date being specified, the day of the week and week of the month are specified. Requires the properties `dayOfWeek` and `weekOfMonth` to be specified. For example, if `dayOfWeek` is `\"friday\"`, `weekOfMonth` is `3`, and the `interval` is `4`, then the schedule will repeat every 4 months on the 3rd Friday of the month. | |
+**interval** | **Integer** | The interval time the schedule should repeat. The is depends on the value set in `every`. For example, if the value in property `every` is set to `\"day\"` and `interval` is set to `2`, then the schedule will repeat every 2 days. |
+**last_day_of_month** | **BOOLEAN** | | [optional]
+**week_of_month** | **Integer** | The week of the month the scheduled task should repeat. For This property only applies to schedules with a `every` value of `\"day-of-month\"`. Each week of the month is counted in 7-day increments. For example, week 1 consists of days 1-7 of the month while week 2 consists of days 8-14 of the month and so forth. | [optional]
+
+
diff --git a/docs/Report.md b/docs/Report.md
new file mode 100644
index 0000000..b7e27b4
--- /dev/null
+++ b/docs/Report.md
@@ -0,0 +1,29 @@
+# Rapid7VmConsole::Report
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bureau** | **String** | The name of the bureau for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`. | [optional]
+**component** | **String** | The name of the component for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`. | [optional]
+**database** | [**ReportConfigDatabaseResource**](ReportConfigDatabaseResource.md) | Configuration for database export. Only used when the format is `\"database-export\"`. | [optional]
+**email** | [**ReportEmail**](ReportEmail.md) | Email distribution settings for the report. | [optional]
+**enclave** | **String** | The name of the enclave for a CyberScope report. Only used when the format is `\"cyberscope-xml\"`. | [optional]
+**filters** | [**ReportConfigFiltersResource**](ReportConfigFiltersResource.md) | Filters applied to the contents of the report. The supported filters for a report vary by format and template. <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">categories</span> <span class=\"param-type complex\">Object</span> <div class=\"redoc-markdown-block\">The vulnerability categories to include or exclude in the report. Only included or excluded may be specified, not both.</div> </div> <div class=\"properties nested\"> <div class=\"property-info\"> <span class=\"property-name\">included</span> <span class=\"param-type param-array-format integer\">Array[string]</span> <div class=\"redoc-markdown-block\">The identifiers of the vulnerability categories to included in the report.</div> </div> <div class=\"property-info\"> <span class=\"property-name\">excluded</span> <span class=\"param-type param-array-format integer\">Array[string]</span> <div class=\"redoc-markdown-block\">The identifiers of the vulnerability categories to exclude in the report.</div> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">severity</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"all\"</span> <span class=\"param-enum-value string\">\"critical\"</span> <span class=\"param-enum-value string\">\"critical-and-severe\"</span> </div> <div class=\"redoc-markdown-block\">The vulnerability severities to include in the report.</div> </div> <div class=\"property-info\"> <span class=\"property-name\">statuses</span> <span class=\"param-type param-array-format integer\">Array[string]</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"vulnerable\"</span> <span class=\"param-enum-value string\">\"vulnerable-version\"</span> <span class=\"param-enum-value string\">\"potentially-vulnerable\"</span> <span class=\"param-enum-value string\">\"vulnerable-and-validated\"</span> </div> <div class=\"redoc-markdown-block\">The vulnerability statuses to include in the report. If <code>\"vulnerable-and-validated\"</code> is selected no other values can be specified. </div> </div> </div> The following filter elements may be defined for non-templatized report formats: | Format | Categories | Severity | Statuses | | ------------------------------------- |:--------------:|:----------:|:----------:| | `arf-xml` | | | | | `csv-export` | ✓ | ✓ | ✓ | | `cyberscope-xml` | | | | | `database-export` | | | | | `nexpose-simple-xml` | ✓ | ✓ | | | `oval-xml` | | | | | `qualys-xml` | ✓ | ✓ | | | `scap-xml` | ✓ | ✓ | | | `sql-query` | ✓ | ✓ | ✓ | | `xccdf-csv` | | | | | `xccdf-xml` | ✓ | ✓ | | | `xml-export` | ✓ | ✓ | ✓ | | `xml-export-v2` | ✓ | ✓ | ✓ | The following filter elements may be defined for templatized report formats: | Template | Categories | Severity | Statuses | | --------------------------------------- |:--------------:|:----------:|:----------:| | `audit-report` | ✓ | ✓ | | | `baseline-comparison` | | | | | `basic-vulnerability-check-results` | ✓ | ✓ | ✓ | | `executive-overview` | | | | | `highest-risk-vulns` | | | | | `pci-attestation-v12` | | | | | `pci-executive-summary-v12` | | | | | `pci-vuln-details-v12` | | | | | `policy-details` | ✓ | ✓ | ✓ | | `policy-eval` | | | | | `policy-summary` | ✓ | ✓ | ✓ | | `prioritized-remediations` | ✓ | ✓ | ✓ | | `prioritized-remediations-with-details` | ✓ | ✓ | ✓ | | `r7-discovered-assets` | ✓ | ✓ | ✓ | | `r7-vulnerability-exceptions` | ✓ | ✓ | ✓ | | `remediation-plan` | ✓ | ✓ | | | `report-card` | ✓ | ✓ | | | `risk-scorecard` | ✓ | ✓ | ✓ | | `rule-breakdown-summary` | ✓ | ✓ | ✓ | | `top-policy-remediations` | ✓ | ✓ | ✓ | | `top-policy-remediations-with-details` | ✓ | ✓ | ✓ | | `top-riskiest-assets` | ✓ | ✓ | ✓ | | `top-vulnerable-assets` | ✓ | ✓ | ✓ | | `vulnerability-trends` | ✓ | ✓ | ✓ | | [optional]
+**format** | **String** | The output format of the report. The format will restrict the available templates and parameters that can be specified. | [optional]
+**frequency** | [**ReportFrequency**](ReportFrequency.md) | The recurring frequency with which to generate the report. | [optional]
+**id** | **Integer** | The identifier of the report. | [optional]
+**language** | **String** | The locale (language) in which the report is generated | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the report. | [optional]
+**organization** | **String** | The organization used for a XCCDF XML report. Only used when the format is `\"xccdf-xml\"`. | [optional]
+**owner** | **Integer** | The identifier of the report owner. | [optional]
+**policy** | **Integer** | The policy to report on. Only used when the format is `\"oval-xml\"`, `\"\"xccdf-csv\"`, or `\"xccdf-xml\"`. | [optional]
+**query** | **String** | SQL query to run against the Reporting Data Model. Only used when the format is `\"sql-query\"`. | [optional]
+**scope** | [**ReportConfigScopeResource**](ReportConfigScopeResource.md) | The scope of the report. Scope is an object that has the following properties that vary by format and template: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">assets</span> <span class=\"param-type param-array-format integer\">Array[integer <int32>]</span> <div class=\"redoc-markdown-block\">The identifiers of the assets to report on.</div> </div> <div class=\"property-info\"> <span class=\"property-name\">sites</span> <span class=\"param-type param-array-format integer\">Array[integer <int32>]</span> <div class=\"redoc-markdown-block\">The identifiers of the sites to report on.</div> </div> <div class=\"property-info\"> <span class=\"property-name\">assetGroups</span> <span class=\"param-type param-array-format integer\">Array[integer <int32>]</span> <div class=\"redoc-markdown-block\">The identifiers of the asset to report on.</div> </div> <div class=\"property-info\"> <span class=\"property-name\">tags</span> <span class=\"param-type param-array-format integer\">Array[integer <int32>]</span> <div class=\"redoc-markdown-block\">The identifiers of the tag to report on.</div> </div> <div class=\"property-info\"> <span class=\"property-name\">scan</span> <span class=\"param-type param-array-format integer\">integer <int32></span> <div class=\"redoc-markdown-block\">The identifier of the scan to report on.</div> </div> </div> The following scope elements may be defined for non-templatized report formats: | Format | Assets | Sites | Asset Groups | Tags | Scan | | ------------------------------------- |:----------:|:-------:|:------------:|:-------:|:---------:| | `arf-xml` | ✓ | ✓ | ✓ | ✓ | | | `csv-export` | ✓ | ✓ | ✓ | ✓ | ✓ | | `cyberscope-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | | `database-export` | | ✓ | | | | | `nexpose-simple-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | | `oval-xml` | ✓ | ✓ | ✓ | ✓ | | | `qualys-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | | `scap-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | | `sql-query` | ✓ | ✓ | ✓ | ✓ | ✓ | | `xccdf-csv` | ✓ | | | | | | `xccdf-xml` | ✓ | ✓ | ✓ | ✓ | ✓ | | `xml-export` | ✓ | ✓ | ✓ | ✓ | ✓ | | `xml-export-v2` | ✓ | ✓ | ✓ | ✓ | ✓ | The following scope elements may be defined for templatized report formats: | Template | Assets | Sites | Asset Groups | Tags | Scan | | -----------------------------------------|:----------:|:-------:|:------------:|:-------:|:-------:| | `audit-report` | ✓ | ✓ | ✓ | ✓ | ✓ | | `baseline-comparison` | ✓ | ✓ | ✓ | ✓ | | | `basic-vulnerability-check-results` | ✓ | ✓ | ✓ | ✓ | ✓ | | `executive-overview` | ✓ | ✓ | ✓ | ✓ | | | `highest-risk-vulns` | ✓ | ✓ | ✓ | ✓ | | | `pci-attestation-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | | `pci-executive-summary-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | | `pci-vuln-details-v12` | ✓ | ✓ | ✓ | ✓ | ✓ | | `policy-details` | ✓ | ✓ | ✓ | ✓ | | | `policy-eval` | ✓ | ✓ | ✓ | ✓ | | | `policy-summary` | ✓ | ✓ | ✓ | ✓ | ✓ | | `prioritized-remediations` | ✓ | ✓ | ✓ | ✓ | ✓ | | `prioritized-remediations-with-details` | ✓ | ✓ | ✓ | ✓ | ✓ | | `r7-discovered-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | | `r7-vulnerability-exceptions` | ✓ | ✓ | ✓ | ✓ | ✓ | | `remediation-plan` | ✓ | ✓ | ✓ | ✓ | ✓ | | `report-card` | ✓ | ✓ | ✓ | ✓ | ✓ | | `risk-scorecard` | ✓ | ✓ | ✓ | ✓ | | | `rule-breakdown-summary` | ✓ | ✓ | ✓ | ✓ | | | `top-policy-remediations` | ✓ | ✓ | ✓ | ✓ | | | `top-policy-remediations-with-details` | ✓ | ✓ | ✓ | ✓ | | | `top-riskiest-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | | `top-vulnerable-assets` | ✓ | ✓ | ✓ | ✓ | ✓ | | `vulnerability-trends` | ✓ | ✓ | ✓ | ✓ | | If a report supports specifying a scan as the scope and a scan is specified, no other scope elements may be defined. In all other cases as many different types of supported scope elements can be specified in any combination. All reports except the `sql-query` format require at least one element to be specified as the scope. | [optional]
+**storage** | [**ReportStorage**](ReportStorage.md) | The additional storage location and path. | [optional]
+**template** | **String** | The template for the report (only required if the format is templatized). | [optional]
+**timezone** | **String** | The timezone the report generates in, such as `\"America/Los_Angeles\"`. | [optional]
+**users** | **Array<Integer>** | The identifiers of the users granted explicit access to the report. | [optional]
+**version** | **String** | The version of the report Data Model to report against. Only used when the format is `\"sql-query\"`. | [optional]
+
+
diff --git a/docs/ReportApi.md b/docs/ReportApi.md
new file mode 100644
index 0000000..03956bb
--- /dev/null
+++ b/docs/ReportApi.md
@@ -0,0 +1,639 @@
+# Rapid7VmConsole::ReportApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_report**](ReportApi.md#create_report) | **POST** /api/3/reports | Reports
+[**delete_report**](ReportApi.md#delete_report) | **DELETE** /api/3/reports/{id} | Report
+[**delete_report_instance**](ReportApi.md#delete_report_instance) | **DELETE** /api/3/reports/{id}/history/{instance} | Report History
+[**download_report**](ReportApi.md#download_report) | **GET** /api/3/reports/{id}/history/{instance}/output | Report Download
+[**generate_report**](ReportApi.md#generate_report) | **POST** /api/3/reports/{id}/generate | Report Generation
+[**get_report**](ReportApi.md#get_report) | **GET** /api/3/reports/{id} | Report
+[**get_report_formats**](ReportApi.md#get_report_formats) | **GET** /api/3/report_formats | Report Formats
+[**get_report_instance**](ReportApi.md#get_report_instance) | **GET** /api/3/reports/{id}/history/{instance} | Report History
+[**get_report_instances**](ReportApi.md#get_report_instances) | **GET** /api/3/reports/{id}/history | Report Histories
+[**get_report_template**](ReportApi.md#get_report_template) | **GET** /api/3/report_templates/{id} | Report Template
+[**get_report_templates**](ReportApi.md#get_report_templates) | **GET** /api/3/report_templates | Report Templates
+[**get_reports**](ReportApi.md#get_reports) | **GET** /api/3/reports | Reports
+[**update_report**](ReportApi.md#update_report) | **PUT** /api/3/reports/{id} | Report
+
+
+# **create_report**
+> CreatedReferenceintLink create_report(opts)
+
+Reports
+
+Configures a new report for generation. Report types are controlled through either or both a format and template. Non-templatized (`export`) report formats do not require a template and have their output format preset. Templatized (`document` and `file`) report formats support a report template that governs the content of the output and the output format can be chosen from a list of supported formats.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+opts = {
+ param0: Rapid7VmConsole::Report.new # Report | The specification of a report configuration.
+}
+
+begin
+ #Reports
+ result = api_instance.create_report(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->create_report: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**Report**](Report.md)| The specification of a report configuration. | [optional]
+
+### Return type
+
+[**CreatedReferenceintLink**](CreatedReferenceintLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_report**
+> Links delete_report(id)
+
+Report
+
+Deletes the configuration of a report.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+
+begin
+ #Report
+ result = api_instance.delete_report(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->delete_report: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_report_instance**
+> Links delete_report_instance(id, instance)
+
+Report History
+
+Returns the details for a generation of the report.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+instance = "instance_example" # String | The identifier of the report instance.
+
+
+begin
+ #Report History
+ result = api_instance.delete_report_instance(id, instance)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->delete_report_instance: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+ **instance** | **String**| The identifier of the report instance. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **download_report**
+> String download_report(id, instance)
+
+Report Download
+
+Returns the contents of a generated report. The report content is usually returned in a GZip compressed format.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+instance = "instance_example" # String | The identifier of the report instance.
+
+
+begin
+ #Report Download
+ result = api_instance.download_report(id, instance)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->download_report: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+ **instance** | **String**| The identifier of the report instance. |
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/octet-stream, application/json;charset=UTF-8
+
+
+
+# **generate_report**
+> ReferenceWithReportIDLink generate_report(id)
+
+Report Generation
+
+Generates a configured report and returns the instance identifier of the report.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+
+begin
+ #Report Generation
+ result = api_instance.generate_report(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->generate_report: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+
+### Return type
+
+[**ReferenceWithReportIDLink**](ReferenceWithReportIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_report**
+> Report get_report(id)
+
+Report
+
+Returns the configuration details of a report.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+
+begin
+ #Report
+ result = api_instance.get_report(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->get_report: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+
+### Return type
+
+[**Report**](Report.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_report_formats**
+> ResourcesAvailableReportFormat get_report_formats
+
+Report Formats
+
+Returns all available report formats. A report format indicates an output file format specification (e.g. PDF, XML, etc). Some printable formats may be templated, and others may not. The supported templates for each formated are provided.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+begin
+ #Report Formats
+ result = api_instance.get_report_formats
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->get_report_formats: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesAvailableReportFormat**](ResourcesAvailableReportFormat.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_report_instance**
+> ReportInstance get_report_instance(id, instance)
+
+Report History
+
+Returns the details for a generation of the report.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+instance = "instance_example" # String | The identifier of the report instance.
+
+
+begin
+ #Report History
+ result = api_instance.get_report_instance(id, instance)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->get_report_instance: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+ **instance** | **String**| The identifier of the report instance. |
+
+### Return type
+
+[**ReportInstance**](ReportInstance.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_report_instances**
+> ResourcesReportInstance get_report_instances(id)
+
+Report Histories
+
+Returns all historical details for generation of the report over time.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+
+begin
+ #Report Histories
+ result = api_instance.get_report_instances(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->get_report_instances: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+
+### Return type
+
+[**ResourcesReportInstance**](ResourcesReportInstance.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_report_template**
+> ReportTemplate get_report_template(id)
+
+Report Template
+
+Returns the details of a report template. Report templates govern the contents generated within a report.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = "id_example" # String | The identifier of the report template;
+
+
+begin
+ #Report Template
+ result = api_instance.get_report_template(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->get_report_template: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the report template; |
+
+### Return type
+
+[**ReportTemplate**](ReportTemplate.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_report_templates**
+> ResourcesReportTemplate get_report_templates
+
+Report Templates
+
+Returns all available report templates.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+begin
+ #Report Templates
+ result = api_instance.get_report_templates
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->get_report_templates: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesReportTemplate**](ResourcesReportTemplate.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_reports**
+> PageOfReport get_reports(opts)
+
+Reports
+
+Returns all defined report configurations.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Reports
+ result = api_instance.get_reports(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->get_reports: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfReport**](PageOfReport.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_report**
+> Links update_report(id, opts)
+
+Report
+
+Updates the configuration details of a report.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ReportApi.new
+
+id = 56 # Integer | The identifier of the report.
+
+opts = {
+ param1: Rapid7VmConsole::Report.new # Report | The specification of a report configuration.
+}
+
+begin
+ #Report
+ result = api_instance.update_report(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ReportApi->update_report: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the report. |
+ **param1** | [**Report**](Report.md)| The specification of a report configuration. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/ReportConfigCategoryFilters.md b/docs/ReportConfigCategoryFilters.md
new file mode 100644
index 0000000..422291f
--- /dev/null
+++ b/docs/ReportConfigCategoryFilters.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ReportConfigCategoryFilters
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**excluded** | **Array<String>** | The vulnerability categories to exclude. Defaults to no categories. | [optional]
+**included** | **Array<String>** | The vulnerability categories to include. Defaults to all categories. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+
+
diff --git a/docs/ReportConfigDatabaseCredentialsResource.md b/docs/ReportConfigDatabaseCredentialsResource.md
new file mode 100644
index 0000000..1c62a69
--- /dev/null
+++ b/docs/ReportConfigDatabaseCredentialsResource.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReportConfigDatabaseCredentialsResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**password** | **String** | ${report.config.database.credential.password.description} | [optional]
+**username** | **String** | ${report.config.database.credential.username.description} | [optional]
+
+
diff --git a/docs/ReportConfigDatabaseResource.md b/docs/ReportConfigDatabaseResource.md
new file mode 100644
index 0000000..a7c478a
--- /dev/null
+++ b/docs/ReportConfigDatabaseResource.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::ReportConfigDatabaseResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**credentials** | [**ReportConfigDatabaseCredentialsResource**](ReportConfigDatabaseCredentialsResource.md) | ${report.config.database.credentials.description} | [optional]
+**host** | **String** | The database server host to export to. | [optional]
+**name** | **String** | The name of the database to export to. | [optional]
+**port** | **Integer** | The database server port to export to. | [optional]
+**vendor** | **String** | The type of the database server. | [optional]
+
+
diff --git a/docs/ReportConfigFiltersResource.md b/docs/ReportConfigFiltersResource.md
new file mode 100644
index 0000000..9ef47aa
--- /dev/null
+++ b/docs/ReportConfigFiltersResource.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ReportConfigFiltersResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**categories** | [**ReportConfigCategoryFilters**](ReportConfigCategoryFilters.md) | Vulnerability categories to include or exclude. Only `included` or `excluded` may be specified, but not both. | [optional]
+**severity** | **String** | The vulnerability severities to include. Defaults to `all`. | [optional]
+**statuses** | **Array<String>** | The vulnerability statuses to include. Defaults to [ `vulnerable`, `vulnerable-version`, `potentially-vulnerable` ]. | [optional]
+
+
diff --git a/docs/ReportConfigScopeResource.md b/docs/ReportConfigScopeResource.md
new file mode 100644
index 0000000..4efae30
--- /dev/null
+++ b/docs/ReportConfigScopeResource.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::ReportConfigScopeResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**asset_groups** | **Array<Integer>** | ${report.config.asset.groups.description} | [optional]
+**assets** | **Array<Integer>** | ${report.config.assets.description} | [optional]
+**scan** | **Integer** | ${report.config.scans.description} | [optional]
+**sites** | **Array<Integer>** | ${report.config.sites.description} | [optional]
+**tags** | **Array<Integer>** | ${report.config.tags.description} | [optional]
+
+
diff --git a/docs/ReportEmail.md b/docs/ReportEmail.md
new file mode 100644
index 0000000..d81fb63
--- /dev/null
+++ b/docs/ReportEmail.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::ReportEmail
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**access** | **String** | The format to distribute the report in when sending to users who have explicit access to the report. | [optional]
+**additional** | **String** | The format to distribute the report to additional recipients. | [optional]
+**additional_recipients** | **Array<String>** | The email address of additional recipients to distribute the report to. | [optional]
+**asset_access** | **BOOLEAN** | ${report.config.email.additional.asset.access.description} | [optional]
+**owner** | **String** | The format to distribute the report to the owner. | [optional]
+**smtp** | [**ReportEmailSmtp**](ReportEmailSmtp.md) | SMTP delivery settings. | [optional]
+
+
diff --git a/docs/ReportEmailSmtp.md b/docs/ReportEmailSmtp.md
new file mode 100644
index 0000000..944b3eb
--- /dev/null
+++ b/docs/ReportEmailSmtp.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ReportEmailSmtp
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**global** | **BOOLEAN** | Whether to use global SMTP settings. If enabled, `sender` and `relay` may not be specified. | [optional]
+**relay** | **String** | SMTP relay host or IP address. | [optional]
+**sender** | **String** | SMTP sender address. | [optional]
+
+
diff --git a/docs/ReportFilters.md b/docs/ReportFilters.md
new file mode 100644
index 0000000..97dcd1e
--- /dev/null
+++ b/docs/ReportFilters.md
@@ -0,0 +1,7 @@
+# Rapid7VmConsole::ReportFilters
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+
diff --git a/docs/ReportFrequency.md b/docs/ReportFrequency.md
new file mode 100644
index 0000000..57e521e
--- /dev/null
+++ b/docs/ReportFrequency.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ReportFrequency
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**next_runtimes** | **Array<String>** | List the next 10 dates in the future the schedule will launch. | [optional]
+**repeat** | [**RepeatSchedule**](RepeatSchedule.md) | Settings for repeating a scheduled task. |
+**start** | **String** | The scheduled start date and time. Date is represented in ISO 8601 format. Repeating schedules will determine the next schedule to begin based on this date and time. |
+
+
diff --git a/docs/ReportInstance.md b/docs/ReportInstance.md
new file mode 100644
index 0000000..888321a
--- /dev/null
+++ b/docs/ReportInstance.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::ReportInstance
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**generated** | **String** | The date the report finished generation. | [optional]
+**id** | **Integer** | The identifier of the report instance. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**size** | [**ReportSize**](ReportSize.md) | The size of the report, uncompressed. | [optional]
+**status** | **String** | The status of the report generation process. | [optional]
+**uri** | **String** | The URI of the report accessible through the web console. Refer to the `Download` relation hyperlink for a download URI. | [optional]
+
+
diff --git a/docs/ReportScope.md b/docs/ReportScope.md
new file mode 100644
index 0000000..c765cd7
--- /dev/null
+++ b/docs/ReportScope.md
@@ -0,0 +1,7 @@
+# Rapid7VmConsole::ReportScope
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+
diff --git a/docs/ReportSize.md b/docs/ReportSize.md
new file mode 100644
index 0000000..83aca39
--- /dev/null
+++ b/docs/ReportSize.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReportSize
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/ReportStorage.md b/docs/ReportStorage.md
new file mode 100644
index 0000000..5313e4d
--- /dev/null
+++ b/docs/ReportStorage.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ReportStorage
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**location** | **String** | The location to storage an additional copy of the report. This is a sub-path post-fixed to `$(install_dir)/nsc/reports/$(user)/`. | [optional]
+**path** | **String** | The full path to the additional copy storage location. | [optional]
+
+
diff --git a/docs/ReportTemplate.md b/docs/ReportTemplate.md
new file mode 100644
index 0000000..d3638c4
--- /dev/null
+++ b/docs/ReportTemplate.md
@@ -0,0 +1,14 @@
+# Rapid7VmConsole::ReportTemplate
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**builtin** | **BOOLEAN** | Whether the report template is builtin. | [optional]
+**description** | **String** | The description of the report template. | [optional]
+**id** | **String** | The identifier of the report template; | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the report template. | [optional]
+**sections** | **Array<String>** | The sections that comprise the `document` report template. | [optional]
+**type** | **String** | The type of the report template. `document` is a templatized, typically printable, report that has various sections of content. `export` is data-oriented output, typically CSV. `file` is a printable report template using a report template file. | [optional]
+
+
diff --git a/docs/ResourcesAlert.md b/docs/ResourcesAlert.md
new file mode 100644
index 0000000..3412f7b
--- /dev/null
+++ b/docs/ResourcesAlert.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesAlert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<Alert>**](Alert.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesAssetGroup.md b/docs/ResourcesAssetGroup.md
new file mode 100644
index 0000000..dd219c6
--- /dev/null
+++ b/docs/ResourcesAssetGroup.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesAssetGroup
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<AssetGroup>**](AssetGroup.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesAssetTag.md b/docs/ResourcesAssetTag.md
new file mode 100644
index 0000000..fda4aa6
--- /dev/null
+++ b/docs/ResourcesAssetTag.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesAssetTag
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<AssetTag>**](AssetTag.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesAuthenticationSource.md b/docs/ResourcesAuthenticationSource.md
new file mode 100644
index 0000000..07bb45f
--- /dev/null
+++ b/docs/ResourcesAuthenticationSource.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesAuthenticationSource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<AuthenticationSource>**](AuthenticationSource.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesAvailableReportFormat.md b/docs/ResourcesAvailableReportFormat.md
new file mode 100644
index 0000000..fab4505
--- /dev/null
+++ b/docs/ResourcesAvailableReportFormat.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesAvailableReportFormat
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<AvailableReportFormat>**](AvailableReportFormat.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesConfiguration.md b/docs/ResourcesConfiguration.md
new file mode 100644
index 0000000..5695dd6
--- /dev/null
+++ b/docs/ResourcesConfiguration.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesConfiguration
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<Configuration>**](Configuration.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesDatabase.md b/docs/ResourcesDatabase.md
new file mode 100644
index 0000000..61cd2f2
--- /dev/null
+++ b/docs/ResourcesDatabase.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesDatabase
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<Database>**](Database.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesDiscoveryAsset.md b/docs/ResourcesDiscoveryAsset.md
new file mode 100644
index 0000000..e5f1379
--- /dev/null
+++ b/docs/ResourcesDiscoveryAsset.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesDiscoveryAsset
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**resources** | [**Array<DiscoveryAsset>**](DiscoveryAsset.md) | | [optional]
+
+
diff --git a/docs/ResourcesEnginePool.md b/docs/ResourcesEnginePool.md
new file mode 100644
index 0000000..ba65802
--- /dev/null
+++ b/docs/ResourcesEnginePool.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesEnginePool
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<EnginePool>**](EnginePool.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesFile.md b/docs/ResourcesFile.md
new file mode 100644
index 0000000..952d46a
--- /dev/null
+++ b/docs/ResourcesFile.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesFile
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | **Array<File>** | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesGroupAccount.md b/docs/ResourcesGroupAccount.md
new file mode 100644
index 0000000..9090edd
--- /dev/null
+++ b/docs/ResourcesGroupAccount.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesGroupAccount
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<GroupAccount>**](GroupAccount.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesMatchedSolution.md b/docs/ResourcesMatchedSolution.md
new file mode 100644
index 0000000..cf30357
--- /dev/null
+++ b/docs/ResourcesMatchedSolution.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesMatchedSolution
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<MatchedSolution>**](MatchedSolution.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesPolicyOverride.md b/docs/ResourcesPolicyOverride.md
new file mode 100644
index 0000000..bb6039e
--- /dev/null
+++ b/docs/ResourcesPolicyOverride.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesPolicyOverride
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<PolicyOverride>**](PolicyOverride.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesReportInstance.md b/docs/ResourcesReportInstance.md
new file mode 100644
index 0000000..3a6eb0d
--- /dev/null
+++ b/docs/ResourcesReportInstance.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesReportInstance
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<ReportInstance>**](ReportInstance.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesReportTemplate.md b/docs/ResourcesReportTemplate.md
new file mode 100644
index 0000000..08abb63
--- /dev/null
+++ b/docs/ResourcesReportTemplate.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesReportTemplate
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<ReportTemplate>**](ReportTemplate.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesRole.md b/docs/ResourcesRole.md
new file mode 100644
index 0000000..ce29bae
--- /dev/null
+++ b/docs/ResourcesRole.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesRole
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<Role>**](Role.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesScanEngine.md b/docs/ResourcesScanEngine.md
new file mode 100644
index 0000000..294e24a
--- /dev/null
+++ b/docs/ResourcesScanEngine.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesScanEngine
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<ScanEngine>**](ScanEngine.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesScanSchedule.md b/docs/ResourcesScanSchedule.md
new file mode 100644
index 0000000..2036cfe
--- /dev/null
+++ b/docs/ResourcesScanSchedule.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesScanSchedule
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<ScanSchedule>**](ScanSchedule.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesScanTemplate.md b/docs/ResourcesScanTemplate.md
new file mode 100644
index 0000000..079b044
--- /dev/null
+++ b/docs/ResourcesScanTemplate.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesScanTemplate
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<ScanTemplate>**](ScanTemplate.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSharedCredential.md b/docs/ResourcesSharedCredential.md
new file mode 100644
index 0000000..c513d92
--- /dev/null
+++ b/docs/ResourcesSharedCredential.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSharedCredential
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<SharedCredential>**](SharedCredential.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSiteCredential.md b/docs/ResourcesSiteCredential.md
new file mode 100644
index 0000000..81d4dc7
--- /dev/null
+++ b/docs/ResourcesSiteCredential.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSiteCredential
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<SiteCredential>**](SiteCredential.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSiteSharedCredential.md b/docs/ResourcesSiteSharedCredential.md
new file mode 100644
index 0000000..55d808b
--- /dev/null
+++ b/docs/ResourcesSiteSharedCredential.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSiteSharedCredential
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<SiteSharedCredential>**](SiteSharedCredential.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSmtpAlert.md b/docs/ResourcesSmtpAlert.md
new file mode 100644
index 0000000..b66997d
--- /dev/null
+++ b/docs/ResourcesSmtpAlert.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSmtpAlert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<SmtpAlert>**](SmtpAlert.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSnmpAlert.md b/docs/ResourcesSnmpAlert.md
new file mode 100644
index 0000000..8f044fc
--- /dev/null
+++ b/docs/ResourcesSnmpAlert.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSnmpAlert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<SnmpAlert>**](SnmpAlert.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSoftware.md b/docs/ResourcesSoftware.md
new file mode 100644
index 0000000..6e9d666
--- /dev/null
+++ b/docs/ResourcesSoftware.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSoftware
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<Software>**](Software.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSolution.md b/docs/ResourcesSolution.md
new file mode 100644
index 0000000..721d708
--- /dev/null
+++ b/docs/ResourcesSolution.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSolution
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<Solution>**](Solution.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSonarQuery.md b/docs/ResourcesSonarQuery.md
new file mode 100644
index 0000000..390a89b
--- /dev/null
+++ b/docs/ResourcesSonarQuery.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSonarQuery
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<SonarQuery>**](SonarQuery.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesSyslogAlert.md b/docs/ResourcesSyslogAlert.md
new file mode 100644
index 0000000..e37f15e
--- /dev/null
+++ b/docs/ResourcesSyslogAlert.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesSyslogAlert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<SyslogAlert>**](SyslogAlert.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesTag.md b/docs/ResourcesTag.md
new file mode 100644
index 0000000..f171f2d
--- /dev/null
+++ b/docs/ResourcesTag.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesTag
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<Tag>**](Tag.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesUser.md b/docs/ResourcesUser.md
new file mode 100644
index 0000000..4490d39
--- /dev/null
+++ b/docs/ResourcesUser.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesUser
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<User>**](User.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesUserAccount.md b/docs/ResourcesUserAccount.md
new file mode 100644
index 0000000..cca34df
--- /dev/null
+++ b/docs/ResourcesUserAccount.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesUserAccount
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<UserAccount>**](UserAccount.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesVulnerabilityValidationResource.md b/docs/ResourcesVulnerabilityValidationResource.md
new file mode 100644
index 0000000..b694cf5
--- /dev/null
+++ b/docs/ResourcesVulnerabilityValidationResource.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesVulnerabilityValidationResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<VulnerabilityValidationResource>**](VulnerabilityValidationResource.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesWebFormAuthentication.md b/docs/ResourcesWebFormAuthentication.md
new file mode 100644
index 0000000..377e64a
--- /dev/null
+++ b/docs/ResourcesWebFormAuthentication.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesWebFormAuthentication
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<WebFormAuthentication>**](WebFormAuthentication.md) | The resources returned. | [optional]
+
+
diff --git a/docs/ResourcesWebHeaderAuthentication.md b/docs/ResourcesWebHeaderAuthentication.md
new file mode 100644
index 0000000..a4074d0
--- /dev/null
+++ b/docs/ResourcesWebHeaderAuthentication.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ResourcesWebHeaderAuthentication
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<WebHeaderAuthentication>**](WebHeaderAuthentication.md) | The resources returned. | [optional]
+
+
diff --git a/docs/Review.md b/docs/Review.md
new file mode 100644
index 0000000..d4b4712
--- /dev/null
+++ b/docs/Review.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::Review
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **String** | A comment from the reviewer detailing the review. | [optional]
+**date** | **String** | The date and time the review took place. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The identifier of the user that reviewed the vulnerability exception. | [optional]
+**user** | **Integer** | The login name of the user that reviewed the vulnerability exception. | [optional]
+
+
diff --git a/docs/RiskModifierSettings.md b/docs/RiskModifierSettings.md
new file mode 100644
index 0000000..14916e5
--- /dev/null
+++ b/docs/RiskModifierSettings.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::RiskModifierSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**high** | **Float** | ${settings.risk.modifier.high} | [optional]
+**low** | **Float** | ${settings.risk.modifier.low} | [optional]
+**medium** | **Float** | ${settings.risk.modifier.medium} | [optional]
+**very_high** | **Float** | ${settings.risk.modifier.veryHigh} | [optional]
+**very_low** | **Float** | ${settings.risk.modifier.veryLow} | [optional]
+
+
diff --git a/docs/RiskSettings.md b/docs/RiskSettings.md
new file mode 100644
index 0000000..5cde0a6
--- /dev/null
+++ b/docs/RiskSettings.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::RiskSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**adjust_with_criticality** | **BOOLEAN** | Whether risk is adjusted using criticality tags. | [optional]
+**criticality_modifiers** | [**RiskModifierSettings**](RiskModifierSettings.md) | If `adjustWithCriticality` is enabled, details the risk modifiers by criticality tag. | [optional]
+**model** | **String** | The risk model used to compute risk. | [optional]
+
+
diff --git a/docs/Role.md b/docs/Role.md
new file mode 100644
index 0000000..60e1316
--- /dev/null
+++ b/docs/Role.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::Role
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**description** | **String** | The description of the role. |
+**id** | **String** | The identifier of the role. |
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The human readable name of the role. |
+**privileges** | **Array<String>** | The privileges granted to the role. | [optional]
+
+
diff --git a/docs/RootApi.md b/docs/RootApi.md
new file mode 100644
index 0000000..ce4969a
--- /dev/null
+++ b/docs/RootApi.md
@@ -0,0 +1,50 @@
+# Rapid7VmConsole::RootApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**resources**](RootApi.md#resources) | **GET** /api/3 | Resources
+
+
+# **resources**
+> Links resources
+
+Resources
+
+Returns a listing of the resources (endpoints) that are available to be invoked in this API.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::RootApi.new
+
+begin
+ #Resources
+ result = api_instance.resources
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling RootApi->resources: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/Scan.md b/docs/Scan.md
new file mode 100644
index 0000000..d47f530
--- /dev/null
+++ b/docs/Scan.md
@@ -0,0 +1,21 @@
+# Rapid7VmConsole::Scan
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | **Integer** | The number of assets found in the scan. | [optional]
+**duration** | **String** | The duration of the scan in ISO8601 format. | [optional]
+**end_time** | **String** | The end time of the scan in ISO8601 format. | [optional]
+**engine_id** | **Integer** | The identifier of the scan engine. | [optional]
+**engine_name** | **String** | The name of the scan engine. | [optional]
+**id** | **Integer** | The identifier of the scan. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The reason for the scan status. | [optional]
+**scan_name** | **String** | The user-driven scan name for the scan. | [optional]
+**scan_type** | **String** | The scan type (automated, manual, scheduled). | [optional]
+**start_time** | **String** | The start time of the scan in ISO8601 format. | [optional]
+**started_by** | **String** | The name of the user that started the scan. | [optional]
+**status** | **String** | The scan status. | [optional]
+**vulnerabilities** | [**Vulnerabilities**](Vulnerabilities.md) | The vulnerability synopsis of the scan. | [optional]
+
+
diff --git a/docs/ScanApi.md b/docs/ScanApi.md
new file mode 100644
index 0000000..e6c6ab1
--- /dev/null
+++ b/docs/ScanApi.md
@@ -0,0 +1,272 @@
+# Rapid7VmConsole::ScanApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**get_scan**](ScanApi.md#get_scan) | **GET** /api/3/scans/{id} | Scan
+[**get_scans**](ScanApi.md#get_scans) | **GET** /api/3/scans | Scans
+[**get_site_scans**](ScanApi.md#get_site_scans) | **GET** /api/3/sites/{id}/scans | Site Scans
+[**set_scan_status**](ScanApi.md#set_scan_status) | **POST** /api/3/scans/{id}/{status} | Scan Status
+[**start_scan**](ScanApi.md#start_scan) | **POST** /api/3/sites/{id}/scans | Site Scans
+
+
+# **get_scan**
+> Scan get_scan(id)
+
+Scan
+
+Returns the specified scan.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanApi.new
+
+id = 789 # Integer | The identifier of the scan.
+
+
+begin
+ #Scan
+ result = api_instance.get_scan(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanApi->get_scan: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan. |
+
+### Return type
+
+[**Scan**](Scan.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scans**
+> PageOfGlobalScan get_scans(opts)
+
+Scans
+
+Returns all scans.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanApi.new
+
+opts = {
+ active: false, # BOOLEAN | Return running scans or past scans (true/false value).
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Scans
+ result = api_instance.get_scans(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanApi->get_scans: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **active** | **BOOLEAN**| Return running scans or past scans (true/false value). | [optional] [default to false]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfGlobalScan**](PageOfGlobalScan.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_scans**
+> PageOfScan get_site_scans(id, opts)
+
+Site Scans
+
+Returns the scans for the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ active: false, # BOOLEAN | Return running scans or past scans (true/false value).
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Site Scans
+ result = api_instance.get_site_scans(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanApi->get_site_scans: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **active** | **BOOLEAN**| Return running scans or past scans (true/false value). | [optional] [default to false]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfScan**](PageOfScan.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_scan_status**
+> Links set_scan_status(id, status)
+
+Scan Status
+
+Updates the scan status. Can pause, resume, and stop scans using this resource. In order to stop a scan the scan must be running or paused. In order to resume a scan the scan must be paused. In order to pause a scan the scan must be running.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanApi.new
+
+id = 789 # Integer | The identifier of the scan.
+
+status = "status_example" # String | The status of the scan.
+
+
+begin
+ #Scan Status
+ result = api_instance.set_scan_status(id, status)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanApi->set_scan_status: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan. |
+ **status** | **String**| The status of the scan. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **start_scan**
+> CreatedReferenceScanIDLink start_scan(id, opts)
+
+Site Scans
+
+Starts a scan for the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param1: Rapid7VmConsole::AdhocScan.new # AdhocScan | The details for the scan.
+}
+
+begin
+ #Site Scans
+ result = api_instance.start_scan(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanApi->start_scan: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param1** | [**AdhocScan**](AdhocScan.md)| The details for the scan. | [optional]
+
+### Return type
+
+[**CreatedReferenceScanIDLink**](CreatedReferenceScanIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/ScanEngine.md b/docs/ScanEngine.md
new file mode 100644
index 0000000..fe4d8d5
--- /dev/null
+++ b/docs/ScanEngine.md
@@ -0,0 +1,18 @@
+# Rapid7VmConsole::ScanEngine
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**address** | **String** | The address the scan engine is hosted. |
+**content_version** | **String** | The content version of the scan engine. | [optional]
+**engine_pools** | **Array<Integer>** | A list of identifiers of engine pools this engine is included in. | [optional]
+**id** | **Integer** | The identifier of the scan engine. |
+**last_refreshed_date** | **String** | The date the engine was last refreshed. Date format is in ISO 8601. | [optional]
+**last_updated_date** | **String** | The date the engine was last updated. Date format is in ISO 8601. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the scan engine. |
+**port** | **Integer** | The port used by the scan engine to communicate with the Security Console. |
+**product_version** | **String** | The product version of the scan engine. | [optional]
+**sites** | **Array<Integer>** | A list of identifiers of each site the scan engine is assigned to. | [optional]
+
+
diff --git a/docs/ScanEngineApi.md b/docs/ScanEngineApi.md
new file mode 100644
index 0000000..54b6f36
--- /dev/null
+++ b/docs/ScanEngineApi.md
@@ -0,0 +1,896 @@
+# Rapid7VmConsole::ScanEngineApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**add_scan_engine_pool_scan_engine**](ScanEngineApi.md#add_scan_engine_pool_scan_engine) | **PUT** /api/3/scan_engine_pools/{id}/engines/{engineId} | Engine Pool Engines
+[**create_scan_engine**](ScanEngineApi.md#create_scan_engine) | **POST** /api/3/scan_engines | Scan Engines
+[**create_scan_engine_pool**](ScanEngineApi.md#create_scan_engine_pool) | **POST** /api/3/scan_engine_pools | Engine Pools
+[**delete_scan_engine**](ScanEngineApi.md#delete_scan_engine) | **DELETE** /api/3/scan_engines/{id} | Scan Engine
+[**get_assigned_engine_pools**](ScanEngineApi.md#get_assigned_engine_pools) | **GET** /api/3/scan_engines/{id}/scan_engine_pools | Assigned Engine Pools
+[**get_engine_pool**](ScanEngineApi.md#get_engine_pool) | **GET** /api/3/scan_engine_pools/{id} | Engine Pool
+[**get_scan_engine**](ScanEngineApi.md#get_scan_engine) | **GET** /api/3/scan_engines/{id} | Scan Engine
+[**get_scan_engine_pool_scan_engines**](ScanEngineApi.md#get_scan_engine_pool_scan_engines) | **GET** /api/3/scan_engine_pools/{id}/engines | Engine Pool Engines
+[**get_scan_engine_pool_sites**](ScanEngineApi.md#get_scan_engine_pool_sites) | **GET** /api/3/scan_engine_pools/{id}/sites | Engine Pool Sites
+[**get_scan_engine_pools**](ScanEngineApi.md#get_scan_engine_pools) | **GET** /api/3/scan_engine_pools | Engine Pools
+[**get_scan_engine_scans**](ScanEngineApi.md#get_scan_engine_scans) | **GET** /api/3/scan_engines/{id}/scans | Scan Engine Scans
+[**get_scan_engine_sites**](ScanEngineApi.md#get_scan_engine_sites) | **GET** /api/3/scan_engines/{id}/sites | Scan Engine Sites
+[**get_scan_engines**](ScanEngineApi.md#get_scan_engines) | **GET** /api/3/scan_engines | Scan Engines
+[**remove_scan_engine_pool**](ScanEngineApi.md#remove_scan_engine_pool) | **DELETE** /api/3/scan_engine_pools/{id} | Engine Pool
+[**remove_scan_engine_pool_scan_engine**](ScanEngineApi.md#remove_scan_engine_pool_scan_engine) | **DELETE** /api/3/scan_engine_pools/{id}/engines/{engineId} | Engine Pool Engines
+[**set_scan_engine_pool_scan_engines**](ScanEngineApi.md#set_scan_engine_pool_scan_engines) | **PUT** /api/3/scan_engine_pools/{id}/engines | Engine Pool Engines
+[**update_scan_engine**](ScanEngineApi.md#update_scan_engine) | **PUT** /api/3/scan_engines/{id} | Scan Engine
+[**update_scan_engine_pool**](ScanEngineApi.md#update_scan_engine_pool) | **PUT** /api/3/scan_engine_pools/{id} | Engine Pool
+
+
+# **add_scan_engine_pool_scan_engine**
+> Links add_scan_engine_pool_scan_engine(id, engine_id)
+
+Engine Pool Engines
+
+Add an engine to the engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+engine_id = 56 # Integer | The identifier of the scan engine.
+
+
+begin
+ #Engine Pool Engines
+ result = api_instance.add_scan_engine_pool_scan_engine(id, engine_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->add_scan_engine_pool_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+ **engine_id** | **Integer**| The identifier of the scan engine. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_scan_engine**
+> ReferenceWithEngineIDLink create_scan_engine(opts)
+
+Scan Engines
+
+Creates a new scan engine.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+opts = {
+ param0: Rapid7VmConsole::ScanEngine.new # ScanEngine | The specification of a scan engine.
+}
+
+begin
+ #Scan Engines
+ result = api_instance.create_scan_engine(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->create_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**ScanEngine**](ScanEngine.md)| The specification of a scan engine. | [optional]
+
+### Return type
+
+[**ReferenceWithEngineIDLink**](ReferenceWithEngineIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_scan_engine_pool**
+> CreatedReferenceEngineIDLink create_scan_engine_pool(opts)
+
+Engine Pools
+
+Creates a new engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+opts = {
+ param0: Rapid7VmConsole::EnginePool.new # EnginePool | The details for the scan engine to update.
+}
+
+begin
+ #Engine Pools
+ result = api_instance.create_scan_engine_pool(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->create_scan_engine_pool: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**EnginePool**](EnginePool.md)| The details for the scan engine to update. | [optional]
+
+### Return type
+
+[**CreatedReferenceEngineIDLink**](CreatedReferenceEngineIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_scan_engine**
+> Links delete_scan_engine(id)
+
+Scan Engine
+
+Deletes the specified scan engine.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the scan engine.
+
+
+begin
+ #Scan Engine
+ result = api_instance.delete_scan_engine(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->delete_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan engine. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_assigned_engine_pools**
+> ResourcesEnginePool get_assigned_engine_pools(id)
+
+Assigned Engine Pools
+
+Retrieves the list of engine pools the scan engine is currently assigned to.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the scan engine.
+
+
+begin
+ #Assigned Engine Pools
+ result = api_instance.get_assigned_engine_pools(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_assigned_engine_pools: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan engine. |
+
+### Return type
+
+[**ResourcesEnginePool**](ResourcesEnginePool.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_engine_pool**
+> EnginePool get_engine_pool(id)
+
+Engine Pool
+
+Retrieves the details for an engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+
+begin
+ #Engine Pool
+ result = api_instance.get_engine_pool(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_engine_pool: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+
+### Return type
+
+[**EnginePool**](EnginePool.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_engine**
+> ScanEngine get_scan_engine(id)
+
+Scan Engine
+
+Retrieves the details for a scan engine.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the scan engine.
+
+
+begin
+ #Scan Engine
+ result = api_instance.get_scan_engine(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan engine. |
+
+### Return type
+
+[**ScanEngine**](ScanEngine.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_engine_pool_scan_engines**
+> ReferencesWithEngineIDLink get_scan_engine_pool_scan_engines(id)
+
+Engine Pool Engines
+
+Get the engines in the engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+
+begin
+ #Engine Pool Engines
+ result = api_instance.get_scan_engine_pool_scan_engines(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_scan_engine_pool_scan_engines: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+
+### Return type
+
+[**ReferencesWithEngineIDLink**](ReferencesWithEngineIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_engine_pool_sites**
+> ReferencesWithSiteIDLink get_scan_engine_pool_sites(id)
+
+Engine Pool Sites
+
+Returns links to the sites associated with this engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+
+begin
+ #Engine Pool Sites
+ result = api_instance.get_scan_engine_pool_sites(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_scan_engine_pool_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+
+### Return type
+
+[**ReferencesWithSiteIDLink**](ReferencesWithSiteIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_engine_pools**
+> ResourcesEnginePool get_scan_engine_pools
+
+Engine Pools
+
+Returns engine pools available to use for scanning.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+begin
+ #Engine Pools
+ result = api_instance.get_scan_engine_pools
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_scan_engine_pools: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesEnginePool**](ResourcesEnginePool.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_engine_scans**
+> PageOfScan get_scan_engine_scans(id, opts)
+
+Scan Engine Scans
+
+Returns the scans that have been run on a scan engine.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the scan engine.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Scan Engine Scans
+ result = api_instance.get_scan_engine_scans(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_scan_engine_scans: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan engine. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfScan**](PageOfScan.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_engine_sites**
+> PageOfSite get_scan_engine_sites(id, opts)
+
+Scan Engine Sites
+
+Retrieves the list of sites the specified scan engine is assigned to.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the scan engine.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Scan Engine Sites
+ result = api_instance.get_scan_engine_sites(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_scan_engine_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan engine. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfSite**](PageOfSite.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_engines**
+> ResourcesScanEngine get_scan_engines
+
+Scan Engines
+
+Returns scan engines available to use for scanning.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+begin
+ #Scan Engines
+ result = api_instance.get_scan_engines
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->get_scan_engines: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesScanEngine**](ResourcesScanEngine.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_scan_engine_pool**
+> Links remove_scan_engine_pool(id)
+
+Engine Pool
+
+Deletes the specified engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+
+begin
+ #Engine Pool
+ result = api_instance.remove_scan_engine_pool(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->remove_scan_engine_pool: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_scan_engine_pool_scan_engine**
+> Links remove_scan_engine_pool_scan_engine(id, engine_id)
+
+Engine Pool Engines
+
+Remove the specified engine from the engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+engine_id = 56 # Integer | The identifier of the scan engine.
+
+
+begin
+ #Engine Pool Engines
+ result = api_instance.remove_scan_engine_pool_scan_engine(id, engine_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->remove_scan_engine_pool_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+ **engine_id** | **Integer**| The identifier of the scan engine. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_scan_engine_pool_scan_engines**
+> Links set_scan_engine_pool_scan_engines(id, opts)
+
+Engine Pool Engines
+
+Set the engines in the engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The identifiers of the scan engines to place into the engine pool.
+}
+
+begin
+ #Engine Pool Engines
+ result = api_instance.set_scan_engine_pool_scan_engines(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->set_scan_engine_pool_scan_engines: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+ **param1** | **Array<Integer>**| The identifiers of the scan engines to place into the engine pool. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_scan_engine**
+> Links update_scan_engine(id, opts)
+
+Scan Engine
+
+Updates the specified scan engine.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the scan engine.
+
+opts = {
+ param1: Rapid7VmConsole::ScanEngine.new # ScanEngine | The specification of the scan engine to update.
+}
+
+begin
+ #Scan Engine
+ result = api_instance.update_scan_engine(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->update_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the scan engine. |
+ **param1** | [**ScanEngine**](ScanEngine.md)| The specification of the scan engine to update. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_scan_engine_pool**
+> Links update_scan_engine_pool(id, opts)
+
+Engine Pool
+
+Updates the specified engine pool.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanEngineApi.new
+
+id = 56 # Integer | The identifier of the engine pool.
+
+opts = {
+ param1: Rapid7VmConsole::EnginePool.new # EnginePool | The details for the scan engine to update.
+}
+
+begin
+ #Engine Pool
+ result = api_instance.update_scan_engine_pool(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanEngineApi->update_scan_engine_pool: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the engine pool. |
+ **param1** | [**EnginePool**](EnginePool.md)| The details for the scan engine to update. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/ScanEvents.md b/docs/ScanEvents.md
new file mode 100644
index 0000000..6d3b022
--- /dev/null
+++ b/docs/ScanEvents.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::ScanEvents
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**failed** | **BOOLEAN** | Generates an alert when a scan fails. Default value is `false`. |
+**paused** | **BOOLEAN** | Generates an alert when a scan pauses. Default value is `false`. |
+**resumed** | **BOOLEAN** | Generates an alert when a scan resumes. Default value is `false`. | [optional]
+**started** | **BOOLEAN** | Generates an alert when a scan starts. Default value is `false`. |
+**stopped** | **BOOLEAN** | Generates an alert when a scan stops. Default value is `false`. |
+
+
diff --git a/docs/ScanSchedule.md b/docs/ScanSchedule.md
new file mode 100644
index 0000000..15d882b
--- /dev/null
+++ b/docs/ScanSchedule.md
@@ -0,0 +1,19 @@
+# Rapid7VmConsole::ScanSchedule
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | [**ScheduledScanTargets**](ScheduledScanTargets.md) | Allows one or more assets defined within the site to be scanned for this scan schedule. This property is only supported for static sites. When this property is `null`, or not defined in schedule, then all assets defined in the static site will be scanned. | [optional]
+**duration** | **String** | Specifies the maximum duration the scheduled scan is allowed to run. Scheduled scans that do not complete within specified duration will be paused. The scan duration are represented by the format `\"P[n]DT[n]H[n]M\"`. In these representations, the [n] is replaced by a value for each of the date and time elements that follow the [n].The following table describes each supported value: | Value | Description | | ---------- | ---------------- | | P | The duration designator. It must be placed at the start of the duration representation. | | D | The day designator that follows the value for the number of days. | | T | The time designator that precedes the time portion of the representation. | | H | The hour designator that follows the value for the number of hours. | | M | The minute designator that follows the value for the number of minutes. | For example, `\"P5DT10H30M\"` represents a duration of \"5 days, 10 hours, and 30 minutes\". Each duration designator is optional; however, at least one must be specified and it must be preceded by the `\"P\"` designator. | [optional]
+**enabled** | **BOOLEAN** | Flag indicating whether the scan schedule is enabled. |
+**id** | **Integer** | The identifier of the scan schedule. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**next_runtimes** | **Array<String>** | List the next 10 dates in the future the schedule will launch. | [optional]
+**on_scan_repeat** | **String** | Specifies the desired behavior of a repeating scheduled scan when the previous scan was paused due to reaching is maximum duration. The following table describes each supported value: | Value | Description | | ---------- | ---------------- | | restart-scan | Stops the previously-paused scan and launches a new scan if the previous scan did not complete within the specified duration. If the previous scheduled scan was not paused, then a new scan is launched. | | resume-scan | Resumes the previously-paused scan if the previous scan did not complete within the specified duration. If the previous scheduled scan was not paused, then a new scan is launched. | |
+**repeat** | [**RepeatResource**](RepeatResource.md) | Settings for repeating a scheduled task. | [optional]
+**scan_engine_id** | **Integer** | The identifier of the scan engine to be used for this scan schedule. If not set, the site's assigned scan engine will be used. | [optional]
+**scan_name** | **String** | A user-defined name for the scan launched by the schedule. If not explicitly set in the schedule, the scan name will be generated prior to the scan launching. Names must be unique. | [optional]
+**scan_template_id** | **String** | The identifier of the scan template to be used for this scan schedule. If not set, the site's assigned scan template will be used. | [optional]
+**start** | **String** | The scheduled start date and time. Date is represented in ISO 8601 format. Repeating schedules will determine the next schedule to begin based on this date and time. |
+
+
diff --git a/docs/ScanScope.md b/docs/ScanScope.md
new file mode 100644
index 0000000..4e8221f
--- /dev/null
+++ b/docs/ScanScope.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ScanScope
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | [**StaticSite**](StaticSite.md) | Specify assets to be included in site scans as well as assets to be excluded from site scans. If the property is defined, then at least one address or asset group must be specified for scanning. Property is required when creating a static site. | [optional]
+**connection** | [**DynamicSite**](DynamicSite.md) | Specify discovery connection settings for a dynamic site. Property is required when creating a dynamic site. | [optional]
+
+
diff --git a/docs/ScanSettings.md b/docs/ScanSettings.md
new file mode 100644
index 0000000..33a8a63
--- /dev/null
+++ b/docs/ScanSettings.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::ScanSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**connection_timeout** | **String** | The connection timeout when establishing connections to remote scan engines, in ISO 8601 format. For example: `\"PT15S\"`. | [optional]
+**incremental** | **BOOLEAN** | Whether incremental scan results is enabled. | [optional]
+**maximum_threads** | **Integer** | The maximum number of scan threads to use in any scan. -1 means this is set by the scan template. | [optional]
+**read_timeout** | **String** | The read timeout when establishing connections to remote scan engines, in ISO 8601 format. For example: `\"PT15M\"`. | [optional]
+**status_idle_timeout** | **String** | The idle timeout when checking the status of running scans, in ISO 8601 format. For example: `\"PT3M\"`. | [optional]
+**status_threads** | **Integer** | The number of threads to use when checking the status of running scans. | [optional]
+
+
diff --git a/docs/ScanSize.md b/docs/ScanSize.md
new file mode 100644
index 0000000..b0f1186
--- /dev/null
+++ b/docs/ScanSize.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ScanSize
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bytes** | **Integer** | The raw value in bytes. | [optional]
+**formatted** | **String** | The value formatted in human-readable notation (e.g. GB, MB, KB, bytes). | [optional]
+
+
diff --git a/docs/ScanTargetsResource.md b/docs/ScanTargetsResource.md
new file mode 100644
index 0000000..4401034
--- /dev/null
+++ b/docs/ScanTargetsResource.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ScanTargetsResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**addresses** | **Array<String>** | List of addresses. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ScanTemplate.md b/docs/ScanTemplate.md
new file mode 100644
index 0000000..e311d44
--- /dev/null
+++ b/docs/ScanTemplate.md
@@ -0,0 +1,25 @@
+# Rapid7VmConsole::ScanTemplate
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**checks** | [**ScanTemplateVulnerabilityChecks**](ScanTemplateVulnerabilityChecks.md) | Settings for which vulnerability checks to run during a scan. <br/> The rules for inclusion of checks is as follows: <ul> <li>Enabled checks by category and by check type are included</li> <li>Disabled checks in by category and by check type are removed</li> <li>Enabled checks in by individual check are added (even if they are disabled in by category or check type)</li> <li>Disabled checks in by individual check are removed</li> <li>If unsafe is disabled, unsafe checks are removed</li> <li>If potential is disabled, potential checks are removed</li> <ul> | [optional]
+**database** | [**ScanTemplateDatabase**](ScanTemplateDatabase.md) | Settings for discovery databases. | [optional]
+**description** | **String** | A verbose description of the scan template.. | [optional]
+**discovery** | [**ScanTemplateDiscovery**](ScanTemplateDiscovery.md) | Discovery settings used during a scan. | [optional]
+**discovery_only** | **BOOLEAN** | Whether only discovery is performed during a scan. | [optional]
+**enable_windows_services** | **BOOLEAN** | Whether Windows services are enabled during a scan. Windows services will be temporarily reconfigured when this option is selected. Original settings will be restored after the scan completes, unless it is interrupted. | [optional]
+**enhanced_logging** | **BOOLEAN** | Whether enhanced logging is gathered during scanning. Collection of enhanced logs may greatly increase the disk space used by a scan. | [optional]
+**id** | **String** | The identifier of the scan template | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**max_parallel_assets** | **Integer** | The maximum number of assets scanned simultaneously per scan engine during a scan. | [optional]
+**max_scan_processes** | **Integer** | The maximum number of scan processes simultaneously allowed against each asset during a scan. | [optional]
+**name** | **String** | A concise name for the scan template. | [optional]
+**policy** | [**Policy**](Policy.md) | Policy configuration settings used during a scan. | [optional]
+**policy_enabled** | **BOOLEAN** | Whether policy assessment is performed during a scan. | [optional]
+**telnet** | [**Telnet**](Telnet.md) | Settings for interacting with the Telnet protocol. | [optional]
+**vulnerability_enabled** | **BOOLEAN** | Whether vulnerability assessment is performed during a scan. | [optional]
+**web** | [**ScanTemplateWebSpider**](ScanTemplateWebSpider.md) | Web spider settings used during a scan. | [optional]
+**web_enabled** | **BOOLEAN** | Whether web spidering and assessment are performed during a scan. | [optional]
+
+
diff --git a/docs/ScanTemplateApi.md b/docs/ScanTemplateApi.md
new file mode 100644
index 0000000..065af39
--- /dev/null
+++ b/docs/ScanTemplateApi.md
@@ -0,0 +1,247 @@
+# Rapid7VmConsole::ScanTemplateApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_scan_template**](ScanTemplateApi.md#create_scan_template) | **POST** /api/3/scan_templates | Scan Templates
+[**delete_scan_template**](ScanTemplateApi.md#delete_scan_template) | **DELETE** /api/3/scan_templates/{id} | Scan Template
+[**get_scan_template**](ScanTemplateApi.md#get_scan_template) | **GET** /api/3/scan_templates/{id} | Scan Template
+[**get_scan_templates**](ScanTemplateApi.md#get_scan_templates) | **GET** /api/3/scan_templates | Scan Templates
+[**update_scan_template**](ScanTemplateApi.md#update_scan_template) | **PUT** /api/3/scan_templates/{id} | Scan Template
+
+
+# **create_scan_template**
+> CreatedReferenceScanTemplateIDLink create_scan_template(opts)
+
+Scan Templates
+
+Creates a new scan template.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanTemplateApi.new
+
+opts = {
+ param0: Rapid7VmConsole::ScanTemplate.new # ScanTemplate | The details of the scan template.
+}
+
+begin
+ #Scan Templates
+ result = api_instance.create_scan_template(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanTemplateApi->create_scan_template: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**ScanTemplate**](ScanTemplate.md)| The details of the scan template. | [optional]
+
+### Return type
+
+[**CreatedReferenceScanTemplateIDLink**](CreatedReferenceScanTemplateIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_scan_template**
+> Links delete_scan_template(id)
+
+Scan Template
+
+Deletes a scan template.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanTemplateApi.new
+
+id = "id_example" # String | The identifier of the scan template
+
+
+begin
+ #Scan Template
+ result = api_instance.delete_scan_template(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanTemplateApi->delete_scan_template: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the scan template |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_template**
+> ScanTemplate get_scan_template(id)
+
+Scan Template
+
+Returns a scan template.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanTemplateApi.new
+
+id = "id_example" # String | The identifier of the scan template
+
+
+begin
+ #Scan Template
+ result = api_instance.get_scan_template(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanTemplateApi->get_scan_template: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the scan template |
+
+### Return type
+
+[**ScanTemplate**](ScanTemplate.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_scan_templates**
+> ResourcesScanTemplate get_scan_templates
+
+Scan Templates
+
+Returns all scan templates.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanTemplateApi.new
+
+begin
+ #Scan Templates
+ result = api_instance.get_scan_templates
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanTemplateApi->get_scan_templates: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesScanTemplate**](ResourcesScanTemplate.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_scan_template**
+> Links update_scan_template(id, opts)
+
+Scan Template
+
+Updates a scan template.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::ScanTemplateApi.new
+
+id = "id_example" # String | The identifier of the scan template
+
+opts = {
+ param1: Rapid7VmConsole::ScanTemplate.new # ScanTemplate | The details of the scan template.
+}
+
+begin
+ #Scan Template
+ result = api_instance.update_scan_template(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling ScanTemplateApi->update_scan_template: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the scan template |
+ **param1** | [**ScanTemplate**](ScanTemplate.md)| The details of the scan template. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/ScanTemplateAssetDiscovery.md b/docs/ScanTemplateAssetDiscovery.md
new file mode 100644
index 0000000..d9e8716
--- /dev/null
+++ b/docs/ScanTemplateAssetDiscovery.md
@@ -0,0 +1,16 @@
+# Rapid7VmConsole::ScanTemplateAssetDiscovery
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**collect_whois_information** | **BOOLEAN** | Whether to query Whois during discovery. Defaults to `false`. | [optional]
+**fingerprint_minimum_certainty** | **Float** | The minimum certainty required for a fingerprint to be considered valid during a scan. Defaults to `0.16`. | [optional]
+**fingerprint_retries** | **Integer** | The number of fingerprinting attempts made to determine the operating system fingerprint. Defaults to `4`. | [optional]
+**ip_fingerprinting_enabled** | **BOOLEAN** | Whether to fingerprint TCP/IP stacks for hardware, operating system and software information. | [optional]
+**send_arp_pings** | **BOOLEAN** | Whether ARP pings are sent during asset discovery. Defaults to `true`. | [optional]
+**send_icmp_pings** | **BOOLEAN** | Whether ICMP pings are sent during asset discovery. Defaults to `false`. | [optional]
+**tcp_ports** | **Array<Integer>** | TCP ports to send packets and perform discovery. Defaults to no ports. | [optional]
+**treat_tcp_reset_as_asset** | **BOOLEAN** | Whether TCP reset responses are treated as live assets. Defaults to `true`. | [optional]
+**udp_ports** | **Array<Integer>** | UDP ports to send packets and perform discovery. Defaults to no ports. | [optional]
+
+
diff --git a/docs/ScanTemplateDatabase.md b/docs/ScanTemplateDatabase.md
new file mode 100644
index 0000000..e64be9b
--- /dev/null
+++ b/docs/ScanTemplateDatabase.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::ScanTemplateDatabase
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**db2** | **String** | Database name for DB2 database instance. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**oracle** | **Array<String>** | Database name (SID) for an Oracle database instance. | [optional]
+**postgres** | **String** | Database name for PostgesSQL database instance. | [optional]
+
+
diff --git a/docs/ScanTemplateDiscovery.md b/docs/ScanTemplateDiscovery.md
new file mode 100644
index 0000000..5a41850
--- /dev/null
+++ b/docs/ScanTemplateDiscovery.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ScanTemplateDiscovery
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**asset** | [**ScanTemplateAssetDiscovery**](ScanTemplateAssetDiscovery.md) | Asset discovery settings used during a scan. | [optional]
+**perfomance** | [**ScanTemplateDiscoveryPerformance**](ScanTemplateDiscoveryPerformance.md) | Discovery performance settings used during a scan. | [optional]
+**service** | [**ScanTemplateServiceDiscovery**](ScanTemplateServiceDiscovery.md) | Service discovery settings used during a scan. | [optional]
+
+
diff --git a/docs/ScanTemplateDiscoveryPerformance.md b/docs/ScanTemplateDiscoveryPerformance.md
new file mode 100644
index 0000000..402c933
--- /dev/null
+++ b/docs/ScanTemplateDiscoveryPerformance.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::ScanTemplateDiscoveryPerformance
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**packet_rate** | [**ScanTemplateDiscoveryPerformancePacketsRate**](ScanTemplateDiscoveryPerformancePacketsRate.md) | The number of packets to send per second during scanning. | [optional]
+**parallelism** | [**ScanTemplateDiscoveryPerformanceParallelism**](ScanTemplateDiscoveryPerformanceParallelism.md) | The number of discovery connection requests to be sent to target host simultaneously. These settings has no effect if values have been set for `scanDelay`. | [optional]
+**retry_limit** | **Integer** | The maximum number of attempts to contact target assets. If the limit is exceeded with no response, the given asset is not scanned. Defaults to `3`. | [optional]
+**scan_delay** | [**ScanTemplateDiscoveryPerformanceScanDelay**](ScanTemplateDiscoveryPerformanceScanDelay.md) | The duration to wait between sending packets to each target host during a scan. | [optional]
+**timeout** | [**ScanTemplateDiscoveryPerformanceTimeout**](ScanTemplateDiscoveryPerformanceTimeout.md) | The duration to wait between retry attempts. | [optional]
+
+
diff --git a/docs/ScanTemplateDiscoveryPerformancePacketsRate.md b/docs/ScanTemplateDiscoveryPerformancePacketsRate.md
new file mode 100644
index 0000000..4827e57
--- /dev/null
+++ b/docs/ScanTemplateDiscoveryPerformancePacketsRate.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ScanTemplateDiscoveryPerformancePacketsRate
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**defeat_rate_limit** | **BOOLEAN** | Whether defeat rate limit (defeat-rst-ratelimit) is enforced on the minimum packet setting, which can improve scan speed. If it is disabled, the minimum packet rate setting may be ignored when a target limits its rate of RST (reset) responses to a port scan. This can increase scan accuracy by preventing the scan from missing ports. Defaults to `true`. | [optional]
+**maximum** | **Integer** | The minimum number of packets to send each second during discovery attempts. Defaults to `0`. | [optional]
+**minimum** | **Integer** | The minimum number of packets to send each second during discovery attempts. Defaults to `0`. | [optional]
+
+
diff --git a/docs/ScanTemplateDiscoveryPerformanceParallelism.md b/docs/ScanTemplateDiscoveryPerformanceParallelism.md
new file mode 100644
index 0000000..742acf8
--- /dev/null
+++ b/docs/ScanTemplateDiscoveryPerformanceParallelism.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ScanTemplateDiscoveryPerformanceParallelism
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**maximum** | **Integer** | The maximum number of discovery connection requests send in parallel. Defaults to `0`. | [optional]
+**minimum** | **Integer** | The minimum number of discovery connection requests send in parallel. Defaults to `0`. | [optional]
+
+
diff --git a/docs/ScanTemplateDiscoveryPerformanceScanDelay.md b/docs/ScanTemplateDiscoveryPerformanceScanDelay.md
new file mode 100644
index 0000000..f1d7d04
--- /dev/null
+++ b/docs/ScanTemplateDiscoveryPerformanceScanDelay.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ScanTemplateDiscoveryPerformanceScanDelay
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**maximum** | **String** | The minimum duration to wait between sending packets to each target host. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P30S` (30s). Defaults to `PT0S`. | [optional]
+**minimum** | **String** | The maximum duration to wait between sending packets to each target host. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P30S` (30s). Defaults to `PT0S`. | [optional]
+
+
diff --git a/docs/ScanTemplateDiscoveryPerformanceTimeout.md b/docs/ScanTemplateDiscoveryPerformanceTimeout.md
new file mode 100644
index 0000000..1c851b7
--- /dev/null
+++ b/docs/ScanTemplateDiscoveryPerformanceTimeout.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ScanTemplateDiscoveryPerformanceTimeout
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**initial** | **String** | The initial timeout to wait between retry attempts. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT0.5S`. | [optional]
+**maximum** | **String** | The maximum time to wait between retries. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT3S`. | [optional]
+**minimum** | **String** | The minimum time to wait between retries. The value is specified as a ISO8601 duration and can range from `PT0.5S` (500ms) to `P30S` (30s). Defaults to `PT0.5S`. | [optional]
+
+
diff --git a/docs/ScanTemplateServiceDiscovery.md b/docs/ScanTemplateServiceDiscovery.md
new file mode 100644
index 0000000..2757705
--- /dev/null
+++ b/docs/ScanTemplateServiceDiscovery.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ScanTemplateServiceDiscovery
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**service_name_file** | **String** | An optional file that lists each port and the service that commonly resides on it. If scans cannot identify actual services on ports, service names will be derived from this file in scan results. Defaults to empty. | [optional]
+**tcp** | [**ScanTemplateServiceDiscoveryTcp**](ScanTemplateServiceDiscoveryTcp.md) | TCP service discovery settings. | [optional]
+**udp** | [**ScanTemplateServiceDiscoveryUdp**](ScanTemplateServiceDiscoveryUdp.md) | UDP service discovery settings. | [optional]
+
+
diff --git a/docs/ScanTemplateServiceDiscoveryTcp.md b/docs/ScanTemplateServiceDiscoveryTcp.md
new file mode 100644
index 0000000..4f58c96
--- /dev/null
+++ b/docs/ScanTemplateServiceDiscoveryTcp.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::ScanTemplateServiceDiscoveryTcp
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**additional_ports** | **Array<Object>** | Additional TCP ports to scan. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty. | [optional]
+**excluded_ports** | **Array<Object>** | TCP ports to exclude from scanning. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**method** | **String** | The method of TCP discovery. Defaults to `SYN`. | [optional]
+**ports** | **String** | The TCP ports to scan. Defaults to `well-known`. | [optional]
+
+
diff --git a/docs/ScanTemplateServiceDiscoveryUdp.md b/docs/ScanTemplateServiceDiscoveryUdp.md
new file mode 100644
index 0000000..8b07f46
--- /dev/null
+++ b/docs/ScanTemplateServiceDiscoveryUdp.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::ScanTemplateServiceDiscoveryUdp
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**additional_ports** | **Array<Object>** | Additional UDP ports to scan. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty. | [optional]
+**excluded_ports** | **Array<Object>** | UDP ports to exclude from scanning. Individual ports can be specified as numbers or a string, but port ranges must be strings (e.g. `\"7892-7898\"`). Defaults to empty. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**ports** | **String** | The UDP ports to scan. Defaults to `well-known`. | [optional]
+
+
diff --git a/docs/ScanTemplateVulnerabilityCheckCategories.md b/docs/ScanTemplateVulnerabilityCheckCategories.md
new file mode 100644
index 0000000..1fcdeac
--- /dev/null
+++ b/docs/ScanTemplateVulnerabilityCheckCategories.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ScanTemplateVulnerabilityCheckCategories
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**disabled** | **Array<String>** | The categories of vulnerability checks to disable during a scan. | [optional]
+**enabled** | **Array<String>** | The categories of vulnerability checks to enable during a scan. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ScanTemplateVulnerabilityCheckIndividual.md b/docs/ScanTemplateVulnerabilityCheckIndividual.md
new file mode 100644
index 0000000..bfb99c1
--- /dev/null
+++ b/docs/ScanTemplateVulnerabilityCheckIndividual.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ScanTemplateVulnerabilityCheckIndividual
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**disabled** | **Array<String>** | The individual vulnerability checks to disable during a scan. | [optional]
+**enabled** | **Array<String>** | The individual vulnerability checks to enable during a scan. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/ScanTemplateVulnerabilityChecks.md b/docs/ScanTemplateVulnerabilityChecks.md
new file mode 100644
index 0000000..4748e07
--- /dev/null
+++ b/docs/ScanTemplateVulnerabilityChecks.md
@@ -0,0 +1,14 @@
+# Rapid7VmConsole::ScanTemplateVulnerabilityChecks
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**categories** | [**ScanTemplateVulnerabilityCheckCategories**](ScanTemplateVulnerabilityCheckCategories.md) | The vulnerability check categories enabled or disabled during a scan. | [optional]
+**correlate** | **BOOLEAN** | Whether an extra step is performed at the end of the scan where more trust is put in OS patch checks to attempt to override the results of other checks which could be less reliable. | [optional]
+**individual** | [**ScanTemplateVulnerabilityCheckIndividual**](ScanTemplateVulnerabilityCheckIndividual.md) | The individual vulnerability checks enabled or disabled during a scan. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**potential** | **BOOLEAN** | Whether checks that result in potential vulnerabilities are assessed during a scan. | [optional]
+**types** | [**VulnerabilityCheckType**](VulnerabilityCheckType.md) | The vulnerability check types enabled or disabled during a scan. | [optional]
+**unsafe** | **BOOLEAN** | Whether checks considered \"unsafe\" are assessed during a scan. | [optional]
+
+
diff --git a/docs/ScanTemplateWebSpider.md b/docs/ScanTemplateWebSpider.md
new file mode 100644
index 0000000..214982a
--- /dev/null
+++ b/docs/ScanTemplateWebSpider.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::ScanTemplateWebSpider
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**dont_scan_multi_use_devices** | **BOOLEAN** | Whether scanning of multi-use devices, such as printers or print servers should be avoided. | [optional]
+**include_query_strings** | **BOOLEAN** | Whether query strings are using in URLs when web spidering. This causes the web spider to make many more requests to the Web server. This will increase overall scan time and possibly affect the Web server's performance for legitimate users. | [optional]
+**paths** | [**ScanTemplateWebSpiderPaths**](ScanTemplateWebSpiderPaths.md) | Paths to use when web spidering. | [optional]
+**patterns** | [**ScanTemplateWebSpiderPatterns**](ScanTemplateWebSpiderPatterns.md) | Patterns to match responses during web spidering. | [optional]
+**performance** | [**ScanTemplateWebSpiderPerformance**](ScanTemplateWebSpiderPerformance.md) | Performance settings used during web spidering. | [optional]
+**test_common_usernames_and_passwords** | **BOOLEAN** | Whether to determine if discovered logon forms accept commonly used user names or passwords. The process may cause authentication services with certain security policies to lock out accounts with these credentials. | [optional]
+**test_xss_in_single_scan** | **BOOLEAN** | Whether to test for persistent cross-site scripting during a single scan. This test helps to reduce the risk of dangerous attacks via malicious code stored on Web servers. Enabling it may increase Web spider scan times. | [optional]
+**user_agent** | **String** | The `User-Agent` to use when web spidering. Defaults to `\"Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)\"`. | [optional]
+
+
diff --git a/docs/ScanTemplateWebSpiderPaths.md b/docs/ScanTemplateWebSpiderPaths.md
new file mode 100644
index 0000000..37b08e5
--- /dev/null
+++ b/docs/ScanTemplateWebSpiderPaths.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ScanTemplateWebSpiderPaths
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**boostrap** | **String** | Paths to bootstrap spidering with. | [optional]
+**excluded** | **String** | Paths excluded from spidering. | [optional]
+**honor_robot_directives** | **BOOLEAN** | ${scan.template.web.spider.paths.robot.directives.description} | [optional]
+
+
diff --git a/docs/ScanTemplateWebSpiderPatterns.md b/docs/ScanTemplateWebSpiderPatterns.md
new file mode 100644
index 0000000..9631631
--- /dev/null
+++ b/docs/ScanTemplateWebSpiderPatterns.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::ScanTemplateWebSpiderPatterns
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**sensitive_content** | **String** | A regular expression that is used to find sensitive content on a page. | [optional]
+**sensitive_field** | **String** | A regular expression that is used to find fields that may contain sensitive input. Defaults to `\"(p|pass)(word|phrase|wd|code)\"`. | [optional]
+
+
diff --git a/docs/ScanTemplateWebSpiderPerformance.md b/docs/ScanTemplateWebSpiderPerformance.md
new file mode 100644
index 0000000..d785ddb
--- /dev/null
+++ b/docs/ScanTemplateWebSpiderPerformance.md
@@ -0,0 +1,16 @@
+# Rapid7VmConsole::ScanTemplateWebSpiderPerformance
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**http_daemons_to_skip** | **Array<String>** | The names of HTTP Daemons (HTTPd) to skip when spidering. For example, `\"CUPS\"`. | [optional]
+**maximum_directory_levels** | **Integer** | The directory depth limit for web spidering. Limiting directory depth can save significant time, especially with large sites. A value of `0` signifies unlimited directory traversal. Defaults to `6`. | [optional]
+**maximum_foreign_hosts** | **Integer** | The maximum number of unique host names that the spider may resolve. This function adds substantial time to the spidering process, especially with large Web sites, because of frequent cross-link checking involved. Defaults to `100`. | [optional]
+**maximum_link_depth** | **Integer** | The maximum depth of links to traverse when spidering. Defaults to `6`. | [optional]
+**maximum_pages** | **Integer** | The maximum the number of pages that are spidered. This is a time-saving measure for large sites. Defaults to `3000`. | [optional]
+**maximum_retries** | **Integer** | The maximum the number of times to retry a request after a failure. A value of `0` means no retry attempts are made. Defaults to `2`. | [optional]
+**maximum_time** | **String** | The maximum length of time to web spider. This limit prevents scans from taking longer than the allotted scan schedule. A value of `PT0S` means no limit is applied. The acceptable range is `PT1M` to `PT16666.6667H`. | [optional]
+**response_timeout** | **String** | The duration to wait for a response from a target web server. The value is specified as a ISO8601 duration and can range from `PT0S` (0ms) to `P1H` (1 hour). Defaults to `PT2M`. | [optional]
+**threads_per_server** | **Integer** | The number of threads to use per web server being spidered. Defaults to `3`. | [optional]
+
+
diff --git a/docs/ScheduledScanTargets.md b/docs/ScheduledScanTargets.md
new file mode 100644
index 0000000..8fd6b42
--- /dev/null
+++ b/docs/ScheduledScanTargets.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::ScheduledScanTargets
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**excluded_asset_groups** | [**ExcludedAssetGroups**](ExcludedAssetGroups.md) | Assets associated with these asset groups will be excluded from the site's scan. | [optional]
+**excluded_targets** | [**ExcludedScanTargets**](ExcludedScanTargets.md) | Addresses to be excluded from the site's scan. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+**included_asset_groups** | [**IncludedAssetGroups**](IncludedAssetGroups.md) | Allows users to specify a subset of the site's included asset groups to be included in the scan. If the property is defined, then at least one valid already defined as an included asset group must be specified. | [optional]
+**included_targets** | [**IncludedScanTargets**](IncludedScanTargets.md) | Allows users to specify a subset of the site's scan targets to be included in the scan. If the property is defined, then at least one address must be specified. | [optional]
+
+
diff --git a/docs/SearchCriteria.md b/docs/SearchCriteria.md
new file mode 100644
index 0000000..d001e7a
--- /dev/null
+++ b/docs/SearchCriteria.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::SearchCriteria
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**filters** | [**Array<SwaggerSearchCriteriaFilter>**](SwaggerSearchCriteriaFilter.md) | Filters used to match assets. See <a href=\"#section/Responses/SearchCriteria\">Search Criteria</a> for more information on the structure and format. | [optional]
+**match** | **String** | Operator to determine how to match filters. `all` requires that all filters match for an asset to be included. `any` requires only one filter to match for an asset to be included. | [optional]
+
+
diff --git a/docs/Service.md b/docs/Service.md
new file mode 100644
index 0000000..60df2b6
--- /dev/null
+++ b/docs/Service.md
@@ -0,0 +1,20 @@
+# Rapid7VmConsole::Service
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**configurations** | [**Array<Configuration>**](Configuration.md) | Configuration key-values pairs enumerated on the service. | [optional]
+**databases** | [**Array<Database>**](Database.md) | The databases enumerated on the service. | [optional]
+**family** | **String** | The family of the service. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the service. | [optional]
+**port** | **Integer** | The port of the service. |
+**product** | **String** | The product running the service. | [optional]
+**protocol** | **String** | The protocol of the service. |
+**user_groups** | [**Array<GroupAccount>**](GroupAccount.md) | The group accounts enumerated on the service. | [optional]
+**users** | [**Array<UserAccount>**](UserAccount.md) | The user accounts enumerated on the service. | [optional]
+**vendor** | **String** | The vendor of the service. | [optional]
+**version** | **String** | The version of the service. | [optional]
+**web_applications** | [**Array<WebApplication>**](WebApplication.md) | The web applications found on the service. | [optional]
+
+
diff --git a/docs/ServiceLink.md b/docs/ServiceLink.md
new file mode 100644
index 0000000..7f00104
--- /dev/null
+++ b/docs/ServiceLink.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::ServiceLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**href** | **String** | A hypertext reference, which is either a URI (see <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc3986\">RFC 3986</a>) or URI template (see <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc6570\">RFC 6570</a>). | [optional]
+**port** | **Integer** | The port of the service. | [optional]
+**protocol** | **String** | The protocol of the service. | [optional]
+**rel** | **String** | The link relation type. This value is one from the <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc5988#section-6.2\">Link Relation Type Registry</a> or is the type of resource being linked to. | [optional]
+
+
diff --git a/docs/ServiceUnavailableError.md b/docs/ServiceUnavailableError.md
new file mode 100644
index 0000000..3e73e05
--- /dev/null
+++ b/docs/ServiceUnavailableError.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::ServiceUnavailableError
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The messages indicating the cause or reason for failure. | [optional]
+**status** | **String** | The HTTP status code for the error (same as in the HTTP response). |
+
+
diff --git a/docs/Settings.md b/docs/Settings.md
new file mode 100644
index 0000000..8b897cc
--- /dev/null
+++ b/docs/Settings.md
@@ -0,0 +1,21 @@
+# Rapid7VmConsole::Settings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**asset_linking** | **BOOLEAN** | Whether asset linking is enabled. | [optional]
+**authentication** | [**AuthenticationSettings**](AuthenticationSettings.md) | Details the authentication settings. | [optional]
+**database** | [**DatabaseSettings**](DatabaseSettings.md) | Details the database settings. | [optional]
+**directory** | **String** | The root directory of the console. | [optional]
+**insight_platform** | **BOOLEAN** | Whether the usage of the Insight Platform is enabled. | [optional]
+**insight_platform_region** | **String** | The region used for the Insight Platform, if enabled. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**risk** | [**RiskSettings**](RiskSettings.md) | Details risk configuration and settings. | [optional]
+**scan** | [**ScanSettings**](ScanSettings.md) | Details the global settings for scanning. | [optional]
+**serial_number** | **String** | The console serial number. | [optional]
+**smtp** | [**SmtpSettings**](SmtpSettings.md) | Global SMTP distribution settings. | [optional]
+**updates** | [**UpdateSettings**](UpdateSettings.md) | Details the update settings. | [optional]
+**uuid** | **String** | The universally unique identifier (UUID) of the console. | [optional]
+**web** | [**WebSettings**](WebSettings.md) | Details the web server settings. | [optional]
+
+
diff --git a/docs/SharedCredential.md b/docs/SharedCredential.md
new file mode 100644
index 0000000..e7d5b6f
--- /dev/null
+++ b/docs/SharedCredential.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::SharedCredential
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**account** | [**SharedCredentialAccount**](SharedCredentialAccount.md) | Specify the type of service to authenticate as well as all of the information required by that service. <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">service</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"as400\"</span> <span class=\"param-enum-value string\">\"cifs\"</span> <span class=\"param-enum-value string\">\"cifshash\"</span> <span class=\"param-enum-value string\">\"cvs\"</span> <span class=\"param-enum-value string\">\"db2\"</span> <span class=\"param-enum-value string\">\"ftp\"</span> <span class=\"param-enum-value string\">\"http\"</span> <span class=\"param-enum-value string\">\"ms-sql\"</span> <span class=\"param-enum-value string\">\"mysql\"</span> <span class=\"param-enum-value string\">\"notes\"</span> <span class=\"param-enum-value string\">\"oracle\"</span> <span class=\"param-enum-value string\">\"pop\"</span> <span class=\"param-enum-value string\">\"postgresql\"</span> <span class=\"param-enum-value string\">\"remote-exec\"</span> <span class=\"param-enum-value string\">\"snmp\"</span> <span class=\"param-enum-value string\">\"snmpv3\"</span> <span class=\"param-enum-value string\">\"ssh\"</span> <span class=\"param-enum-value string\">\"ssh-key\"</span> <span class=\"param-enum-value string\">\"sybase\"</span> <span class=\"param-enum-value string\">\"telnet\"</span> </div> <div class=\"redoc-markdown-block\">The type of service to authenticate with.</div> </div> </div> The following are the names of the valid values for service: | Value | Service | | ------------- | ----------------------------------------------- | | `as400` | IBM AS/400 | | `cifs` | Microsoft Windows/Samba (SMB/CIFS) | | `cifshash` | Microsoft Windows/Samba LM/NTLM Hash (SMB/CIFS) | | `cvs` | Concurrent Versioning System (CVS) | | `db2` | DB2 | | `ftp` | File Transfer Protocol (FTP) | | `http` | Web Site HTTP Authentication | | `ms-sql` | Microsoft SQL Server | | `mysql` | MySQL Server | | `notes` | Lotus Notes/Domino | | `oracle` | Oracle | | `pop` | Post Office Protocol (POP) | | `postgresql` | PostgreSQL | | `remote-exec` | Remote Execution | | `snmp` | Simple Network Management Protocol v1/v2c | | `snmpv3` | Simple Network Management Protocol v3 | | `ssh` | Secure Shell (SSH) | | `ssh-key` | Secure Shell (SSH) Public Key | | `sybase` | Sybase SQL Server | | `telnet` | Telnet | <p>The following is a specification of supported credential properties for each type of service. These properties are to be specified within the <code>account</code> object.</p> `as400` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `cifs` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `cifshash` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">ntlmHash</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The NTLM password hash. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `cvs` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `db2` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `ftp` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `http` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">realm</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The realm.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `ms-sql` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">useWindowsAuthentication</span> <span class=\"param-type\">boolean</span> <div class=\"redoc-markdown-block\"> <p> Boolean flag signaling whether to connect to the database using Windows authentication. When set to <code>true</code>, Windows authentication is attempted; when set to <code>false</code>, SQL authentication is attempted.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain. This property cannot be specified unless property <code>useWindowsAuthentication</code> is set to <code>true</code>.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `mysql` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The Notes ID password. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `notes` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">notesIDPassword</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `oracle` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">sid</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">enumerateSids</span> <span class=\"param-type\">boolean</span> <div class=\"redoc-markdown-block\"> <p> Boolean flag instructing the scan engine to attempt to enumerate SIDs from your environment. If set to <code>true</code>, set the Oracle Net Listener password in property <code>oracleListenerPassword</code>.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">oracleListenerPassword</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The Oracle Net Listener password. Used to enumerate SIDs from your environment.</p></div> </div> </div> `pop` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `postgresql` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `remote-exec` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `snmp` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">communityName</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The community name that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `snmpv3` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">authenticationType</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"no-authentication\"</span> <span class=\"param-enum-value string\">\"md5\"</span> <span class=\"param-enum-value string\">\"sha\"</span> </div> <div class=\"redoc-markdown-block\"><p>The authentication protocols available to use in SNMP v3.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The password for the account that will be used for authenticating. Is required when the property <code>authenticationType</code> is set to valid value other than <code>\"no-authentication\"</code>. <strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">privacyType</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"no-privacy\"</span> <span class=\"param-enum-value string\">\"des\"</span> <span class=\"param-enum-value string\">\"aes-128\"</span> <span class=\"param-enum-value string\">\"aes-192\"</span> <span class=\"param-enum-value string\">\"aes-192-with-3-des-key-extension\"</span> <span class=\"param-enum-value string\">\"aes-256\"</span> <span class=\"param-enum-value string\">\"aes-265-with-3-des-key-extension\"</span> </div> <div class=\"redoc-markdown-block\"><p>The privacy protocols available to use in SNMP v3.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">privacyPassword</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The privacy password for the account that will be used for authenticating. Is required when the property <code>authenticationType</code> is set to valid value other than <code>\"no-authentication\"</code> and when the <code>privacyType</code> is set to a valid value other than code>\"no-privacy\"</code>. <strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> </div> `ssh` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevation</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"none\"</span> <span class=\"param-enum-value string\">\"sudo\"</span> <span class=\"param-enum-value string\">\"sudosu\"</span> <span class=\"param-enum-value string\">\"su\"</span> <span class=\"param-enum-value string\">\"pbrun\"</span> <span class=\"param-enum-value string\">\"privileged-exec\"</span> </div> <div class=\"redoc-markdown-block\"> <p> Elevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to <code>\"none\"</code> if not specified. </p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevationUsername</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The user name for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The password for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.<strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> </div> `ssh-key` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">privateKeyPassword</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for private key. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">pemKey</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The PEM-format private key. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevation</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"none\"</span> <span class=\"param-enum-value string\">\"sudo\"</span> <span class=\"param-enum-value string\">\"sudosu\"</span> <span class=\"param-enum-value string\">\"su\"</span> <span class=\"param-enum-value string\">\"pbrun\"</span> <span class=\"param-enum-value string\">\"privileged-exec\"</span> </div> <div class=\"redoc-markdown-block\"> <p> Elevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to <code>\"none\"</code> if not specified. </p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevationUsername</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The user name for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The password for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.<strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> </div> `sybase` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">useWindowsAuthentication</span> <span class=\"param-type\">boolean</span> <div class=\"redoc-markdown-block\"> <p> Boolean flag signaling whether to connect to the database using Windows authentication. When set to <code>true</code>, Windows authentication is attempted; when set to <code>false</code>, SQL authentication is attempted.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain. This property cannot be specified unless property <code>useWindowsAuthentication</code> is set to <code>true</code>.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `telnet` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> |
+**description** | **String** | The description of the credential. | [optional]
+**host_restriction** | **String** | The host name or IP address that you want to restrict the credentials to. | [optional]
+**id** | **Integer** | The identifier of the credential. | [optional]
+**name** | **String** | The name of the credential. |
+**port_restriction** | **Integer** | Further restricts the credential to attempt to authenticate on a specific port. The port can only be restricted if the property `hostRestriction` is specified. | [optional]
+**site_assignment** | **String** | Assigns the shared scan credential either to be available to all sites or to a specific list of sites. The following table describes each supported value: | Value | Description | | ---------- | ---------------- | | `\"all-sites\"` | The shared scan credential is assigned to all current and future sites. | | `\"specific-sites\"` | The shared scan credential is assigned to zero sites by default. Administrators must explicitly assign sites to the shared credential. | Shared scan credentials assigned to a site can disabled within the site configuration, if needed. |
+**sites** | **Array<Integer>** | List of site identifiers. These sites are explicitly assigned access to the shared scan credential, allowing the site to use the credential for authentication during a scan. This property can only be set if the value of property `siteAssignment` is set to `\"specific-sites\"`. When the property `siteAssignment` is set to `\"all-sites\"`, this property will be `null`. | [optional]
+
+
diff --git a/docs/SharedCredentialAccount.md b/docs/SharedCredentialAccount.md
new file mode 100644
index 0000000..cf1cc4e
--- /dev/null
+++ b/docs/SharedCredentialAccount.md
@@ -0,0 +1,28 @@
+# Rapid7VmConsole::SharedCredentialAccount
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**authentication_type** | **String** | | [optional]
+**community_name** | **String** | | [optional]
+**database** | **String** | | [optional]
+**domain** | **String** | | [optional]
+**enumerate_sids** | **BOOLEAN** | | [optional]
+**notes_id_password** | **String** | | [optional]
+**ntlm_hash** | **String** | | [optional]
+**oracle_listener_password** | **String** | | [optional]
+**password** | **String** | | [optional]
+**pem_key** | **String** | | [optional]
+**permission_elevation** | **String** | | [optional]
+**permission_elevation_password** | **String** | | [optional]
+**permission_elevation_user_name** | **String** | | [optional]
+**privacy_password** | **String** | | [optional]
+**privacy_type** | **String** | | [optional]
+**private_key_password** | **String** | | [optional]
+**realm** | **String** | | [optional]
+**service** | **String** | | [optional]
+**sid** | **String** | | [optional]
+**use_windows_authentication** | **BOOLEAN** | | [optional]
+**username** | **String** | | [optional]
+
+
diff --git a/docs/Site.md b/docs/Site.md
new file mode 100644
index 0000000..6c07c9c
--- /dev/null
+++ b/docs/Site.md
@@ -0,0 +1,20 @@
+# Rapid7VmConsole::Site
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**assets** | **Integer** | The number of assets that belong to the site. | [optional]
+**connection_type** | **String** | The type of discovery connection configured for the site. This property only applies to dynamic sites. | [optional]
+**description** | **String** | The site description. | [optional]
+**id** | **Integer** | The identifier of the site. | [optional]
+**importance** | **String** | The site importance. | [optional]
+**last_scan_time** | **String** | The date and time of the site's last scan. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The site name. | [optional]
+**risk_score** | **Float** | The risk score (with criticality adjustments) of the site. | [optional]
+**scan_engine** | **Integer** | The identifier of the scan engine configured in the site. | [optional]
+**scan_template** | **String** | The identifier of the scan template configured in the site. | [optional]
+**type** | **String** | The type of the site. | [optional]
+**vulnerabilities** | [**Vulnerabilities**](Vulnerabilities.md) | Summary information for distinct vulnerabilities found on the assets. | [optional]
+
+
diff --git a/docs/SiteApi.md b/docs/SiteApi.md
new file mode 100644
index 0000000..53e6772
--- /dev/null
+++ b/docs/SiteApi.md
@@ -0,0 +1,4050 @@
+# Rapid7VmConsole::SiteApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**add_site_tag**](SiteApi.md#add_site_tag) | **PUT** /api/3/sites/{id}/tags/{tagId} | Site Tag
+[**add_site_user**](SiteApi.md#add_site_user) | **POST** /api/3/sites/{id}/users | Site Users Access
+[**create_site**](SiteApi.md#create_site) | **POST** /api/3/sites | Sites
+[**create_site_credential**](SiteApi.md#create_site_credential) | **POST** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+[**create_site_scan_schedule**](SiteApi.md#create_site_scan_schedule) | **POST** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+[**create_site_smtp_alert**](SiteApi.md#create_site_smtp_alert) | **POST** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+[**create_site_snmp_alert**](SiteApi.md#create_site_snmp_alert) | **POST** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+[**create_site_syslog_alert**](SiteApi.md#create_site_syslog_alert) | **POST** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+[**delete_all_site_alerts**](SiteApi.md#delete_all_site_alerts) | **DELETE** /api/3/sites/{id}/alerts | Site Alerts
+[**delete_all_site_credentials**](SiteApi.md#delete_all_site_credentials) | **DELETE** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+[**delete_all_site_scan_schedules**](SiteApi.md#delete_all_site_scan_schedules) | **DELETE** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+[**delete_all_site_smtp_alerts**](SiteApi.md#delete_all_site_smtp_alerts) | **DELETE** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+[**delete_all_site_snmp_alerts**](SiteApi.md#delete_all_site_snmp_alerts) | **DELETE** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+[**delete_all_site_syslog_alerts**](SiteApi.md#delete_all_site_syslog_alerts) | **DELETE** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+[**delete_site**](SiteApi.md#delete_site) | **DELETE** /api/3/sites/{id} | Site
+[**delete_site_credential**](SiteApi.md#delete_site_credential) | **DELETE** /api/3/sites/{id}/site_credentials/{credentialId} | Site Scan Credential
+[**delete_site_scan_schedule**](SiteApi.md#delete_site_scan_schedule) | **DELETE** /api/3/sites/{id}/scan_schedules/{scheduleId} | Site Scan Schedule
+[**delete_site_smtp_alert**](SiteApi.md#delete_site_smtp_alert) | **DELETE** /api/3/sites/{id}/alerts/smtp/{alertId} | Site SMTP Alert
+[**delete_site_snmp_alert**](SiteApi.md#delete_site_snmp_alert) | **DELETE** /api/3/sites/{id}/alerts/snmp/{alertId} | Site SNMP Alert
+[**delete_site_syslog_alert**](SiteApi.md#delete_site_syslog_alert) | **DELETE** /api/3/sites/{id}/alerts/syslog/{alertId} | Site Syslog Alert
+[**enable_shared_credential_on_site**](SiteApi.md#enable_shared_credential_on_site) | **PUT** /api/3/sites/{id}/shared_credentials/{credentialId}/enabled | Assigned Shared Credential Enablement
+[**enable_site_credential**](SiteApi.md#enable_site_credential) | **PUT** /api/3/sites/{id}/site_credentials/{credentialId}/enabled | Site Credential Enablement
+[**get_excluded_asset_groups**](SiteApi.md#get_excluded_asset_groups) | **GET** /api/3/sites/{id}/excluded_asset_groups | Site Excluded Asset Groups
+[**get_excluded_targets**](SiteApi.md#get_excluded_targets) | **GET** /api/3/sites/{id}/excluded_targets | Site Excluded Targets
+[**get_included_asset_groups**](SiteApi.md#get_included_asset_groups) | **GET** /api/3/sites/{id}/included_asset_groups | Site Included Asset Groups
+[**get_included_targets**](SiteApi.md#get_included_targets) | **GET** /api/3/sites/{id}/included_targets | Site Included Targets
+[**get_site**](SiteApi.md#get_site) | **GET** /api/3/sites/{id} | Site
+[**get_site_alerts**](SiteApi.md#get_site_alerts) | **GET** /api/3/sites/{id}/alerts | Site Alerts
+[**get_site_assets**](SiteApi.md#get_site_assets) | **GET** /api/3/sites/{id}/assets | Site Assets
+[**get_site_credential**](SiteApi.md#get_site_credential) | **GET** /api/3/sites/{id}/site_credentials/{credentialId} | Site Scan Credential
+[**get_site_credentials**](SiteApi.md#get_site_credentials) | **GET** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+[**get_site_discovery_connection**](SiteApi.md#get_site_discovery_connection) | **GET** /api/3/sites/{id}/discovery_connection | Site Discovery Connection
+[**get_site_discovery_search_criteria**](SiteApi.md#get_site_discovery_search_criteria) | **GET** /api/3/sites/{id}/discovery_search_criteria | Site Discovery Search Criteria
+[**get_site_organization**](SiteApi.md#get_site_organization) | **GET** /api/3/sites/{id}/organization | Site Organization Information
+[**get_site_scan_engine**](SiteApi.md#get_site_scan_engine) | **GET** /api/3/sites/{id}/scan_engine | Site Scan Engine
+[**get_site_scan_schedule**](SiteApi.md#get_site_scan_schedule) | **GET** /api/3/sites/{id}/scan_schedules/{scheduleId} | Site Scan Schedule
+[**get_site_scan_schedules**](SiteApi.md#get_site_scan_schedules) | **GET** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+[**get_site_scan_template**](SiteApi.md#get_site_scan_template) | **GET** /api/3/sites/{id}/scan_template | Site Scan Template
+[**get_site_shared_credentials**](SiteApi.md#get_site_shared_credentials) | **GET** /api/3/sites/{id}/shared_credentials | Assigned Shared Credentials
+[**get_site_smtp_alert**](SiteApi.md#get_site_smtp_alert) | **GET** /api/3/sites/{id}/alerts/smtp/{alertId} | Site SMTP Alert
+[**get_site_smtp_alerts**](SiteApi.md#get_site_smtp_alerts) | **GET** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+[**get_site_snmp_alert**](SiteApi.md#get_site_snmp_alert) | **GET** /api/3/sites/{id}/alerts/snmp/{alertId} | Site SNMP Alert
+[**get_site_snmp_alerts**](SiteApi.md#get_site_snmp_alerts) | **GET** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+[**get_site_syslog_alert**](SiteApi.md#get_site_syslog_alert) | **GET** /api/3/sites/{id}/alerts/syslog/{alertId} | Site Syslog Alert
+[**get_site_syslog_alerts**](SiteApi.md#get_site_syslog_alerts) | **GET** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+[**get_site_tags**](SiteApi.md#get_site_tags) | **GET** /api/3/sites/{id}/tags | Site Tags
+[**get_site_users**](SiteApi.md#get_site_users) | **GET** /api/3/sites/{id}/users | Site Users Access
+[**get_sites**](SiteApi.md#get_sites) | **GET** /api/3/sites | Sites
+[**get_web_auth_html_forms**](SiteApi.md#get_web_auth_html_forms) | **GET** /api/3/sites/{id}/web_authentication/html_forms | Web Authentication HTML Forms
+[**get_web_auth_http_headers**](SiteApi.md#get_web_auth_http_headers) | **GET** /api/3/sites/{id}/web_authentication/http_headers | Web Authentication HTTP Headers
+[**remove_all_excluded_asset_groups**](SiteApi.md#remove_all_excluded_asset_groups) | **DELETE** /api/3/sites/{id}/excluded_asset_groups | Site Excluded Asset Groups
+[**remove_all_included_asset_groups**](SiteApi.md#remove_all_included_asset_groups) | **DELETE** /api/3/sites/{id}/included_asset_groups | Site Included Asset Groups
+[**remove_asset_from_site**](SiteApi.md#remove_asset_from_site) | **DELETE** /api/3/sites/{id}/assets/{assetId} | Site Asset
+[**remove_excluded_asset_group**](SiteApi.md#remove_excluded_asset_group) | **DELETE** /api/3/sites/{id}/excluded_asset_groups/{assetGroupId} | Site Excluded Asset Group
+[**remove_included_asset_group**](SiteApi.md#remove_included_asset_group) | **DELETE** /api/3/sites/{id}/included_asset_groups/{assetGroupId} | Site Included Asset Group
+[**remove_site_assets**](SiteApi.md#remove_site_assets) | **DELETE** /api/3/sites/{id}/assets | Site Assets
+[**remove_site_tag**](SiteApi.md#remove_site_tag) | **DELETE** /api/3/sites/{id}/tags/{tagId} | Site Tag
+[**remove_site_user**](SiteApi.md#remove_site_user) | **DELETE** /api/3/sites/{id}/users/{userId} | Site User Access
+[**set_site_credentials**](SiteApi.md#set_site_credentials) | **PUT** /api/3/sites/{id}/site_credentials | Site Scan Credentials
+[**set_site_discovery_connection**](SiteApi.md#set_site_discovery_connection) | **PUT** /api/3/sites/{id}/discovery_connection | Site Discovery Connection
+[**set_site_discovery_search_criteria**](SiteApi.md#set_site_discovery_search_criteria) | **PUT** /api/3/sites/{id}/discovery_search_criteria | Site Discovery Search Criteria
+[**set_site_scan_engine**](SiteApi.md#set_site_scan_engine) | **PUT** /api/3/sites/{id}/scan_engine | Site Scan Engine
+[**set_site_scan_schedules**](SiteApi.md#set_site_scan_schedules) | **PUT** /api/3/sites/{id}/scan_schedules | Site Scan Schedules
+[**set_site_scan_template**](SiteApi.md#set_site_scan_template) | **PUT** /api/3/sites/{id}/scan_template | Site Scan Template
+[**set_site_smtp_alerts**](SiteApi.md#set_site_smtp_alerts) | **PUT** /api/3/sites/{id}/alerts/smtp | Site SMTP Alerts
+[**set_site_snmp_alerts**](SiteApi.md#set_site_snmp_alerts) | **PUT** /api/3/sites/{id}/alerts/snmp | Site SNMP Alerts
+[**set_site_syslog_alerts**](SiteApi.md#set_site_syslog_alerts) | **PUT** /api/3/sites/{id}/alerts/syslog | Site Syslog Alerts
+[**set_site_tags**](SiteApi.md#set_site_tags) | **PUT** /api/3/sites/{id}/tags | Site Tags
+[**set_site_users**](SiteApi.md#set_site_users) | **PUT** /api/3/sites/{id}/users | Site Users Access
+[**update_excluded_asset_groups**](SiteApi.md#update_excluded_asset_groups) | **PUT** /api/3/sites/{id}/excluded_asset_groups | Site Excluded Asset Groups
+[**update_excluded_targets**](SiteApi.md#update_excluded_targets) | **PUT** /api/3/sites/{id}/excluded_targets | Site Excluded Targets
+[**update_included_asset_groups**](SiteApi.md#update_included_asset_groups) | **PUT** /api/3/sites/{id}/included_asset_groups | Site Included Asset Groups
+[**update_included_targets**](SiteApi.md#update_included_targets) | **PUT** /api/3/sites/{id}/included_targets | Site Included Targets
+[**update_site**](SiteApi.md#update_site) | **PUT** /api/3/sites/{id} | Site
+[**update_site_credential**](SiteApi.md#update_site_credential) | **PUT** /api/3/sites/{id}/site_credentials/{credentialId} | Site Scan Credential
+[**update_site_organization**](SiteApi.md#update_site_organization) | **PUT** /api/3/sites/{id}/organization | Site Organization Information
+[**update_site_scan_schedule**](SiteApi.md#update_site_scan_schedule) | **PUT** /api/3/sites/{id}/scan_schedules/{scheduleId} | Site Scan Schedule
+[**update_site_smtp_alert**](SiteApi.md#update_site_smtp_alert) | **PUT** /api/3/sites/{id}/alerts/smtp/{alertId} | Site SMTP Alert
+[**update_site_snmp_alert**](SiteApi.md#update_site_snmp_alert) | **PUT** /api/3/sites/{id}/alerts/snmp/{alertId} | Site SNMP Alert
+[**update_site_syslog_alert**](SiteApi.md#update_site_syslog_alert) | **PUT** /api/3/sites/{id}/alerts/syslog/{alertId} | Site Syslog Alert
+
+
+# **add_site_tag**
+> Links add_site_tag(id, tag_id)
+
+Site Tag
+
+Adds a tag to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+tag_id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Site Tag
+ result = api_instance.add_site_tag(id, tag_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->add_site_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **tag_id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **add_site_user**
+> ReferenceWithUserIDLink add_site_user(id, opts)
+
+Site Users Access
+
+Grants a non-administrator user access to the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: 56 # Integer | The identifier of the user.
+}
+
+begin
+ #Site Users Access
+ result = api_instance.add_site_user(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->add_site_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Integer**| The identifier of the user. | [optional]
+
+### Return type
+
+[**ReferenceWithUserIDLink**](ReferenceWithUserIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_site**
+> ReferenceWithSiteIDLink create_site(opts)
+
+Sites
+
+Creates a new site with the specified configuration.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+opts = {
+ param0: Rapid7VmConsole::SiteCreateResource.new # SiteCreateResource | Resource for creating a site configuration.
+}
+
+begin
+ #Sites
+ result = api_instance.create_site(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->create_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**SiteCreateResource**](SiteCreateResource.md)| Resource for creating a site configuration. | [optional]
+
+### Return type
+
+[**ReferenceWithSiteIDLink**](ReferenceWithSiteIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_site_credential**
+> CreatedReferenceCredentialIDLink create_site_credential(id, opts)
+
+Site Scan Credentials
+
+Creates a new site credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param1: Rapid7VmConsole::SiteCredential.new # SiteCredential | The specification of a site credential.
+}
+
+begin
+ #Site Scan Credentials
+ result = api_instance.create_site_credential(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->create_site_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param1** | [**SiteCredential**](SiteCredential.md)| The specification of a site credential. | [optional]
+
+### Return type
+
+[**CreatedReferenceCredentialIDLink**](CreatedReferenceCredentialIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_site_scan_schedule**
+> ReferenceWithScanScheduleIDLink create_site_scan_schedule(id, opts)
+
+Site Scan Schedules
+
+Creates a new scan schedule for the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: Rapid7VmConsole::ScanSchedule.new # ScanSchedule | Resource for a scan schedule.
+}
+
+begin
+ #Site Scan Schedules
+ result = api_instance.create_site_scan_schedule(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->create_site_scan_schedule: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**ScanSchedule**](ScanSchedule.md)| Resource for a scan schedule. | [optional]
+
+### Return type
+
+[**ReferenceWithScanScheduleIDLink**](ReferenceWithScanScheduleIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_site_smtp_alert**
+> ReferenceWithAlertIDLink create_site_smtp_alert(id, opts)
+
+Site SMTP Alerts
+
+Creates a new SMTP alert for the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: Rapid7VmConsole::SmtpAlert.new # SmtpAlert | Resource for creating a new SMTP alert.
+}
+
+begin
+ #Site SMTP Alerts
+ result = api_instance.create_site_smtp_alert(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->create_site_smtp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**SmtpAlert**](SmtpAlert.md)| Resource for creating a new SMTP alert. | [optional]
+
+### Return type
+
+[**ReferenceWithAlertIDLink**](ReferenceWithAlertIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_site_snmp_alert**
+> ReferenceWithAlertIDLink create_site_snmp_alert(id, opts)
+
+Site SNMP Alerts
+
+Creates a new SNMP alert for the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: Rapid7VmConsole::SnmpAlert.new # SnmpAlert | Resource for creating a new SNMP alert.
+}
+
+begin
+ #Site SNMP Alerts
+ result = api_instance.create_site_snmp_alert(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->create_site_snmp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**SnmpAlert**](SnmpAlert.md)| Resource for creating a new SNMP alert. | [optional]
+
+### Return type
+
+[**ReferenceWithAlertIDLink**](ReferenceWithAlertIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_site_syslog_alert**
+> ReferenceWithAlertIDLink create_site_syslog_alert(id, opts)
+
+Site Syslog Alerts
+
+Creates a new Syslog alert for the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: Rapid7VmConsole::SyslogAlert.new # SyslogAlert | Resource for creating a new Syslog alert.
+}
+
+begin
+ #Site Syslog Alerts
+ result = api_instance.create_site_syslog_alert(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->create_site_syslog_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**SyslogAlert**](SyslogAlert.md)| Resource for creating a new Syslog alert. | [optional]
+
+### Return type
+
+[**ReferenceWithAlertIDLink**](ReferenceWithAlertIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_all_site_alerts**
+> Links delete_all_site_alerts(id)
+
+Site Alerts
+
+Deletes all alerts from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Alerts
+ result = api_instance.delete_all_site_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_all_site_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_all_site_credentials**
+> Links delete_all_site_credentials(id)
+
+Site Scan Credentials
+
+Deletes all site credentials from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Scan Credentials
+ result = api_instance.delete_all_site_credentials(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_all_site_credentials: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_all_site_scan_schedules**
+> Links delete_all_site_scan_schedules(id)
+
+Site Scan Schedules
+
+Deletes all scan schedules from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Scan Schedules
+ result = api_instance.delete_all_site_scan_schedules(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_all_site_scan_schedules: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_all_site_smtp_alerts**
+> Links delete_all_site_smtp_alerts(id)
+
+Site SMTP Alerts
+
+Deletes all SMTP alerts from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site SMTP Alerts
+ result = api_instance.delete_all_site_smtp_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_all_site_smtp_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_all_site_snmp_alerts**
+> Links delete_all_site_snmp_alerts(id)
+
+Site SNMP Alerts
+
+Deletes all SNMP alerts from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site SNMP Alerts
+ result = api_instance.delete_all_site_snmp_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_all_site_snmp_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_all_site_syslog_alerts**
+> Links delete_all_site_syslog_alerts(id)
+
+Site Syslog Alerts
+
+Deletes all Syslog alerts from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Syslog Alerts
+ result = api_instance.delete_all_site_syslog_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_all_site_syslog_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_site**
+> Links delete_site(id)
+
+Site
+
+site.delete.description
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site
+ result = api_instance.delete_site(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_site_credential**
+> Links delete_site_credential(id, credential_id)
+
+Site Scan Credential
+
+Deletes the specified site credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+credential_id = 56 # Integer | The identifier of the site credential.
+
+
+begin
+ #Site Scan Credential
+ result = api_instance.delete_site_credential(id, credential_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_site_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **credential_id** | **Integer**| The identifier of the site credential. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_site_scan_schedule**
+> Links delete_site_scan_schedule(id, schedule_id)
+
+Site Scan Schedule
+
+Deletes the specified scan schedule from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+schedule_id = 56 # Integer | The identifier of the scan schedule.
+
+
+begin
+ #Site Scan Schedule
+ result = api_instance.delete_site_scan_schedule(id, schedule_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_site_scan_schedule: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **schedule_id** | **Integer**| The identifier of the scan schedule. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_site_smtp_alert**
+> Links delete_site_smtp_alert(id, alert_id)
+
+Site SMTP Alert
+
+Deletes the specified SMTP alert from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+
+begin
+ #Site SMTP Alert
+ result = api_instance.delete_site_smtp_alert(id, alert_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_site_smtp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_site_snmp_alert**
+> Links delete_site_snmp_alert(id, alert_id)
+
+Site SNMP Alert
+
+Deletes the specified SNMP alert from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+
+begin
+ #Site SNMP Alert
+ result = api_instance.delete_site_snmp_alert(id, alert_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_site_snmp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_site_syslog_alert**
+> Links delete_site_syslog_alert(id, alert_id)
+
+Site Syslog Alert
+
+Deletes the specified Syslog alert from the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+
+begin
+ #Site Syslog Alert
+ result = api_instance.delete_site_syslog_alert(id, alert_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->delete_site_syslog_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **enable_shared_credential_on_site**
+> Links enable_shared_credential_on_site(id, credential_id, opts)
+
+Assigned Shared Credential Enablement
+
+Enable or disable the shared credential for the site's scans.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+credential_id = 56 # Integer | The identifier of the shared credential.
+
+opts = {
+ param0: true # BOOLEAN | Flag indicating whether the shared credential is enabled for the site's scans.
+}
+
+begin
+ #Assigned Shared Credential Enablement
+ result = api_instance.enable_shared_credential_on_site(id, credential_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->enable_shared_credential_on_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **credential_id** | **Integer**| The identifier of the shared credential. |
+ **param0** | **BOOLEAN**| Flag indicating whether the shared credential is enabled for the site's scans. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **enable_site_credential**
+> Links enable_site_credential(id, credential_id, opts)
+
+Site Credential Enablement
+
+Enable or disable the site credential for scans.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+credential_id = 56 # Integer | The identifier of the site credential.
+
+opts = {
+ param0: true # BOOLEAN | Flag indicating whether the credential is enabled for use during the scan.
+}
+
+begin
+ #Site Credential Enablement
+ result = api_instance.enable_site_credential(id, credential_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->enable_site_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **credential_id** | **Integer**| The identifier of the site credential. |
+ **param0** | **BOOLEAN**| Flag indicating whether the credential is enabled for use during the scan. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_excluded_asset_groups**
+> ResourcesAssetGroup get_excluded_asset_groups(id)
+
+Site Excluded Asset Groups
+
+Retrieves the excluded asset groups in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Excluded Asset Groups
+ result = api_instance.get_excluded_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_excluded_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesAssetGroup**](ResourcesAssetGroup.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_excluded_targets**
+> ScanTargetsResource get_excluded_targets(id)
+
+Site Excluded Targets
+
+Retrieves the excluded targets in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Excluded Targets
+ result = api_instance.get_excluded_targets(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_excluded_targets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ScanTargetsResource**](ScanTargetsResource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_included_asset_groups**
+> ResourcesAssetGroup get_included_asset_groups(id)
+
+Site Included Asset Groups
+
+Retrieves the included asset groups in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Included Asset Groups
+ result = api_instance.get_included_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_included_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesAssetGroup**](ResourcesAssetGroup.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_included_targets**
+> ScanTargetsResource get_included_targets(id)
+
+Site Included Targets
+
+Retrieves the included targets in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Included Targets
+ result = api_instance.get_included_targets(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_included_targets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ScanTargetsResource**](ScanTargetsResource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site**
+> Site get_site(id)
+
+Site
+
+Retrieves the site with the specified identifier.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site
+ result = api_instance.get_site(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Site**](Site.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_alerts**
+> ResourcesAlert get_site_alerts(id)
+
+Site Alerts
+
+Retrieve all alerts defined in the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Alerts
+ result = api_instance.get_site_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesAlert**](ResourcesAlert.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_assets**
+> PageOfAsset get_site_assets(id, opts)
+
+Site Assets
+
+Retrieves a paged resource of assets linked with the specified site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Site Assets
+ result = api_instance.get_site_assets(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfAsset**](PageOfAsset.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_credential**
+> SiteCredential get_site_credential(id, credential_id)
+
+Site Scan Credential
+
+Retrieves the specified site credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+credential_id = 56 # Integer | The identifier of the site credential.
+
+
+begin
+ #Site Scan Credential
+ result = api_instance.get_site_credential(id, credential_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **credential_id** | **Integer**| The identifier of the site credential. |
+
+### Return type
+
+[**SiteCredential**](SiteCredential.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_credentials**
+> ResourcesSiteCredential get_site_credentials(id)
+
+Site Scan Credentials
+
+Retrieves all defined site credential resources.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Scan Credentials
+ result = api_instance.get_site_credentials(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_credentials: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesSiteCredential**](ResourcesSiteCredential.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_discovery_connection**
+> SiteDiscoveryConnection get_site_discovery_connection(id)
+
+Site Discovery Connection
+
+Retrieves the discovery connection assigned to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Discovery Connection
+ result = api_instance.get_site_discovery_connection(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_discovery_connection: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**SiteDiscoveryConnection**](SiteDiscoveryConnection.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_discovery_search_criteria**
+> DiscoverySearchCriteria get_site_discovery_search_criteria(id)
+
+Site Discovery Search Criteria
+
+Retrieve the search criteria of the dynamic site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Discovery Search Criteria
+ result = api_instance.get_site_discovery_search_criteria(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_discovery_search_criteria: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**DiscoverySearchCriteria**](DiscoverySearchCriteria.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_organization**
+> SiteOrganization get_site_organization(id)
+
+Site Organization Information
+
+Retrieves the site organization information.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Organization Information
+ result = api_instance.get_site_organization(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_organization: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**SiteOrganization**](SiteOrganization.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_scan_engine**
+> ScanEngine get_site_scan_engine(id)
+
+Site Scan Engine
+
+Retrieves the resource of the scan engine assigned to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Scan Engine
+ result = api_instance.get_site_scan_engine(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ScanEngine**](ScanEngine.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_scan_schedule**
+> ScanSchedule get_site_scan_schedule(id, schedule_id)
+
+Site Scan Schedule
+
+Retrieves the specified scan schedule.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+schedule_id = 56 # Integer | The identifier of the scan schedule.
+
+
+begin
+ #Site Scan Schedule
+ result = api_instance.get_site_scan_schedule(id, schedule_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_scan_schedule: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **schedule_id** | **Integer**| The identifier of the scan schedule. |
+
+### Return type
+
+[**ScanSchedule**](ScanSchedule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_scan_schedules**
+> ResourcesScanSchedule get_site_scan_schedules(id)
+
+Site Scan Schedules
+
+Returns all scan schedules for the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Scan Schedules
+ result = api_instance.get_site_scan_schedules(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_scan_schedules: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesScanSchedule**](ResourcesScanSchedule.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_scan_template**
+> ScanTemplate get_site_scan_template(id)
+
+Site Scan Template
+
+Retrieves the resource of the scan template assigned to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Scan Template
+ result = api_instance.get_site_scan_template(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_scan_template: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ScanTemplate**](ScanTemplate.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_shared_credentials**
+> ResourcesSiteSharedCredential get_site_shared_credentials(id)
+
+Assigned Shared Credentials
+
+Retrieve all of the shared credentials assigned to the site. These shared credentials can be enabled/disabled for the site's scan.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Assigned Shared Credentials
+ result = api_instance.get_site_shared_credentials(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_shared_credentials: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesSiteSharedCredential**](ResourcesSiteSharedCredential.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_smtp_alert**
+> SmtpAlert get_site_smtp_alert(id, alert_id)
+
+Site SMTP Alert
+
+Retrieves the specified SMTP alert.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+
+begin
+ #Site SMTP Alert
+ result = api_instance.get_site_smtp_alert(id, alert_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_smtp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+
+### Return type
+
+[**SmtpAlert**](SmtpAlert.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_smtp_alerts**
+> ResourcesSmtpAlert get_site_smtp_alerts(id)
+
+Site SMTP Alerts
+
+Retrieves all SMTP alerts defined in the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site SMTP Alerts
+ result = api_instance.get_site_smtp_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_smtp_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesSmtpAlert**](ResourcesSmtpAlert.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_snmp_alert**
+> SnmpAlert get_site_snmp_alert(id, alert_id)
+
+Site SNMP Alert
+
+Retrieves the specified SNMP alert.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+
+begin
+ #Site SNMP Alert
+ result = api_instance.get_site_snmp_alert(id, alert_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_snmp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+
+### Return type
+
+[**SnmpAlert**](SnmpAlert.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_snmp_alerts**
+> ResourcesSnmpAlert get_site_snmp_alerts(id)
+
+Site SNMP Alerts
+
+Retrieves all SNMP alerts defined in the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site SNMP Alerts
+ result = api_instance.get_site_snmp_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_snmp_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesSnmpAlert**](ResourcesSnmpAlert.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_syslog_alert**
+> SyslogAlert get_site_syslog_alert(id, alert_id)
+
+Site Syslog Alert
+
+Retrieves the specified Syslog alert.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+
+begin
+ #Site Syslog Alert
+ result = api_instance.get_site_syslog_alert(id, alert_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_syslog_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+
+### Return type
+
+[**SyslogAlert**](SyslogAlert.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_syslog_alerts**
+> ResourcesSyslogAlert get_site_syslog_alerts(id)
+
+Site Syslog Alerts
+
+Retrieves all Syslog alerts defined in the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Syslog Alerts
+ result = api_instance.get_site_syslog_alerts(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_syslog_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesSyslogAlert**](ResourcesSyslogAlert.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_tags**
+> ResourcesTag get_site_tags(id)
+
+Site Tags
+
+Retrieves the list of tags added to the sites.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Tags
+ result = api_instance.get_site_tags(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_tags: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesTag**](ResourcesTag.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_site_users**
+> ResourcesUser get_site_users(id)
+
+Site Users Access
+
+Retrieve the list of non-administrator users that have access to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Users Access
+ result = api_instance.get_site_users(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_site_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesUser**](ResourcesUser.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_sites**
+> PageOfSite get_sites(opts)
+
+Sites
+
+Retrieves a paged resource of accessible sites.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Sites
+ result = api_instance.get_sites(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfSite**](PageOfSite.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_web_auth_html_forms**
+> ResourcesWebFormAuthentication get_web_auth_html_forms(id)
+
+Web Authentication HTML Forms
+
+Retrieves all HTML form authentications configured in the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Web Authentication HTML Forms
+ result = api_instance.get_web_auth_html_forms(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_web_auth_html_forms: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesWebFormAuthentication**](ResourcesWebFormAuthentication.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_web_auth_http_headers**
+> ResourcesWebHeaderAuthentication get_web_auth_http_headers(id)
+
+Web Authentication HTTP Headers
+
+Retrieves all HTTP header authentications configured in the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Web Authentication HTTP Headers
+ result = api_instance.get_web_auth_http_headers(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->get_web_auth_http_headers: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**ResourcesWebHeaderAuthentication**](ResourcesWebHeaderAuthentication.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_all_excluded_asset_groups**
+> Links remove_all_excluded_asset_groups(id)
+
+Site Excluded Asset Groups
+
+Removes all excluded asset groups from the specified static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Excluded Asset Groups
+ result = api_instance.remove_all_excluded_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_all_excluded_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_all_included_asset_groups**
+> Links remove_all_included_asset_groups(id)
+
+Site Included Asset Groups
+
+Removes all included asset groups from the specified static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Included Asset Groups
+ result = api_instance.remove_all_included_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_all_included_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_asset_from_site**
+> Links remove_asset_from_site(id, asset_id)
+
+Site Asset
+
+Removes an asset from a site. The asset will only be deleted if it belongs to no other sites.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Site Asset
+ result = api_instance.remove_asset_from_site(id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_asset_from_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_excluded_asset_group**
+> Links remove_excluded_asset_group(id, asset_group_id)
+
+Site Excluded Asset Group
+
+Removes the specified asset group from the excluded asset groups configured in the static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+asset_group_id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Site Excluded Asset Group
+ result = api_instance.remove_excluded_asset_group(id, asset_group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_excluded_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **asset_group_id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_included_asset_group**
+> Links remove_included_asset_group(id, asset_group_id)
+
+Site Included Asset Group
+
+Removes the specified asset group from the included asset groups configured in the static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+asset_group_id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Site Included Asset Group
+ result = api_instance.remove_included_asset_group(id, asset_group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_included_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **asset_group_id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_site_assets**
+> Links remove_site_assets(id)
+
+Site Assets
+
+Removes all assets from the specified site. Assets will be deleted entirely from the Security Console if either Asset Linking is disabled or if Asset Linking is enabled and the asset only existed in this site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Assets
+ result = api_instance.remove_site_assets(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_site_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_site_tag**
+> Links remove_site_tag(id, tag_id)
+
+Site Tag
+
+Removes the specified tag from the site's tags.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+tag_id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Site Tag
+ result = api_instance.remove_site_tag(id, tag_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_site_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **tag_id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_site_user**
+> Links remove_site_user(id, user_id)
+
+Site User Access
+
+Removes the specified user from the site's access list.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+user_id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Site User Access
+ result = api_instance.remove_site_user(id, user_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->remove_site_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **user_id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_credentials**
+> Links set_site_credentials(id, opts)
+
+Site Scan Credentials
+
+Updates multiple site credentials.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param1: [Rapid7VmConsole::SiteCredential.new] # Array | A list of site credentials resources.
+}
+
+begin
+ #Site Scan Credentials
+ result = api_instance.set_site_credentials(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_credentials: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param1** | [**Array<SiteCredential>**](SiteCredential.md)| A list of site credentials resources. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_discovery_connection**
+> Links set_site_discovery_connection(id, opts)
+
+Site Discovery Connection
+
+Updates the discovery connection assigned to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: 789 # Integer | The identifier of the discovery connection.
+}
+
+begin
+ #Site Discovery Connection
+ result = api_instance.set_site_discovery_connection(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_discovery_connection: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Integer**| The identifier of the discovery connection. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_discovery_search_criteria**
+> Links set_site_discovery_search_criteria(id, param1)
+
+Site Discovery Search Criteria
+
+Update the search criteria of the dynamic site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+param1 = Rapid7VmConsole::DiscoverySearchCriteria.new # DiscoverySearchCriteria | param1
+
+
+begin
+ #Site Discovery Search Criteria
+ result = api_instance.set_site_discovery_search_criteria(id, param1)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_discovery_search_criteria: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param1** | [**DiscoverySearchCriteria**](DiscoverySearchCriteria.md)| param1 |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_scan_engine**
+> Links set_site_scan_engine(id, opts)
+
+Site Scan Engine
+
+Updates the assigned scan engine to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: 56 # Integer | The identifier of the scan engine.
+}
+
+begin
+ #Site Scan Engine
+ result = api_instance.set_site_scan_engine(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_scan_engine: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Integer**| The identifier of the scan engine. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_scan_schedules**
+> Links set_site_scan_schedules(id, opts)
+
+Site Scan Schedules
+
+Updates all scan schedules for the specified site in a single request using the array of resources defined in the request body.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::ScanSchedule.new] # Array | Array of resources for updating all scan schedules defined in the site. Scan schedules defined in the site that are omitted from this request will be deleted from the site.
+}
+
+begin
+ #Site Scan Schedules
+ result = api_instance.set_site_scan_schedules(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_scan_schedules: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**Array<ScanSchedule>**](ScanSchedule.md)| Array of resources for updating all scan schedules defined in the site. Scan schedules defined in the site that are omitted from this request will be deleted from the site. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_scan_template**
+> Links set_site_scan_template(id, opts)
+
+Site Scan Template
+
+Updates the assigned scan template to the site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: "param0_example" # String | The identifier of the scan template.
+}
+
+begin
+ #Site Scan Template
+ result = api_instance.set_site_scan_template(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_scan_template: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **String**| The identifier of the scan template. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_smtp_alerts**
+> Links set_site_smtp_alerts(id, opts)
+
+Site SMTP Alerts
+
+Updates all SMTP alerts for the specified site in a single request using the array of resources defined in the request body.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::SmtpAlert.new] # Array | Array of resources for updating all SMTP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.
+}
+
+begin
+ #Site SMTP Alerts
+ result = api_instance.set_site_smtp_alerts(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_smtp_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**Array<SmtpAlert>**](SmtpAlert.md)| Array of resources for updating all SMTP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_snmp_alerts**
+> Links set_site_snmp_alerts(id, opts)
+
+Site SNMP Alerts
+
+Updates all SNMP alerts for the specified site in a single request using the array of resources defined in the request body.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::SnmpAlert.new] # Array | Array of resources for updating all SNMP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.
+}
+
+begin
+ #Site SNMP Alerts
+ result = api_instance.set_site_snmp_alerts(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_snmp_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**Array<SnmpAlert>**](SnmpAlert.md)| Array of resources for updating all SNMP alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_syslog_alerts**
+> Links set_site_syslog_alerts(id, opts)
+
+Site Syslog Alerts
+
+Updates all Syslog alerts for the specified site in a single request using the array of resources defined in the request body.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::SyslogAlert.new] # Array | Array of resources for updating all Syslog alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site.
+}
+
+begin
+ #Site Syslog Alerts
+ result = api_instance.set_site_syslog_alerts(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_syslog_alerts: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**Array<SyslogAlert>**](SyslogAlert.md)| Array of resources for updating all Syslog alerts defined in the site. Alerts defined in the site that are omitted from this request will be deleted from the site. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_tags**
+> Links set_site_tags(id, opts)
+
+Site Tags
+
+Updates the site's list of tags.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | A list of tag identifiers to replace the site's tags.
+}
+
+begin
+ #Site Tags
+ result = api_instance.set_site_tags(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_tags: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param1** | **Array<Integer>**| A list of tag identifiers to replace the site's tags. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_site_users**
+> Links set_site_users(id, opts)
+
+Site Users Access
+
+Updates the site's access list.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::Array.new] # Array | A list of user identifiers to replace the site's access list.
+}
+
+begin
+ #Site Users Access
+ result = api_instance.set_site_users(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->set_site_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Array<Integer>**| A list of user identifiers to replace the site's access list. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_excluded_asset_groups**
+> Links update_excluded_asset_groups(id, opts)
+
+Site Excluded Asset Groups
+
+Updates the excluded asset groups in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::Array.new] # Array | Array of asset group identifiers.
+}
+
+begin
+ #Site Excluded Asset Groups
+ result = api_instance.update_excluded_asset_groups(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_excluded_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Array<Integer>**| Array of asset group identifiers. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_excluded_targets**
+> Links update_excluded_targets(id, opts)
+
+Site Excluded Targets
+
+Updates the excluded targets in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::Array.new] # Array | List of addresses to be the site's new excluded scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.
+}
+
+begin
+ #Site Excluded Targets
+ result = api_instance.update_excluded_targets(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_excluded_targets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Array<String>**| List of addresses to be the site's new excluded scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_included_asset_groups**
+> Links update_included_asset_groups(id, opts)
+
+Site Included Asset Groups
+
+Updates the included asset groups in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::Array.new] # Array | Array of asset group identifiers.
+}
+
+begin
+ #Site Included Asset Groups
+ result = api_instance.update_included_asset_groups(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_included_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Array<Integer>**| Array of asset group identifiers. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_included_targets**
+> Links update_included_targets(id, opts)
+
+Site Included Targets
+
+Updates the included targets in a static site.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: [Rapid7VmConsole::Array.new] # Array | List of addresses to be the site's new included scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation.
+}
+
+begin
+ #Site Included Targets
+ result = api_instance.update_included_targets(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_included_targets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | **Array<String>**| List of addresses to be the site's new included scan targets. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_site**
+> Links update_site(id, opts)
+
+Site
+
+Updates the configuration of the site with the specified identifier.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: Rapid7VmConsole::SiteUpdateResource.new # SiteUpdateResource | Resource for updating a site configuration.
+}
+
+begin
+ #Site
+ result = api_instance.update_site(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**SiteUpdateResource**](SiteUpdateResource.md)| Resource for updating a site configuration. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_site_credential**
+> Links update_site_credential(id, credential_id, opts)
+
+Site Scan Credential
+
+Updates the specified site credential.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+credential_id = 56 # Integer | The identifier of the site credential.
+
+opts = {
+ param2: Rapid7VmConsole::SiteCredential.new # SiteCredential | The specification of the site credential to update.
+}
+
+begin
+ #Site Scan Credential
+ result = api_instance.update_site_credential(id, credential_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_site_credential: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **credential_id** | **Integer**| The identifier of the site credential. |
+ **param2** | [**SiteCredential**](SiteCredential.md)| The specification of the site credential to update. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_site_organization**
+> Links update_site_organization(id, opts)
+
+Site Organization Information
+
+Updates the site organization information.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+opts = {
+ param0: Rapid7VmConsole::SiteOrganization.new # SiteOrganization | Resource for updating the specified site's organization information.
+}
+
+begin
+ #Site Organization Information
+ result = api_instance.update_site_organization(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_site_organization: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **param0** | [**SiteOrganization**](SiteOrganization.md)| Resource for updating the specified site's organization information. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_site_scan_schedule**
+> Links update_site_scan_schedule(id, schedule_id, opts)
+
+Site Scan Schedule
+
+Updates the specified scan schedule.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+schedule_id = 56 # Integer | The identifier of the scan schedule.
+
+opts = {
+ param0: Rapid7VmConsole::ScanSchedule.new # ScanSchedule | Resource for updating the specified scan schedule.
+}
+
+begin
+ #Site Scan Schedule
+ result = api_instance.update_site_scan_schedule(id, schedule_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_site_scan_schedule: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **schedule_id** | **Integer**| The identifier of the scan schedule. |
+ **param0** | [**ScanSchedule**](ScanSchedule.md)| Resource for updating the specified scan schedule. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_site_smtp_alert**
+> Links update_site_smtp_alert(id, alert_id, opts)
+
+Site SMTP Alert
+
+Updates the specified SMTP alert.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+opts = {
+ param0: Rapid7VmConsole::SmtpAlert.new # SmtpAlert | Resource for updating the specified SMTP alert.
+}
+
+begin
+ #Site SMTP Alert
+ result = api_instance.update_site_smtp_alert(id, alert_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_site_smtp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+ **param0** | [**SmtpAlert**](SmtpAlert.md)| Resource for updating the specified SMTP alert. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_site_snmp_alert**
+> Links update_site_snmp_alert(id, alert_id, opts)
+
+Site SNMP Alert
+
+Updates the specified SNMP alert.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+opts = {
+ param0: Rapid7VmConsole::SnmpAlert.new # SnmpAlert | Resource for updating the specified SNMP alert.
+}
+
+begin
+ #Site SNMP Alert
+ result = api_instance.update_site_snmp_alert(id, alert_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_site_snmp_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+ **param0** | [**SnmpAlert**](SnmpAlert.md)| Resource for updating the specified SNMP alert. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_site_syslog_alert**
+> Links update_site_syslog_alert(id, alert_id, opts)
+
+Site Syslog Alert
+
+Updates the specified Syslog alert.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::SiteApi.new
+
+id = 56 # Integer | The identifier of the site.
+
+alert_id = 56 # Integer | The identifier of the alert.
+
+opts = {
+ param0: Rapid7VmConsole::SyslogAlert.new # SyslogAlert | Resource for updating the specified Syslog alert.
+}
+
+begin
+ #Site Syslog Alert
+ result = api_instance.update_site_syslog_alert(id, alert_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling SiteApi->update_site_syslog_alert: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the site. |
+ **alert_id** | **Integer**| The identifier of the alert. |
+ **param0** | [**SyslogAlert**](SyslogAlert.md)| Resource for updating the specified Syslog alert. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/SiteCreateResource.md b/docs/SiteCreateResource.md
new file mode 100644
index 0000000..96e9d38
--- /dev/null
+++ b/docs/SiteCreateResource.md
@@ -0,0 +1,14 @@
+# Rapid7VmConsole::SiteCreateResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**description** | **String** | The site's description. | [optional]
+**engine_id** | **Integer** | The identifier of a scan engine. Default scan engine is selected when not specified. | [optional]
+**importance** | **String** | The site importance. Defaults to `\"normal\"` if not specified. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The site name. Name must be unique. |
+**scan** | [**ScanScope**](ScanScope.md) | Defines the scope of scan targets for the site, which can be addresses, or asset groups, for static sites and a discovery configuration for dynamic sites. Only one property must be set by the user when saving a site. | [optional]
+**scan_template_id** | **String** | The identifier of a scan template. Default scan template is selected when not specified. | [optional]
+
+
diff --git a/docs/SiteCredential.md b/docs/SiteCredential.md
new file mode 100644
index 0000000..58286d9
--- /dev/null
+++ b/docs/SiteCredential.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::SiteCredential
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**account** | [**Account**](Account.md) | Specify the type of service to authenticate as well as all of the information required by that service. <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">service</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"as400\"</span> <span class=\"param-enum-value string\">\"cifs\"</span> <span class=\"param-enum-value string\">\"cifshash\"</span> <span class=\"param-enum-value string\">\"cvs\"</span> <span class=\"param-enum-value string\">\"db2\"</span> <span class=\"param-enum-value string\">\"ftp\"</span> <span class=\"param-enum-value string\">\"http\"</span> <span class=\"param-enum-value string\">\"ms-sql\"</span> <span class=\"param-enum-value string\">\"mysql\"</span> <span class=\"param-enum-value string\">\"notes\"</span> <span class=\"param-enum-value string\">\"oracle\"</span> <span class=\"param-enum-value string\">\"pop\"</span> <span class=\"param-enum-value string\">\"postgresql\"</span> <span class=\"param-enum-value string\">\"remote-exec\"</span> <span class=\"param-enum-value string\">\"snmp\"</span> <span class=\"param-enum-value string\">\"snmpv3\"</span> <span class=\"param-enum-value string\">\"ssh\"</span> <span class=\"param-enum-value string\">\"ssh-key\"</span> <span class=\"param-enum-value string\">\"sybase\"</span> <span class=\"param-enum-value string\">\"telnet\"</span> </div> <div class=\"redoc-markdown-block\">The type of service to authenticate with.</div> </div> </div> The following are the names of the valid values for service: | Value | Service | | ------------- | ----------------------------------------------- | | `as400` | IBM AS/400 | | `cifs` | Microsoft Windows/Samba (SMB/CIFS) | | `cifshash` | Microsoft Windows/Samba LM/NTLM Hash (SMB/CIFS) | | `cvs` | Concurrent Versioning System (CVS) | | `db2` | DB2 | | `ftp` | File Transfer Protocol (FTP) | | `http` | Web Site HTTP Authentication | | `ms-sql` | Microsoft SQL Server | | `mysql` | MySQL Server | | `notes` | Lotus Notes/Domino | | `oracle` | Oracle | | `pop` | Post Office Protocol (POP) | | `postgresql` | PostgreSQL | | `remote-exec` | Remote Execution | | `snmp` | Simple Network Management Protocol v1/v2c | | `snmpv3` | Simple Network Management Protocol v3 | | `ssh` | Secure Shell (SSH) | | `ssh-key` | Secure Shell (SSH) Public Key | | `sybase` | Sybase SQL Server | | `telnet` | Telnet | <p>The following is a specification of supported credential properties for each type of service. These properties are to be specified within the <code>account</code> object.</p> `as400` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `cifs` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `cifshash` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">ntlmHash</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The NTLM password hash. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `cvs` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `db2` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `ftp` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `http` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">realm</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The realm.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `ms-sql` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">useWindowsAuthentication</span> <span class=\"param-type\">boolean</span> <div class=\"redoc-markdown-block\"> <p> Boolean flag signaling whether to connect to the database using Windows authentication. When set to <code>true</code>, Windows authentication is attempted; when set to <code>false</code>, SQL authentication is attempted.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain. This property cannot be specified unless property <code>useWindowsAuthentication</code> is set to <code>true</code>.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `mysql` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The Notes ID password. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `notes` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">notesIDPassword</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `oracle` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">sid</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">enumerateSids</span> <span class=\"param-type\">boolean</span> <div class=\"redoc-markdown-block\"> <p> Boolean flag instructing the scan engine to attempt to enumerate SIDs from your environment. If set to <code>true</code>, set the Oracle Net Listener password in property <code>oracleListenerPassword</code>.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">oracleListenerPassword</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The Oracle Net Listener password. Used to enumerate SIDs from your environment.</p></div> </div> </div> `pop` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `postgresql` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `remote-exec` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `snmp` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">communityName</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The community name that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `snmpv3` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">authenticationType</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"no-authentication\"</span> <span class=\"param-enum-value string\">\"md5\"</span> <span class=\"param-enum-value string\">\"sha\"</span> </div> <div class=\"redoc-markdown-block\"><p>The authentication protocols available to use in SNMP v3.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The password for the account that will be used for authenticating. Is required when the property <code>authenticationType</code> is set to valid value other than <code>\"no-authentication\"</code>. <strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">privacyType</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"no-privacy\"</span> <span class=\"param-enum-value string\">\"des\"</span> <span class=\"param-enum-value string\">\"aes-128\"</span> <span class=\"param-enum-value string\">\"aes-192\"</span> <span class=\"param-enum-value string\">\"aes-192-with-3-des-key-extension\"</span> <span class=\"param-enum-value string\">\"aes-256\"</span> <span class=\"param-enum-value string\">\"aes-265-with-3-des-key-extension\"</span> </div> <div class=\"redoc-markdown-block\"><p>The privacy protocols available to use in SNMP v3.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">privacyPassword</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The privacy password for the account that will be used for authenticating. Is required when the property <code>authenticationType</code> is set to valid value other than <code>\"no-authentication\"</code> and when the <code>privacyType</code> is set to a valid value other than code>\"no-privacy\"</code>. <strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> </div> `ssh` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevation</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"none\"</span> <span class=\"param-enum-value string\">\"sudo\"</span> <span class=\"param-enum-value string\">\"sudosu\"</span> <span class=\"param-enum-value string\">\"su\"</span> <span class=\"param-enum-value string\">\"pbrun\"</span> <span class=\"param-enum-value string\">\"privileged-exec\"</span> </div> <div class=\"redoc-markdown-block\"> <p> Elevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to <code>\"none\"</code> if not specified. </p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevationUsername</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The user name for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The password for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.<strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> </div> `ssh-key` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">privateKeyPassword</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for private key. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">pemKey</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The PEM-format private key. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevation</span> <span class=\"param-type\">string</span> <div class=\"param-enum\"> <span class=\"param-enum-value string\">\"none\"</span> <span class=\"param-enum-value string\">\"sudo\"</span> <span class=\"param-enum-value string\">\"sudosu\"</span> <span class=\"param-enum-value string\">\"su\"</span> <span class=\"param-enum-value string\">\"pbrun\"</span> <span class=\"param-enum-value string\">\"privileged-exec\"</span> </div> <div class=\"redoc-markdown-block\"> <p> Elevate scan engine permissions to administrative or root access, which is necessary to obtain certain data during the scan. Defaults to <code>\"none\"</code> if not specified. </p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">permissionElevationUsername</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The user name for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"> <p> The password for the account with elevated permissions. This property must not be specified when the property <code>permissionElevation</code> is set to either <code>\"none\"</code> or <code>\"pbrun\"</code>; otherwise the property is required.<strong>Note: This property is not returned in responses for security.</strong></p> </div> </div> </div> `sybase` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">database</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The name of the database. If not specified, a default database name will be used during authentication.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">useWindowsAuthentication</span> <span class=\"param-type\">boolean</span> <div class=\"redoc-markdown-block\"> <p> Boolean flag signaling whether to connect to the database using Windows authentication. When set to <code>true</code>, Windows authentication is attempted; when set to <code>false</code>, SQL authentication is attempted.</p> </div> </div> <div class=\"property-info\"> <span class=\"property-name\">domain</span> <span class=\"param-type\">string</span> <div class=\"redoc-markdown-block\"><p>The address of the domain. This property cannot be specified unless property <code>useWindowsAuthentication</code> is set to <code>true</code>.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> `telnet` supported properties: <div class=\"properties\"> <div class=\"property-info\"> <span class=\"property-name\">username</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The user name for the account that will be used for authenticating.</p></div> </div> <div class=\"property-info\"> <span class=\"property-name\">password</span> <span class=\"param-type\">string</span> <span _ngcontent-c21 class=\"param-required\">Required</span> <div class=\"redoc-markdown-block\"><p>The password for the account that will be used for authenticating. <strong>Note: This property is not returned in responses for security.</strong></p></div> </div> </div> |
+**description** | **String** | The description of the credential. | [optional]
+**enabled** | **BOOLEAN** | Flag indicating whether the credential is enabled for use during the scan. | [optional]
+**host_restriction** | **String** | The host name or IP address that you want to restrict the credentials to. | [optional]
+**id** | **Integer** | The identifier of the credential. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The name of the credential. |
+**port_restriction** | **Integer** | Further restricts the credential to attempt to authenticate on a specific port. The port can only be restricted if the property `hostRestriction` is specified. | [optional]
+
+
diff --git a/docs/SiteDiscoveryConnection.md b/docs/SiteDiscoveryConnection.md
new file mode 100644
index 0000000..2be955e
--- /dev/null
+++ b/docs/SiteDiscoveryConnection.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::SiteDiscoveryConnection
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the discovery connection. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the discovery connection. | [optional]
+**type** | **String** | The type of discovery connection configured for the site. This property only applies to dynamic sites. | [optional]
+
+
diff --git a/docs/SiteOrganization.md b/docs/SiteOrganization.md
new file mode 100644
index 0000000..ce10a55
--- /dev/null
+++ b/docs/SiteOrganization.md
@@ -0,0 +1,19 @@
+# Rapid7VmConsole::SiteOrganization
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**address** | **String** | The address. | [optional]
+**city** | **String** | The city. | [optional]
+**contact** | **String** | The contact person name. | [optional]
+**country** | **String** | The country. | [optional]
+**email** | **String** | The e-mail address. | [optional]
+**job_title** | **String** | The job title. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The organization name. | [optional]
+**phone** | **String** | The phone number. | [optional]
+**state** | **String** | The state. | [optional]
+**url** | **String** | The organization URL. | [optional]
+**zip_code** | **String** | The zip or region code. | [optional]
+
+
diff --git a/docs/SiteSharedCredential.md b/docs/SiteSharedCredential.md
new file mode 100644
index 0000000..ecc682d
--- /dev/null
+++ b/docs/SiteSharedCredential.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::SiteSharedCredential
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**enabled** | **BOOLEAN** | Flag indicating whether the shared credential is enabled for the site's scans. | [optional]
+**id** | **Integer** | The identifier of the shared credential. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the shared credential. | [optional]
+**service** | **String** | The type of service the credential is configured to authenticate with. | [optional]
+
+
diff --git a/docs/SiteUpdateResource.md b/docs/SiteUpdateResource.md
new file mode 100644
index 0000000..8dee82d
--- /dev/null
+++ b/docs/SiteUpdateResource.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::SiteUpdateResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**description** | **String** | The site's description. | [optional]
+**engine_id** | **Integer** | The identifier of a scan engine. |
+**importance** | **String** | The site importance. |
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The site name. Name must be unique. |
+**scan_template_id** | **String** | The identifier of a scan template. |
+
+
diff --git a/docs/SmtpAlert.md b/docs/SmtpAlert.md
new file mode 100644
index 0000000..4c7c898
--- /dev/null
+++ b/docs/SmtpAlert.md
@@ -0,0 +1,19 @@
+# Rapid7VmConsole::SmtpAlert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**enabled** | **BOOLEAN** | Flag indicating the alert is enabled. |
+**enabled_scan_events** | [**ScanEvents**](ScanEvents.md) | Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`. | [optional]
+**enabled_vulnerability_events** | [**VulnerabilityEvents**](VulnerabilityEvents.md) | Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`. | [optional]
+**id** | **Integer** | The identifier of the alert. | [optional]
+**limit_alert_text** | **BOOLEAN** | Reports basic information in the alert, if enabled. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**maximum_alerts** | **Integer** | The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`. | [optional]
+**name** | **String** | The name of the alert. |
+**notification** | **String** | The type of alert. |
+**recipients** | **Array<String>** | The recipient list. At least one recipient must be specified. Each recipient must be a valid e-mail address. |
+**relay_server** | **String** | The SMTP server/relay to send messages through. |
+**sender_email_address** | **String** | The sender e-mail address that will appear in the from field. | [optional]
+
+
diff --git a/docs/SmtpSettings.md b/docs/SmtpSettings.md
new file mode 100644
index 0000000..2c7890e
--- /dev/null
+++ b/docs/SmtpSettings.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::SmtpSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**host** | **String** | The host to send to. | [optional]
+**port** | **Integer** | The port to send to. | [optional]
+**sender** | **String** | The sender to send from. | [optional]
+
+
diff --git a/docs/SnmpAlert.md b/docs/SnmpAlert.md
new file mode 100644
index 0000000..e0c9248
--- /dev/null
+++ b/docs/SnmpAlert.md
@@ -0,0 +1,17 @@
+# Rapid7VmConsole::SnmpAlert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**community** | **String** | The SNMP community name. |
+**enabled** | **BOOLEAN** | Flag indicating the alert is enabled. |
+**enabled_scan_events** | [**ScanEvents**](ScanEvents.md) | Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`. | [optional]
+**enabled_vulnerability_events** | [**VulnerabilityEvents**](VulnerabilityEvents.md) | Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`. | [optional]
+**id** | **Integer** | The identifier of the alert. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**maximum_alerts** | **Integer** | The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`. | [optional]
+**name** | **String** | The name of the alert. |
+**notification** | **String** | The type of alert. |
+**server** | **String** | The SNMP management server. |
+
+
diff --git a/docs/Software.md b/docs/Software.md
new file mode 100644
index 0000000..f3c847c
--- /dev/null
+++ b/docs/Software.md
@@ -0,0 +1,16 @@
+# Rapid7VmConsole::Software
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**configurations** | [**Array<Configuration>**](Configuration.md) | ${software.attributes.description} | [optional]
+**cpe** | [**SoftwareCpe**](SoftwareCpe.md) | The Common Platform Enumeration (CPE) of the software. | [optional]
+**description** | **String** | The description of the software. | [optional]
+**family** | **String** | The family of the software. | [optional]
+**id** | **Integer** | | [optional]
+**product** | **String** | The product of the software. | [optional]
+**type** | **String** | The version of the software. | [optional]
+**vendor** | **String** | The vendor of the software. | [optional]
+**version** | **String** | The version of the software. | [optional]
+
+
diff --git a/docs/SoftwareCpe.md b/docs/SoftwareCpe.md
new file mode 100644
index 0000000..23bc268
--- /dev/null
+++ b/docs/SoftwareCpe.md
@@ -0,0 +1,20 @@
+# Rapid7VmConsole::SoftwareCpe
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**edition** | **String** | Edition-related terms applied by the vendor to the product. | [optional]
+**language** | **String** | Defines the language supported in the user interface of the product being described. The format is of the language tag adheres to <a target=\"_blank\" href=\"https://tools.ietf.org/html/rfc5646\">RFC5646</a>. | [optional]
+**other** | **String** | Captures any other general descriptive or identifying information which is vendor- or product-specific and which does not logically fit in any other attribute value. | [optional]
+**part** | **String** | A single letter code that designates the particular platform part that is being identified. |
+**product** | **String** | the most common and recognizable title or name of the product. | [optional]
+**sw_edition** | **String** | Characterizes how the product is tailored to a particular market or class of end users. | [optional]
+**target_hw** | **String** | Characterize the instruction set architecture on which the product operates. | [optional]
+**target_sw** | **String** | Characterize the software computing environment within which the product operates. | [optional]
+**update** | **String** | Vendor-specific alphanumeric strings characterizing the particular update, service pack, or point release of the product. | [optional]
+**v2_2** | **String** | The full CPE string in the <a target=\"_blank\" href=\"https://cpe.mitre.org/files/cpe-specification_2.2.pdf\">CPE 2.2</a> format. | [optional]
+**v2_3** | **String** | The full CPE string in the <a target=\"_blank\" href=\"http://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir7695.pdf\">CPE 2.3</a> format. | [optional]
+**vendor** | **String** | The person or organization that manufactured or created the product. | [optional]
+**version** | **String** | Vendor-specific alphanumeric strings characterizing the particular release version of the product. | [optional]
+
+
diff --git a/docs/Solution.md b/docs/Solution.md
new file mode 100644
index 0000000..e6a623f
--- /dev/null
+++ b/docs/Solution.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::Solution
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**additional_information** | [**AdditionalInformation**](AdditionalInformation.md) | Additional information or resources that can assist in applying the remediation. | [optional]
+**applies_to** | **String** | The systems or software the solution applies to. | [optional]
+**estimate** | **String** | The estimated duration to apply the solution, in ISO 8601 format. For example: `\"PT5M\"`. | [optional]
+**id** | **String** | The identifier of the solution. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**steps** | [**Steps**](Steps.md) | The steps required to remediate the vulnerability. | [optional]
+**summary** | [**Summary**](Summary.md) | The summary of the solution. | [optional]
+**type** | **String** | The type of the solution. One of: `\"Configuration\"`, `\"Rollup patch\"`, `\"Patch\"` | [optional]
+
+
diff --git a/docs/SolutionMatch.md b/docs/SolutionMatch.md
new file mode 100644
index 0000000..62cdbca
--- /dev/null
+++ b/docs/SolutionMatch.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::SolutionMatch
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**check** | **String** | The identifier of the vulnerability check used to match the solution, if type is `check`. | [optional]
+**confidence** | **String** | The confidence of the matching process for the solution. | [optional]
+**fingerprint** | [**Fingerprint**](Fingerprint.md) | The fingerprint used to perform solution matching, if type is `operating-system`, `service`, or `software`. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**solution** | **String** | The identifier of the matched solution. | [optional]
+**type** | **String** | The means by which a solution was matched. | [optional]
+
+
diff --git a/docs/SonarCriteria.md b/docs/SonarCriteria.md
new file mode 100644
index 0000000..3251c4c
--- /dev/null
+++ b/docs/SonarCriteria.md
@@ -0,0 +1,8 @@
+# Rapid7VmConsole::SonarCriteria
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**filters** | [**Array<SonarCriterion>**](SonarCriterion.md) | The filters in the Sonar query. | [optional]
+
+
diff --git a/docs/SonarCriterion.md b/docs/SonarCriterion.md
new file mode 100644
index 0000000..491e495
--- /dev/null
+++ b/docs/SonarCriterion.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::SonarCriterion
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**days** | **Integer** | If the field is `scan-date-within-the-last`, the number of days to search against. | [optional]
+**lower** | **String** | If the field is `ip-address-range`, the lower limit of the search. | [optional]
+**search_domain** | **String** | If the field is `domain-contains`, the domain to search against. | [optional]
+**type** | **String** | The type of query to perform. | [optional]
+**upper** | **String** | If the field is `ip-address-range`, the upper limit of the search. | [optional]
+
+
diff --git a/docs/SonarQuery.md b/docs/SonarQuery.md
new file mode 100644
index 0000000..8e21ba7
--- /dev/null
+++ b/docs/SonarQuery.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::SonarQuery
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**criteria** | [**SonarCriteria**](SonarCriteria.md) | The search criteria used to search for assets from the Sonar API. | [optional]
+**id** | **Integer** | The identifier of the Sonar query. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The name of the Sonar query. | [optional]
+
+
diff --git a/docs/StaticSite.md b/docs/StaticSite.md
new file mode 100644
index 0000000..e39e0fa
--- /dev/null
+++ b/docs/StaticSite.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::StaticSite
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**excluded_asset_groups** | [**ExcludedAssetGroups**](ExcludedAssetGroups.md) | Assets associated with these asset groups will be excluded from the site's scan. | [optional]
+**excluded_targets** | [**ExcludedScanTargets**](ExcludedScanTargets.md) | Addresses to be excluded from the site's scan. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+**included_asset_groups** | [**IncludedAssetGroups**](IncludedAssetGroups.md) | Assets associated with these asset groups will be included in the site's scan. | [optional]
+**included_targets** | [**IncludedScanTargets**](IncludedScanTargets.md) | Addresses to be included in the site's scan. At least one address must be specified in a static site. Each address is a string that can represent either a hostname, ipv4 address, ipv4 address range, ipv6 address, or CIDR notation. | [optional]
+
+
diff --git a/docs/Steps.md b/docs/Steps.md
new file mode 100644
index 0000000..cc956b6
--- /dev/null
+++ b/docs/Steps.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::Steps
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**html** | **String** | Textual representation of the content. | [optional]
+**text** | **String** | Textual representation of the content. | [optional]
+
+
diff --git a/docs/Submission.md b/docs/Submission.md
new file mode 100644
index 0000000..828aea6
--- /dev/null
+++ b/docs/Submission.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::Submission
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**comment** | **String** | A comment from the submitter as to why the exception was submitted. | [optional]
+**date** | **String** | The date and time the vulnerability exception was submitted. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The login name of the user that submitted the vulnerability exception. | [optional]
+**reason** | **String** | The reason the vulnerability exception was submitted. One of: `\"False Positive\"`, `\"Compensating Control\"`, `\"Acceptable Use\"`, `\"Acceptable Risk\"`, `\"Other\"` | [optional]
+**user** | **Integer** | The identifier of the user that submitted the vulnerability exception. | [optional]
+
+
diff --git a/docs/Summary.md b/docs/Summary.md
new file mode 100644
index 0000000..46c4eca
--- /dev/null
+++ b/docs/Summary.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::Summary
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**html** | **String** | Textual representation of the content. | [optional]
+**text** | **String** | Textual representation of the content. | [optional]
+
+
diff --git a/docs/SwaggerDiscoverySearchCriteriaFilter.md b/docs/SwaggerDiscoverySearchCriteriaFilter.md
new file mode 100644
index 0000000..6b9e808
--- /dev/null
+++ b/docs/SwaggerDiscoverySearchCriteriaFilter.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::SwaggerDiscoverySearchCriteriaFilter
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**field** | **String** | The filter field for the search criteria. | [optional]
+**lower** | **String** | The lower value to match in a range criteria. | [optional]
+**operator** | **String** | The operator on how to match the search criteria. | [optional]
+**upper** | **String** | The upper value to match in a range criteria. | [optional]
+**value** | **String** | The single value to match using the operator. | [optional]
+**values** | **Array<String>** | An array of values to match using the operator. | [optional]
+
+
diff --git a/docs/SwaggerSearchCriteriaFilter.md b/docs/SwaggerSearchCriteriaFilter.md
new file mode 100644
index 0000000..4acbb08
--- /dev/null
+++ b/docs/SwaggerSearchCriteriaFilter.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::SwaggerSearchCriteriaFilter
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**field** | **String** | The filter field for the search criteria. | [optional]
+**lower** | **String** | The lower value to match in a range criteria. | [optional]
+**operator** | **String** | The operator on how to match the search criteria. | [optional]
+**upper** | **String** | The upper value to match in a range criteria. | [optional]
+**value** | **String** | The single value to match using the operator. | [optional]
+**values** | **Array<String>** | An array of values to match using the operator. | [optional]
+
+
diff --git a/docs/SyslogAlert.md b/docs/SyslogAlert.md
new file mode 100644
index 0000000..4efdaca
--- /dev/null
+++ b/docs/SyslogAlert.md
@@ -0,0 +1,16 @@
+# Rapid7VmConsole::SyslogAlert
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**enabled** | **BOOLEAN** | Flag indicating the alert is enabled. |
+**enabled_scan_events** | [**ScanEvents**](ScanEvents.md) | Allows the user to specify which scan events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledScanEvents`. | [optional]
+**enabled_vulnerability_events** | [**VulnerabilityEvents**](VulnerabilityEvents.md) | Allows the user to specify which vulnerability result events generate an alert. Default values will be chosen if property is not specified as apart of the request. The default values are documented in the properties of `enabledVulnerabilityEvents`. | [optional]
+**id** | **Integer** | The identifier of the alert. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**maximum_alerts** | **Integer** | The maximum number of alerts that will be issued. To disable maximum alerts, omit the property in the request or specify the property with a value of `null`. | [optional]
+**name** | **String** | The name of the alert. |
+**notification** | **String** | The type of alert. |
+**server** | **String** | The Syslog server to send messages to. |
+
+
diff --git a/docs/Tag.md b/docs/Tag.md
new file mode 100644
index 0000000..66d1a72
--- /dev/null
+++ b/docs/Tag.md
@@ -0,0 +1,16 @@
+# Rapid7VmConsole::Tag
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**color** | **String** | The color to use when rendering the tag in a user interface. | [optional]
+**created** | **String** | The date and time the tag was created. | [optional]
+**id** | **Integer** | The identifier of the tag. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**name** | **String** | The name (label) of the tab. |
+**risk_modifier** | **Float** | The amount to adjust risk of an asset tagged with this tag. | [optional]
+**search_criteria** | [**SearchCriteria**](SearchCriteria.md) | | [optional]
+**source** | **String** | The source of the tag. | [optional]
+**type** | **String** | The type of the tag. |
+
+
diff --git a/docs/TagApi.md b/docs/TagApi.md
new file mode 100644
index 0000000..e7dd334
--- /dev/null
+++ b/docs/TagApi.md
@@ -0,0 +1,1060 @@
+# Rapid7VmConsole::TagApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_tag**](TagApi.md#create_tag) | **POST** /api/3/tags | Tags
+[**delete_tag**](TagApi.md#delete_tag) | **DELETE** /api/3/tags/{id} | Tag
+[**get_tag**](TagApi.md#get_tag) | **GET** /api/3/tags/{id} | Tag
+[**get_tag_asset_groups**](TagApi.md#get_tag_asset_groups) | **GET** /api/3/tags/{id}/asset_groups | Tag Asset Groups
+[**get_tag_search_criteria**](TagApi.md#get_tag_search_criteria) | **GET** /api/3/tags/{id}/search_criteria | Tag Search Criteria
+[**get_tagged_assets**](TagApi.md#get_tagged_assets) | **GET** /api/3/tags/{id}/assets | Tag Assets
+[**get_tagged_sites**](TagApi.md#get_tagged_sites) | **GET** /api/3/tags/{id}/sites | Tag Sites
+[**get_tags**](TagApi.md#get_tags) | **GET** /api/3/tags | Tags
+[**remove_tag_search_criteria**](TagApi.md#remove_tag_search_criteria) | **DELETE** /api/3/tags/{id}/search_criteria | Tag Search Criteria
+[**remove_tagged_sites**](TagApi.md#remove_tagged_sites) | **DELETE** /api/3/tags/{id}/sites | Tag Sites
+[**set_tagged_asset_groups**](TagApi.md#set_tagged_asset_groups) | **PUT** /api/3/tags/{id}/asset_groups | Tag Asset Groups
+[**set_tagged_sites**](TagApi.md#set_tagged_sites) | **PUT** /api/3/tags/{id}/sites | Tag Sites
+[**tag_asset**](TagApi.md#tag_asset) | **PUT** /api/3/tags/{id}/assets/{assetId} | Tag Asset
+[**tag_asset_group**](TagApi.md#tag_asset_group) | **PUT** /api/3/tags/{id}/asset_groups/{assetGroupId} | Tag Asset Group
+[**tag_site**](TagApi.md#tag_site) | **PUT** /api/3/tags/{id}/sites/{siteId} | Tag Site
+[**untag_all_asset_groups**](TagApi.md#untag_all_asset_groups) | **DELETE** /api/3/tags/{id}/asset_groups | Tag Asset Groups
+[**untag_asset**](TagApi.md#untag_asset) | **DELETE** /api/3/tags/{id}/assets/{assetId} | Tag Asset
+[**untag_asset_group**](TagApi.md#untag_asset_group) | **DELETE** /api/3/tags/{id}/asset_groups/{assetGroupId} | Tag Asset Group
+[**untag_site**](TagApi.md#untag_site) | **DELETE** /api/3/tags/{id}/sites/{siteId} | Tag Site
+[**update_tag**](TagApi.md#update_tag) | **PUT** /api/3/tags/{id} | Tag
+[**update_tag_search_criteria**](TagApi.md#update_tag_search_criteria) | **PUT** /api/3/tags/{id}/search_criteria | Tag Search Criteria
+
+
+# **create_tag**
+> ReferenceWithTagIDLink create_tag(opts)
+
+Tags
+
+Creates a new tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+opts = {
+ param0: Rapid7VmConsole::Tag.new # Tag | The details of the tag.
+}
+
+begin
+ #Tags
+ result = api_instance.create_tag(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->create_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**Tag**](Tag.md)| The details of the tag. | [optional]
+
+### Return type
+
+[**ReferenceWithTagIDLink**](ReferenceWithTagIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_tag**
+> Links delete_tag(id)
+
+Tag
+
+Deletes the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag
+ result = api_instance.delete_tag(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->delete_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_tag**
+> Tag get_tag(id)
+
+Tag
+
+Returns a tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag
+ result = api_instance.get_tag(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->get_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Tag**](Tag.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_tag_asset_groups**
+> ReferencesWithAssetGroupIDLink get_tag_asset_groups(id)
+
+Tag Asset Groups
+
+Returns the asset groups associated with the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag Asset Groups
+ result = api_instance.get_tag_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->get_tag_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**ReferencesWithAssetGroupIDLink**](ReferencesWithAssetGroupIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_tag_search_criteria**
+> SearchCriteria get_tag_search_criteria(id)
+
+Tag Search Criteria
+
+Returns the search criteria associated with the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag Search Criteria
+ result = api_instance.get_tag_search_criteria(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->get_tag_search_criteria: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**SearchCriteria**](SearchCriteria.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_tagged_assets**
+> TaggedAssetReferences get_tagged_assets(id)
+
+Tag Assets
+
+Returns the assets tagged with a tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag Assets
+ result = api_instance.get_tagged_assets(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->get_tagged_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**TaggedAssetReferences**](TaggedAssetReferences.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_tagged_sites**
+> ReferencesWithSiteIDLink get_tagged_sites(id)
+
+Tag Sites
+
+Returns the sites associated with the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag Sites
+ result = api_instance.get_tagged_sites(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->get_tagged_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**ReferencesWithSiteIDLink**](ReferencesWithSiteIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_tags**
+> PageOfTag get_tags(opts)
+
+Tags
+
+Returns all tags.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+opts = {
+ name: "name_example", # String | name
+ type: "type_example", # String | type
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Tags
+ result = api_instance.get_tags(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->get_tags: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **name** | **String**| name | [optional]
+ **type** | **String**| type | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfTag**](PageOfTag.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_tag_search_criteria**
+> Links remove_tag_search_criteria(id)
+
+Tag Search Criteria
+
+Removes the search criteria associated with the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag Search Criteria
+ result = api_instance.remove_tag_search_criteria(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->remove_tag_search_criteria: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_tagged_sites**
+> Links remove_tagged_sites(id)
+
+Tag Sites
+
+Removes the associations between the tag and the sites.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag Sites
+ result = api_instance.remove_tagged_sites(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->remove_tagged_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_tagged_asset_groups**
+> Links set_tagged_asset_groups(id, opts)
+
+Tag Asset Groups
+
+Sets the asset groups associated with the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The asset groups to add to the tag.
+}
+
+begin
+ #Tag Asset Groups
+ result = api_instance.set_tagged_asset_groups(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->set_tagged_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **param1** | **Array<Integer>**| The asset groups to add to the tag. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_tagged_sites**
+> Links set_tagged_sites(id, opts)
+
+Tag Sites
+
+Sets the sites associated with the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The sites to add to the tag.
+}
+
+begin
+ #Tag Sites
+ result = api_instance.set_tagged_sites(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->set_tagged_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **param1** | **Array<Integer>**| The sites to add to the tag. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **tag_asset**
+> Links tag_asset(id, asset_id)
+
+Tag Asset
+
+Adds an asset to the tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Tag Asset
+ result = api_instance.tag_asset(id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->tag_asset: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **tag_asset_group**
+> Links tag_asset_group(id, asset_group_id)
+
+Tag Asset Group
+
+Adds an asset group to this tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+asset_group_id = 56 # Integer | The asset group identifier.
+
+
+begin
+ #Tag Asset Group
+ result = api_instance.tag_asset_group(id, asset_group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->tag_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **asset_group_id** | **Integer**| The asset group identifier. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **tag_site**
+> Links tag_site(id, site_id)
+
+Tag Site
+
+Adds a site to this tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+site_id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Tag Site
+ result = api_instance.tag_site(id, site_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->tag_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **site_id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **untag_all_asset_groups**
+> Links untag_all_asset_groups(id)
+
+Tag Asset Groups
+
+Removes the associations between the tag and all asset groups.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+
+begin
+ #Tag Asset Groups
+ result = api_instance.untag_all_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->untag_all_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **untag_asset**
+> Links untag_asset(id, asset_id)
+
+Tag Asset
+
+Removes an asset from the tag. Note: The asset must be added through the asset or tag, if the asset is added using a site, asset group, or search criteria this will not remove the asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+asset_id = 789 # Integer | The identifier of the asset.
+
+
+begin
+ #Tag Asset
+ result = api_instance.untag_asset(id, asset_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->untag_asset: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **asset_id** | **Integer**| The identifier of the asset. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **untag_asset_group**
+> Links untag_asset_group(id, asset_group_id)
+
+Tag Asset Group
+
+Removes an asset group from this tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+asset_group_id = 56 # Integer | The asset group identifier.
+
+
+begin
+ #Tag Asset Group
+ result = api_instance.untag_asset_group(id, asset_group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->untag_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **asset_group_id** | **Integer**| The asset group identifier. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **untag_site**
+> Links untag_site(id, site_id)
+
+Tag Site
+
+Removes a site from this tag.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+site_id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Tag Site
+ result = api_instance.untag_site(id, site_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->untag_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **site_id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_tag**
+> Links update_tag(id, opts)
+
+Tag
+
+Updates the details of a tag. For more information about accepted fields for the tag search criteria see the PUT /search_criteria documentation.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+opts = {
+ param0: Rapid7VmConsole::Tag.new # Tag | The details of the tag.
+}
+
+begin
+ #Tag
+ result = api_instance.update_tag(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->update_tag: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **param0** | [**Tag**](Tag.md)| The details of the tag. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_tag_search_criteria**
+> Links update_tag_search_criteria(id, opts)
+
+Tag Search Criteria
+
+Updates the search criteria associated with the tag. The following table outlines the search criteria fields and the available operators: | Field | Operators | | ---------- | ---------------- | | asset name | is,is not,starts with,ends with,contains,does not contain,is empty,is not empty,is like,not like | | asset risk score | is,is not,in range,greater than,less than | | container image | is,is not,starts with,ends with,contains,does not contain,is like,not like | | container status | is,is not | | containers | are | | CVE IDs | is,is not,contains,does not contain | | CVSS Access Complexity | is,is not | | CVSS Authentication Required | is,is not | | CVSS Access Vector | is,is not | | CVSS Availability Impact | is,is not | | CVSS Confidentiality Impact | is,is not | | CVSS Integrity Impact | is,is not | | CVSS Access Complexity | is,is not | | host type | in,not in | | asset IP Address | is,is not,in range,not in range,is like,not like | | asset IP Address Type | in,not in | | asset last scan date | is on or before,is on or after,is between,is earlier than,is within the last | | mobile device last sync time | is within the last,is earlier than | | open ports | is,is not,in range | | asset operating system | contains,does not contain,is empty,is not empty | | asset alternate address type | in | | asset PCI compliance | is | | asset service name | contains,does not contain | | asset site ID | in,not in | | asset software | contains,does not contain| | asset Criticality tag | is,is not,is greater than,is less than,is applied,is not applied | | asset Custom tag | is,is not,starts with, ends with,contains,does not contain,is applied,is not applied | | asset Location tag | is,is not,starts with,ends with,contains,does not contain,is applied,is not applied | | asset Owner tag | is,is not,starts with,ends with,contains,does not contain,is applied,is not applied | | asset vulnerability validated status | are | | asset VAsset cluster | is,is not,contains,does not contain,starts with | | asset VAsset datacenter | is,is not | | asset VAsset host name | is,is not,contains,does not contain,starts with | | asset VAsset power state | in,not in | | asset VAsset resource pool path | contains,does not contain | | asset vulnerability assessed | is on or before,is on or after,is between,is earlier than,is within the last | | asset vulnerability category | is,is not,starts with,ends with,contains,does not contain| | asset vulnerability CVSS score | is,is not,in range,is greater than,is less than | | asset vulnerability exposures | includes,does not include | | asset vulnerability title | contains,does not contain,is,is not,starts with,ends with | The following table outlines the operators and the values associated with them: | Operator | Values | | -------- | ------ | | are | A single string property named \"value\" | | is between | A number property named \"lower\" and a number property named \"upper\" | | contains | A single string property named \"value\" | | does not contain | A single string property named \"value\" | | is earlier than | A single number property named \"value\" | | ends with | A single string property named \"value\" | | is greater than | A single number property named \"value\" | | in | An array property named \"values\" | | not in | An array property named \"values\" | | in range | A number property named \"lower\" and a number property named \"upper\" | | includes | An array property named \"values\" | | is | A single string property named \"value\" | | is not | A single string property named \"value\" | | is applied | No value | | is not applied | No value | | is empty | No value | | is not empty | No value | | less than | A single number property named \"value\" | | like | A single string property named \"value\" | | not contains | A single string property named \"value\" | | not in range | A number property named \"lower\" and a number property named \"upper\" | | not like | A single string property named \"value\" | | is on or after | A single string property named \"value\", which is the date in ISO8601 format (yyyy-MM-dd) | | is on or before | A single string property named \"value\", which is the date in ISO8601 format (yyyy-MM-dd) | | starts with | A single string property named \"value\" | | is within the last | A single number property named \"value\" | The following fields have enumerated values: | Field | Acceptable Values | | ----- | ----------------- | | containers | 0=present, 1=not present | | asset vulnerability validated status | 0=present, 1=not present | | asset PCI compliance | 0=fail, 1=pass | | asset alternate address type | 0=IPv4, 1=IPv6 | | asset IP Address Type | 0=IPv4, 1=IPv6 | | host type | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | CVSS Access Complexity | L=Low, M=Medium, H=High | | CVSS Integrity Impact | N=None, P=Partial, C=Complete | | CVSS Confidentiality Impact | N=None, P=Partial, C=Complete | | CVSS Availability Impact | N=None, P=Partial, C=Complete | | CVSS Access Vector | L=Local, A=Adjacent, N=Network | | CVSS Authentication Required | N=None, S=Single, M=Multiple | | CVSS Access Complexity | L=Low, M=Medium, H=High | | container status | created, running, paused, restarting, exited, dead, unknown |
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::TagApi.new
+
+id = 56 # Integer | The identifier of the tag.
+
+opts = {
+ param1: Rapid7VmConsole::SearchCriteria.new # SearchCriteria | The details of the search criteria.
+}
+
+begin
+ #Tag Search Criteria
+ result = api_instance.update_tag_search_criteria(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling TagApi->update_tag_search_criteria: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the tag. |
+ **param1** | [**SearchCriteria**](SearchCriteria.md)| The details of the search criteria. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/TagAssetSource.md b/docs/TagAssetSource.md
new file mode 100644
index 0000000..b03a61a
--- /dev/null
+++ b/docs/TagAssetSource.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::TagAssetSource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | If the `source` is `\"asset-group\"` or `\"site\"` the identifier of the asset group or site that causes the tag to apply to the asset. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**source** | **String** | The source by which a tag applies to an asset. | [optional]
+
+
diff --git a/docs/TagLink.md b/docs/TagLink.md
new file mode 100644
index 0000000..c432c95
--- /dev/null
+++ b/docs/TagLink.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::TagLink
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the tagged asset. | [optional]
+**sources** | **Array<String>** | The source(s) by which a tag is applied to an asset. | [optional]
+
+
diff --git a/docs/TaggedAssetReferences.md b/docs/TaggedAssetReferences.md
new file mode 100644
index 0000000..be32f70
--- /dev/null
+++ b/docs/TaggedAssetReferences.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::TaggedAssetReferences
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**resources** | [**Array<TagLink>**](TagLink.md) | The identifiers of the associated resources. | [optional]
+
+
diff --git a/docs/Telnet.md b/docs/Telnet.md
new file mode 100644
index 0000000..b6ae1a2
--- /dev/null
+++ b/docs/Telnet.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::Telnet
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**character_set** | **String** | The character set to use. | [optional]
+**failed_login_regex** | **String** | Regular expression to match a failed login response. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**login_regex** | **String** | Regular expression to match a login response. | [optional]
+**password_prompt_regex** | **String** | Regular expression to match a password prompt. | [optional]
+**questionable_login_regex** | **String** | Regular expression to match a potential false negative login response. | [optional]
+
+
diff --git a/docs/TokenResource.md b/docs/TokenResource.md
new file mode 100644
index 0000000..c5f5ab2
--- /dev/null
+++ b/docs/TokenResource.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::TokenResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**key** | **String** | The two-factor authentication token seed (key). | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/UnauthorizedError.md b/docs/UnauthorizedError.md
new file mode 100644
index 0000000..4107790
--- /dev/null
+++ b/docs/UnauthorizedError.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::UnauthorizedError
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**message** | **String** | The messages indicating the cause or reason for failure. | [optional]
+**status** | **String** | The HTTP status code for the error (same as in the HTTP response). |
+
+
diff --git a/docs/UniqueId.md b/docs/UniqueId.md
new file mode 100644
index 0000000..ed4fc55
--- /dev/null
+++ b/docs/UniqueId.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::UniqueId
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **String** | The unique identifier. |
+**source** | **String** | The source of the unique identifier. | [optional]
+
+
diff --git a/docs/UpdateId.md b/docs/UpdateId.md
new file mode 100644
index 0000000..5f865f9
--- /dev/null
+++ b/docs/UpdateId.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::UpdateId
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**product_id** | **String** | Product update identifier. | [optional]
+**version_id** | **String** | Version update identifier. | [optional]
+
+
diff --git a/docs/UpdateInfo.md b/docs/UpdateInfo.md
new file mode 100644
index 0000000..9e76b1d
--- /dev/null
+++ b/docs/UpdateInfo.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::UpdateInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**content** | **String** | The most recent content update. | [optional]
+**content_partial** | **String** | The most recent, partially-applied (in-memory), content update. | [optional]
+**id** | [**UpdateId**](UpdateId.md) | Details of update identifiers. | [optional]
+**product** | **String** | The most recent product update. | [optional]
+
+
diff --git a/docs/UpdateSettings.md b/docs/UpdateSettings.md
new file mode 100644
index 0000000..f6c1a19
--- /dev/null
+++ b/docs/UpdateSettings.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::UpdateSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**content_auto_update** | **BOOLEAN** | Whether automatic content updates are enabled. | [optional]
+**enabled** | **BOOLEAN** | Whether updates are enabled. | [optional]
+**product_auto_update** | **BOOLEAN** | Whether automatic product updates are enabled. | [optional]
+
+
diff --git a/docs/User.md b/docs/User.md
new file mode 100644
index 0000000..10345c7
--- /dev/null
+++ b/docs/User.md
@@ -0,0 +1,19 @@
+# Rapid7VmConsole::User
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**authentication** | [**CreateAuthenticationSource**](CreateAuthenticationSource.md) | The details of the authentication source used to authenticate the user. | [optional]
+**email** | **String** | The email address of the user. | [optional]
+**enabled** | **BOOLEAN** | Whether the user account is enabled. Defaults to `true`. | [optional]
+**id** | **Integer** | The identifier of the user. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**locale** | [**LocalePreferences**](LocalePreferences.md) | The locale and language preferences for the user. | [optional]
+**locked** | **BOOLEAN** | Whether the user account is locked (exceeded maximum password retry attempts). | [optional]
+**login** | **String** | The login name of the user. |
+**name** | **String** | The full name of the user. |
+**password** | **String** | The password to use for the user. |
+**password_reset_on_login** | **BOOLEAN** | Whether to require a reset of the user's password upon first login. Defaults to `false`. | [optional]
+**role** | [**UserCreateRole**](UserCreateRole.md) | The privileges and role to assign the user. |
+
+
diff --git a/docs/UserAccount.md b/docs/UserAccount.md
new file mode 100644
index 0000000..b4a2c6c
--- /dev/null
+++ b/docs/UserAccount.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::UserAccount
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**full_name** | **String** | The full name of the user account. | [optional]
+**id** | **Integer** | The identifier of the user account. | [optional]
+**name** | **String** | The name of the user account. |
+
+
diff --git a/docs/UserApi.md b/docs/UserApi.md
new file mode 100644
index 0000000..408146a
--- /dev/null
+++ b/docs/UserApi.md
@@ -0,0 +1,1520 @@
+# Rapid7VmConsole::UserApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**add_user_asset_group**](UserApi.md#add_user_asset_group) | **PUT** /api/3/users/{id}/asset_groups/{assetGroupId} | Asset Group Access
+[**add_user_site**](UserApi.md#add_user_site) | **PUT** /api/3/users/{id}/sites/{siteId} | Site Access
+[**create_user**](UserApi.md#create_user) | **POST** /api/3/users | Users
+[**delete_role**](UserApi.md#delete_role) | **DELETE** /api/3/roles/{id} | Role
+[**get_authentication_source**](UserApi.md#get_authentication_source) | **GET** /api/3/authentication_sources/{id} | Authentication Source
+[**get_authentication_source_users**](UserApi.md#get_authentication_source_users) | **GET** /api/3/authentication_sources/{id}/users | Authentication Source Users
+[**get_authentication_sources**](UserApi.md#get_authentication_sources) | **GET** /api/3/authentication_sources | Authentication Sources
+[**get_privilege**](UserApi.md#get_privilege) | **GET** /api/3/privileges/{id} | Privilege
+[**get_privileges**](UserApi.md#get_privileges) | **GET** /api/3/privileges | Privileges
+[**get_role**](UserApi.md#get_role) | **GET** /api/3/roles/{id} | Role
+[**get_role_users**](UserApi.md#get_role_users) | **GET** /api/3/roles/{id}/users | Users With Role
+[**get_roles**](UserApi.md#get_roles) | **GET** /api/3/roles | Roles
+[**get_two_factor_authentication_key**](UserApi.md#get_two_factor_authentication_key) | **GET** /api/3/users/{id}/2FA | Two-Factor Authentication
+[**get_user**](UserApi.md#get_user) | **GET** /api/3/users/{id} | User
+[**get_user_asset_groups**](UserApi.md#get_user_asset_groups) | **GET** /api/3/users/{id}/asset_groups | Asset Groups Access
+[**get_user_privileges**](UserApi.md#get_user_privileges) | **GET** /api/3/users/{id}/privileges | User Privileges
+[**get_user_sites**](UserApi.md#get_user_sites) | **GET** /api/3/users/{id}/sites | Sites Access
+[**get_users**](UserApi.md#get_users) | **GET** /api/3/users | Users
+[**get_users_with_privilege**](UserApi.md#get_users_with_privilege) | **GET** /api/3/privileges/{id}/users | Users With Privilege
+[**regenerate_two_factor_authentication**](UserApi.md#regenerate_two_factor_authentication) | **POST** /api/3/users/{id}/2FA | Two-Factor Authentication
+[**remove_all_user_asset_groups**](UserApi.md#remove_all_user_asset_groups) | **DELETE** /api/3/users/{id}/asset_groups | Asset Groups Access
+[**remove_all_user_sites**](UserApi.md#remove_all_user_sites) | **DELETE** /api/3/users/{id}/sites | Sites Access
+[**remove_user_asset_group**](UserApi.md#remove_user_asset_group) | **DELETE** /api/3/users/{id}/asset_groups/{assetGroupId} | Asset Group Access
+[**remove_user_site**](UserApi.md#remove_user_site) | **DELETE** /api/3/users/{id}/sites/{siteId} | Site Access
+[**reset_password**](UserApi.md#reset_password) | **PUT** /api/3/users/{id}/password | Password Reset
+[**set_two_factor_authentication**](UserApi.md#set_two_factor_authentication) | **PUT** /api/3/users/{id}/2FA | Two-Factor Authentication
+[**set_user_asset_groups**](UserApi.md#set_user_asset_groups) | **PUT** /api/3/users/{id}/asset_groups | Asset Groups Access
+[**set_user_sites**](UserApi.md#set_user_sites) | **PUT** /api/3/users/{id}/sites | Sites Access
+[**unlock_user**](UserApi.md#unlock_user) | **DELETE** /api/3/users/{id}/lock | Unlock Account
+[**update_role**](UserApi.md#update_role) | **PUT** /api/3/roles/{id} | Role
+[**update_user**](UserApi.md#update_user) | **PUT** /api/3/users/{id} | User
+
+
+# **add_user_asset_group**
+> Links add_user_asset_group(id, asset_group_id)
+
+Asset Group Access
+
+Grants the user access to the asset group. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+asset_group_id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Access
+ result = api_instance.add_user_asset_group(id, asset_group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->add_user_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **asset_group_id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **add_user_site**
+> Links add_user_site(id, site_id)
+
+Site Access
+
+Grants the user access to the site. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+site_id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Access
+ result = api_instance.add_user_site(id, site_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->add_user_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **site_id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **create_user**
+> CreatedReferenceUserIDLink create_user(opts)
+
+Users
+
+Creates a new user. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+opts = {
+ param0: Rapid7VmConsole::User.new # User | The details of the user.
+}
+
+begin
+ #Users
+ result = api_instance.create_user(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->create_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**User**](User.md)| The details of the user. | [optional]
+
+### Return type
+
+[**CreatedReferenceUserIDLink**](CreatedReferenceUserIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_role**
+> Links delete_role(id)
+
+Role
+
+Removes a role with the specified identifier. The role must not be built-in and cannot be currently assigned to any users.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = "id_example" # String | The identifier of the role.
+
+
+begin
+ #Role
+ result = api_instance.delete_role(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->delete_role: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the role. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_authentication_source**
+> AuthenticationSource get_authentication_source(id)
+
+Authentication Source
+
+Returns the details for an authentication source.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the authentication source.
+
+
+begin
+ #Authentication Source
+ result = api_instance.get_authentication_source(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_authentication_source: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the authentication source. |
+
+### Return type
+
+[**AuthenticationSource**](AuthenticationSource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_authentication_source_users**
+> ReferencesWithUserIDLink get_authentication_source_users(id)
+
+Authentication Source Users
+
+Returns hypermedia links for the user accounts that use the authentication source to authenticate.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the authentication source.
+
+
+begin
+ #Authentication Source Users
+ result = api_instance.get_authentication_source_users(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_authentication_source_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the authentication source. |
+
+### Return type
+
+[**ReferencesWithUserIDLink**](ReferencesWithUserIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_authentication_sources**
+> ResourcesAuthenticationSource get_authentication_sources
+
+Authentication Sources
+
+Returns all available sources of authentication for users.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+begin
+ #Authentication Sources
+ result = api_instance.get_authentication_sources
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_authentication_sources: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesAuthenticationSource**](ResourcesAuthenticationSource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_privilege**
+> Links get_privilege(id)
+
+Privilege
+
+Returns the details for a privilege.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = "id_example" # String | The identifier of the privilege.
+
+
+begin
+ #Privilege
+ result = api_instance.get_privilege(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_privilege: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the privilege. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_privileges**
+> Privileges get_privileges
+
+Privileges
+
+Returns all privileges that may be granted to a role.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+begin
+ #Privileges
+ result = api_instance.get_privileges
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_privileges: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Privileges**](Privileges.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_role**
+> Role get_role(id)
+
+Role
+
+Retrieves the details of a role.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = "id_example" # String | The identifier of the role.
+
+
+begin
+ #Role
+ result = api_instance.get_role(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_role: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the role. |
+
+### Return type
+
+[**Role**](Role.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_role_users**
+> ReferencesWithUserIDLink get_role_users(id)
+
+Users With Role
+
+Returns hypermedia links for the the users currently assigned a role.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = "id_example" # String | The identifier of the role.
+
+
+begin
+ #Users With Role
+ result = api_instance.get_role_users(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_role_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the role. |
+
+### Return type
+
+[**ReferencesWithUserIDLink**](ReferencesWithUserIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_roles**
+> ResourcesRole get_roles
+
+Roles
+
+Returns all roles for which users may be assigned.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+begin
+ #Roles
+ result = api_instance.get_roles
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_roles: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ResourcesRole**](ResourcesRole.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_two_factor_authentication_key**
+> TokenResource get_two_factor_authentication_key(id)
+
+Two-Factor Authentication
+
+Retrieves the current authentication token seed (key) for the user, if configured.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Two-Factor Authentication
+ result = api_instance.get_two_factor_authentication_key(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_two_factor_authentication_key: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**TokenResource**](TokenResource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_user**
+> User get_user(id)
+
+User
+
+Returns the details for a user.Global Administrator, Current User
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #User
+ result = api_instance.get_user(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**User**](User.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_user_asset_groups**
+> ReferencesWithAssetGroupIDLink get_user_asset_groups(id)
+
+Asset Groups Access
+
+Returns the asset groups to which the user has access.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Asset Groups Access
+ result = api_instance.get_user_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_user_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**ReferencesWithAssetGroupIDLink**](ReferencesWithAssetGroupIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_user_privileges**
+> Privileges get_user_privileges(id)
+
+User Privileges
+
+Returns the privileges granted to the user by their role. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #User Privileges
+ result = api_instance.get_user_privileges(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_user_privileges: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**Privileges**](Privileges.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_user_sites**
+> ReferencesWithSiteIDLink get_user_sites(id)
+
+Sites Access
+
+Returns the sites to which the user has access.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Sites Access
+ result = api_instance.get_user_sites(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_user_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**ReferencesWithSiteIDLink**](ReferencesWithSiteIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_users**
+> PageOfUser get_users(opts)
+
+Users
+
+Returns all defined users. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Users
+ result = api_instance.get_users(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_users: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfUser**](PageOfUser.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_users_with_privilege**
+> ReferencesWithUserIDLink get_users_with_privilege(id)
+
+Users With Privilege
+
+Returns hypermedia links for all users granted the specified privilege by their role.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = "id_example" # String | The identifier of the privilege.
+
+
+begin
+ #Users With Privilege
+ result = api_instance.get_users_with_privilege(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->get_users_with_privilege: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the privilege. |
+
+### Return type
+
+[**ReferencesWithUserIDLink**](ReferencesWithUserIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **regenerate_two_factor_authentication**
+> TokenResource regenerate_two_factor_authentication(id)
+
+Two-Factor Authentication
+
+Regenerates a new authentication token seed (key) and updates it for the user. This key may be then be used in the appropriate 2FA authenticator.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Two-Factor Authentication
+ result = api_instance.regenerate_two_factor_authentication(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->regenerate_two_factor_authentication: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**TokenResource**](TokenResource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_all_user_asset_groups**
+> Links remove_all_user_asset_groups(id)
+
+Asset Groups Access
+
+Revokes access to all asset groups from the user.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Asset Groups Access
+ result = api_instance.remove_all_user_asset_groups(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->remove_all_user_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_all_user_sites**
+> Links remove_all_user_sites(id)
+
+Sites Access
+
+Revokes access to all sites from the user.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Sites Access
+ result = api_instance.remove_all_user_sites(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->remove_all_user_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_user_asset_group**
+> Links remove_user_asset_group(id, asset_group_id)
+
+Asset Group Access
+
+Grants the user access to the asset group. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+asset_group_id = 56 # Integer | The identifier of the asset group.
+
+
+begin
+ #Asset Group Access
+ result = api_instance.remove_user_asset_group(id, asset_group_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->remove_user_asset_group: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **asset_group_id** | **Integer**| The identifier of the asset group. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_user_site**
+> Links remove_user_site(id, site_id)
+
+Site Access
+
+Grants the user access to the site. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+site_id = 56 # Integer | The identifier of the site.
+
+
+begin
+ #Site Access
+ result = api_instance.remove_user_site(id, site_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->remove_user_site: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **site_id** | **Integer**| The identifier of the site. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **reset_password**
+> Links reset_password(id, opts)
+
+Password Reset
+
+Changes the password for the user. Users may only change their own password.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+opts = {
+ param1: "param1_example" # String | The new password to set.
+}
+
+begin
+ #Password Reset
+ result = api_instance.reset_password(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->reset_password: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **param1** | **String**| The new password to set. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_two_factor_authentication**
+> Links set_two_factor_authentication(id, opts)
+
+Two-Factor Authentication
+
+Sets the authentication token seed (key) for the user. This key may be then be used in the appropriate 2FA authenticator.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+opts = {
+ param1: "param1_example" # String | The authentication token seed (key) to use for the user.
+}
+
+begin
+ #Two-Factor Authentication
+ result = api_instance.set_two_factor_authentication(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->set_two_factor_authentication: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **param1** | **String**| The authentication token seed (key) to use for the user. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_user_asset_groups**
+> Links set_user_asset_groups(id, opts)
+
+Asset Groups Access
+
+Updates the asset groups to which the user has access. Individual asset group access cannot be granted to users with the `allAssetGroups` permission. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The identifiers of the asset groups to grant the user access to. Ignored if user has access to `allAssetGroups`.
+}
+
+begin
+ #Asset Groups Access
+ result = api_instance.set_user_asset_groups(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->set_user_asset_groups: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **param1** | **Array<Integer>**| The identifiers of the asset groups to grant the user access to. Ignored if user has access to `allAssetGroups`. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **set_user_sites**
+> Links set_user_sites(id, opts)
+
+Sites Access
+
+Updates the sites to which the user has access. Individual site access cannot be granted to users with the `allSites` permission. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+opts = {
+ param1: [Rapid7VmConsole::Array.new] # Array | The identifiers of the sites to grant the user access to. Ignored if the user has access to `allSites`.
+}
+
+begin
+ #Sites Access
+ result = api_instance.set_user_sites(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->set_user_sites: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **param1** | **Array<Integer>**| The identifiers of the sites to grant the user access to. Ignored if the user has access to `allSites`. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **unlock_user**
+> Links unlock_user(id)
+
+Unlock Account
+
+Unlocks a locked user account that has too many failed authentication attempts. Disabled accounts may not be unlocked.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+
+begin
+ #Unlock Account
+ result = api_instance.unlock_user(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->unlock_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_role**
+> Links update_role(id, opts)
+
+Role
+
+Updates the details of a role.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = "id_example" # String | The identifier of the role.
+
+opts = {
+ param0: Rapid7VmConsole::Role.new # Role | The details of the role.
+}
+
+begin
+ #Role
+ result = api_instance.update_role(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->update_role: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the role. |
+ **param0** | [**Role**](Role.md)| The details of the role. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_user**
+> Links update_user(id, opts)
+
+User
+
+Updates the details of a user. Global Administrator
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::UserApi.new
+
+id = 56 # Integer | The identifier of the user.
+
+opts = {
+ param1: Rapid7VmConsole::User.new # User | The details of the user.
+}
+
+begin
+ #User
+ result = api_instance.update_user(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling UserApi->update_user: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the user. |
+ **param1** | [**User**](User.md)| The details of the user. | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/UserCreateRole.md b/docs/UserCreateRole.md
new file mode 100644
index 0000000..1132711
--- /dev/null
+++ b/docs/UserCreateRole.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::UserCreateRole
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**all_asset_groups** | **BOOLEAN** | Whether to grant the user access to all asset groups. Defaults to `false`. | [optional]
+**all_sites** | **BOOLEAN** | Whether to grant the user access to all sites. Defaults to `false`. | [optional]
+**id** | **String** | The identifier of the role the user is assigned to. |
+**superuser** | **BOOLEAN** | Whether the user is a superuser. Defaults to `false`. | [optional]
+
+
diff --git a/docs/UserRole.md b/docs/UserRole.md
new file mode 100644
index 0000000..205c62e
--- /dev/null
+++ b/docs/UserRole.md
@@ -0,0 +1,13 @@
+# Rapid7VmConsole::UserRole
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**all_asset_groups** | **BOOLEAN** | Whether the user has access to all asset groups. | [optional]
+**all_sites** | **BOOLEAN** | Whether the user has access to all sites. | [optional]
+**id** | **String** | The identifier of the role the user is assigned to. | [optional]
+**name** | **String** | The name of the role the user is assigned to. | [optional]
+**privileges** | **Array<String>** | The privileges granted to the user by their role. | [optional]
+**superuser** | **BOOLEAN** | Whether the user is a superuser. | [optional]
+
+
diff --git a/docs/VersionInfo.md b/docs/VersionInfo.md
new file mode 100644
index 0000000..2434a98
--- /dev/null
+++ b/docs/VersionInfo.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::VersionInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**build** | **String** | The build number. | [optional]
+**changeset** | **String** | The changeset of the source build. | [optional]
+**platform** | **String** | The platform of the build. | [optional]
+**semantic** | **String** | The semantic version number of the installation. | [optional]
+**update** | [**UpdateInfo**](UpdateInfo.md) | Version update details. | [optional]
+
+
diff --git a/docs/Vulnerabilities.md b/docs/Vulnerabilities.md
new file mode 100644
index 0000000..a2936a3
--- /dev/null
+++ b/docs/Vulnerabilities.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::Vulnerabilities
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**critical** | **Integer** | The number of critical vulnerabilities. | [optional]
+**moderate** | **Integer** | The number of moderate vulnerabilities. | [optional]
+**severe** | **Integer** | The number of severe vulnerabilities. | [optional]
+**total** | **Integer** | The total number of vulnerabilities. | [optional]
+
+
diff --git a/docs/Vulnerability.md b/docs/Vulnerability.md
new file mode 100644
index 0000000..dd1d4c2
--- /dev/null
+++ b/docs/Vulnerability.md
@@ -0,0 +1,24 @@
+# Rapid7VmConsole::Vulnerability
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**added** | **String** | The date the vulnerability coverage was added. The format is an ISO 8601 date, `YYYY-MM-DD`. | [optional]
+**categories** | **Array<String>** | All vulnerability categories assigned to this vulnerability. | [optional]
+**cves** | **Array<String>** | All <a target=\"_blank\" href=\"https://cve.mitre.org/\">CVE</a>s assigned to this vulnerability. | [optional]
+**cvss** | [**VulnerabilityCvss**](VulnerabilityCvss.md) | The CVSS vector(s) for the vulnerability. | [optional]
+**denial_of_service** | **BOOLEAN** | Whether the vulnerability can lead to Denial of Service (DoS). | [optional]
+**description** | [**ContentDescription**](ContentDescription.md) | The description of the vulnerability. | [optional]
+**exploits** | **Integer** | The exploits that can be used to exploit a vulnerability. | [optional]
+**id** | **String** | The identifier of the vulnerability. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**malware_kits** | **Integer** | The malware kits that are known to be used to exploit the vulnerability. | [optional]
+**modified** | **String** | The last date the vulnerability was modified. The format is an ISO 8601 date, `YYYY-MM-DD`. | [optional]
+**pci** | [**PCI**](PCI.md) | Details the <a target=\"_blank\" href=\"https://www.pcisecuritystandards.org/\">Payment Card Industry (PCI)</a> details of the vulnerability. | [optional]
+**published** | **String** | The date the vulnerability was first published or announced. The format is an ISO 8601 date, `YYYY-MM-DD`. | [optional]
+**risk_score** | **Float** | The risk score of the vulnerability, rounded to a maximum of to digits of precision. If using the default Rapid7 Real Riskâ„¢ model, this value ranges from 0-1000. | [optional]
+**severity** | **String** | The severity of the vulnerability, one of: `\"Moderate\"`, `\"Severe\"`, `\"Critical\"`. | [optional]
+**severity_score** | **Integer** | The severity score of the vulnerability, on a scale of 0-10. | [optional]
+**title** | **String** | The title (summary) of the vulnerability. | [optional]
+
+
diff --git a/docs/VulnerabilityApi.md b/docs/VulnerabilityApi.md
new file mode 100644
index 0000000..6f607bc
--- /dev/null
+++ b/docs/VulnerabilityApi.md
@@ -0,0 +1,1226 @@
+# Rapid7VmConsole::VulnerabilityApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**get_affected_assets**](VulnerabilityApi.md#get_affected_assets) | **GET** /api/3/vulnerabilities/{id}/assets | Vulnerability Affected Assets
+[**get_exploit**](VulnerabilityApi.md#get_exploit) | **GET** /api/3/exploits/{id} | Exploit
+[**get_exploit_vulnerabilities**](VulnerabilityApi.md#get_exploit_vulnerabilities) | **GET** /api/3/exploits/{id}/vulnerabilities | Exploitable Vulnerabilities
+[**get_exploits**](VulnerabilityApi.md#get_exploits) | **GET** /api/3/exploits | Exploits
+[**get_malware_kit**](VulnerabilityApi.md#get_malware_kit) | **GET** /api/3/malware_kits/{id} | Malware Kit
+[**get_malware_kit_vulnerabilities**](VulnerabilityApi.md#get_malware_kit_vulnerabilities) | **GET** /api/3/malware_kits/{id}/vulnerabilities | Malware Kit Vulnerabilities
+[**get_malware_kits**](VulnerabilityApi.md#get_malware_kits) | **GET** /api/3/malware_kits | Malware Kits
+[**get_prerequisite_solutions**](VulnerabilityApi.md#get_prerequisite_solutions) | **GET** /api/3/solutions/{id}/prerequisites | Solution Prerequisites
+[**get_solution**](VulnerabilityApi.md#get_solution) | **GET** /api/3/solutions/{id} | Solution
+[**get_solutions**](VulnerabilityApi.md#get_solutions) | **GET** /api/3/solutions | Solutions
+[**get_superseded_solutions**](VulnerabilityApi.md#get_superseded_solutions) | **GET** /api/3/solutions/{id}/supersedes | Superseded Solutions
+[**get_superseding_solutions**](VulnerabilityApi.md#get_superseding_solutions) | **GET** /api/3/solutions/{id}/superseding | Superseding Solutions
+[**get_vulnerabilities**](VulnerabilityApi.md#get_vulnerabilities) | **GET** /api/3/vulnerabilities | Vulnerabilities
+[**get_vulnerability**](VulnerabilityApi.md#get_vulnerability) | **GET** /api/3/vulnerabilities/{id} | Vulnerability
+[**get_vulnerability_categories**](VulnerabilityApi.md#get_vulnerability_categories) | **GET** /api/3/vulnerability_categories | Categories
+[**get_vulnerability_category**](VulnerabilityApi.md#get_vulnerability_category) | **GET** /api/3/vulnerability_categories/{id} | Category
+[**get_vulnerability_category_vulnerabilities**](VulnerabilityApi.md#get_vulnerability_category_vulnerabilities) | **GET** /api/3/vulnerability_categories/{id}/vulnerabilities | Category Vulnerabilities
+[**get_vulnerability_exploits**](VulnerabilityApi.md#get_vulnerability_exploits) | **GET** /api/3/vulnerabilities/{id}/exploits | Vulnerability Exploits
+[**get_vulnerability_malware_kits**](VulnerabilityApi.md#get_vulnerability_malware_kits) | **GET** /api/3/vulnerabilities/{id}/malware_kits | Vulnerability Malware Kits
+[**get_vulnerability_reference**](VulnerabilityApi.md#get_vulnerability_reference) | **GET** /api/3/vulnerability_references/{id} | Reference
+[**get_vulnerability_reference_vulnerabilities**](VulnerabilityApi.md#get_vulnerability_reference_vulnerabilities) | **GET** /api/3/vulnerability_references/{id}/vulnerabilities | Reference Vulnerabilities
+[**get_vulnerability_references**](VulnerabilityApi.md#get_vulnerability_references) | **GET** /api/3/vulnerability_references | References
+[**get_vulnerability_references1**](VulnerabilityApi.md#get_vulnerability_references1) | **GET** /api/3/vulnerabilities/{id}/references | Vulnerability References
+[**get_vulnerability_solutions**](VulnerabilityApi.md#get_vulnerability_solutions) | **GET** /api/3/vulnerabilities/{id}/solutions | Vulnerability Solutions
+
+
+# **get_affected_assets**
+> ReferencesWithAssetIDLink get_affected_assets(id)
+
+Vulnerability Affected Assets
+
+Get the assets affected by the vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the vulnerability.
+
+
+begin
+ #Vulnerability Affected Assets
+ result = api_instance.get_affected_assets(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_affected_assets: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability. |
+
+### Return type
+
+[**ReferencesWithAssetIDLink**](ReferencesWithAssetIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_exploit**
+> Exploit get_exploit(id)
+
+Exploit
+
+Returns the details for an exploit.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | The identifier of the exploit.
+
+
+begin
+ #Exploit
+ result = api_instance.get_exploit(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_exploit: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the exploit. |
+
+### Return type
+
+[**Exploit**](Exploit.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_exploit_vulnerabilities**
+> ReferencesWithVulnerabilityNaturalIDLink get_exploit_vulnerabilities(id)
+
+Exploitable Vulnerabilities
+
+Returns the vulnerabilities exploitable to a exploit.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | The identifier of the exploit.
+
+
+begin
+ #Exploitable Vulnerabilities
+ result = api_instance.get_exploit_vulnerabilities(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_exploit_vulnerabilities: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the exploit. |
+
+### Return type
+
+[**ReferencesWithVulnerabilityNaturalIDLink**](ReferencesWithVulnerabilityNaturalIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_exploits**
+> PageOfExploit get_exploits(opts)
+
+Exploits
+
+Returns all known exploits.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Exploits
+ result = api_instance.get_exploits(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_exploits: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfExploit**](PageOfExploit.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_malware_kit**
+> MalwareKit get_malware_kit(id)
+
+Malware Kit
+
+Returns the details for a malware kit.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | The identifier of the malware kit.
+
+
+begin
+ #Malware Kit
+ result = api_instance.get_malware_kit(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_malware_kit: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the malware kit. |
+
+### Return type
+
+[**MalwareKit**](MalwareKit.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_malware_kit_vulnerabilities**
+> ReferencesWithVulnerabilityNaturalIDLink get_malware_kit_vulnerabilities(id)
+
+Malware Kit Vulnerabilities
+
+Returns the vulnerabilities that are susceptible to being attacked by a malware kit.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | The identifier of the malware kit.
+
+
+begin
+ #Malware Kit Vulnerabilities
+ result = api_instance.get_malware_kit_vulnerabilities(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_malware_kit_vulnerabilities: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the malware kit. |
+
+### Return type
+
+[**ReferencesWithVulnerabilityNaturalIDLink**](ReferencesWithVulnerabilityNaturalIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_malware_kits**
+> PageOfMalwareKit get_malware_kits(opts)
+
+Malware Kits
+
+Returns all known malware kits.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Malware Kits
+ result = api_instance.get_malware_kits(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_malware_kits: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfMalwareKit**](PageOfMalwareKit.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_prerequisite_solutions**
+> ReferencesWithSolutionNaturalIDLink get_prerequisite_solutions(id)
+
+Solution Prerequisites
+
+Returns the solutions that must be executed in order for a solution to resolve a vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the solution.
+
+
+begin
+ #Solution Prerequisites
+ result = api_instance.get_prerequisite_solutions(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_prerequisite_solutions: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the solution. |
+
+### Return type
+
+[**ReferencesWithSolutionNaturalIDLink**](ReferencesWithSolutionNaturalIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_solution**
+> Solution get_solution(id)
+
+Solution
+
+Returns the details for a solution that can remediate one or more vulnerabilities.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the solution.
+
+
+begin
+ #Solution
+ result = api_instance.get_solution(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_solution: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the solution. |
+
+### Return type
+
+[**Solution**](Solution.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_solutions**
+> ResourcesSolution get_solutions(opts)
+
+Solutions
+
+Returns the details for all solutions.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Solutions
+ result = api_instance.get_solutions(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_solutions: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**ResourcesSolution**](ResourcesSolution.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_superseded_solutions**
+> ResourcesSolution get_superseded_solutions(id)
+
+Superseded Solutions
+
+Returns the solutions that are superseded by this solution.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the solution.
+
+
+begin
+ #Superseded Solutions
+ result = api_instance.get_superseded_solutions(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_superseded_solutions: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the solution. |
+
+### Return type
+
+[**ResourcesSolution**](ResourcesSolution.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_superseding_solutions**
+> ResourcesSolution get_superseding_solutions(id, opts)
+
+Superseding Solutions
+
+Returns the solutions that supersede this solution.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the solution.
+
+opts = {
+ rollup: true # BOOLEAN | Whether to return only highest-level \"rollup\" superseding solutions.
+}
+
+begin
+ #Superseding Solutions
+ result = api_instance.get_superseding_solutions(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_superseding_solutions: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the solution. |
+ **rollup** | **BOOLEAN**| Whether to return only highest-level \"rollup\" superseding solutions. | [optional] [default to true]
+
+### Return type
+
+[**ResourcesSolution**](ResourcesSolution.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerabilities**
+> PageOfVulnerability get_vulnerabilities(opts)
+
+Vulnerabilities
+
+Returns all vulnerabilities that can be assessed during a scan.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Vulnerabilities
+ result = api_instance.get_vulnerabilities(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerabilities: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerability**](PageOfVulnerability.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability**
+> Vulnerability get_vulnerability(id)
+
+Vulnerability
+
+Returns the details for a vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the vulnerability.
+
+
+begin
+ #Vulnerability
+ result = api_instance.get_vulnerability(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability. |
+
+### Return type
+
+[**Vulnerability**](Vulnerability.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_categories**
+> PageOfVulnerabilityCategory get_vulnerability_categories(opts)
+
+Categories
+
+Returns all vulnerabilities categories that can be assigned to a vulnerability. These categories group and label vulnerabilities by general purpose, affected systems, vendor, etc.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Categories
+ result = api_instance.get_vulnerability_categories(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_categories: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerabilityCategory**](PageOfVulnerabilityCategory.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_category**
+> VulnerabilityCategory get_vulnerability_category(id)
+
+Category
+
+Returns the details for a vulnerability category.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | The identifier of the vulnerability category.
+
+
+begin
+ #Category
+ result = api_instance.get_vulnerability_category(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_category: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the vulnerability category. |
+
+### Return type
+
+[**VulnerabilityCategory**](VulnerabilityCategory.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_category_vulnerabilities**
+> ReferencesWithVulnerabilityNaturalIDLink get_vulnerability_category_vulnerabilities(id)
+
+Category Vulnerabilities
+
+Returns hypermedia links to the vulnerabilities that are in a vulnerability category.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | The identifier of the vulnerability category.
+
+
+begin
+ #Category Vulnerabilities
+ result = api_instance.get_vulnerability_category_vulnerabilities(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_category_vulnerabilities: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the vulnerability category. |
+
+### Return type
+
+[**ReferencesWithVulnerabilityNaturalIDLink**](ReferencesWithVulnerabilityNaturalIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_exploits**
+> PageOfExploit get_vulnerability_exploits(id, opts)
+
+Vulnerability Exploits
+
+Returns the exploits that can be used to exploit a vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the vulnerability.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Vulnerability Exploits
+ result = api_instance.get_vulnerability_exploits(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_exploits: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfExploit**](PageOfExploit.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_malware_kits**
+> PageOfMalwareKit get_vulnerability_malware_kits(id, opts)
+
+Vulnerability Malware Kits
+
+Returns the malware kits that are known to be used to exploit the vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the vulnerability.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Vulnerability Malware Kits
+ result = api_instance.get_vulnerability_malware_kits(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_malware_kits: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfMalwareKit**](PageOfMalwareKit.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_reference**
+> VulnerabilityReference get_vulnerability_reference(id)
+
+Reference
+
+Returns an external vulnerability reference.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | The identifier of the vulnerability reference.
+
+
+begin
+ #Reference
+ result = api_instance.get_vulnerability_reference(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_reference: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the vulnerability reference. |
+
+### Return type
+
+[**VulnerabilityReference**](VulnerabilityReference.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_reference_vulnerabilities**
+> PageOfVulnerability get_vulnerability_reference_vulnerabilities(id, opts)
+
+Reference Vulnerabilities
+
+Returns the vulnerabilities that are referenced by an external reference.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = 56 # Integer | id
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Reference Vulnerabilities
+ result = api_instance.get_vulnerability_reference_vulnerabilities(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_reference_vulnerabilities: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| id |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerability**](PageOfVulnerability.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_references**
+> PageOfVulnerabilityReference get_vulnerability_references(opts)
+
+References
+
+Returns the external references that may be associated to a vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #References
+ result = api_instance.get_vulnerability_references(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_references: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerabilityReference**](PageOfVulnerabilityReference.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_references1**
+> PageOfVulnerabilityReference get_vulnerability_references1(id, opts)
+
+Vulnerability References
+
+Returns the external references that may be associated to a vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the vulnerability.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Vulnerability References
+ result = api_instance.get_vulnerability_references1(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_references1: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerabilityReference**](PageOfVulnerabilityReference.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_solutions**
+> ReferencesWithSolutionNaturalIDLink get_vulnerability_solutions(id)
+
+Vulnerability Solutions
+
+Returns all solutions (across all platforms) that may be used to remediate this vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityApi.new
+
+id = "id_example" # String | The identifier of the vulnerability.
+
+
+begin
+ #Vulnerability Solutions
+ result = api_instance.get_vulnerability_solutions(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityApi->get_vulnerability_solutions: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability. |
+
+### Return type
+
+[**ReferencesWithSolutionNaturalIDLink**](ReferencesWithSolutionNaturalIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/VulnerabilityCategory.md b/docs/VulnerabilityCategory.md
new file mode 100644
index 0000000..cbff0df
--- /dev/null
+++ b/docs/VulnerabilityCategory.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::VulnerabilityCategory
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the vulnerability category. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**name** | **String** | The name of the category. | [optional]
+
+
diff --git a/docs/VulnerabilityCheck.md b/docs/VulnerabilityCheck.md
new file mode 100644
index 0000000..d0eab13
--- /dev/null
+++ b/docs/VulnerabilityCheck.md
@@ -0,0 +1,16 @@
+# Rapid7VmConsole::VulnerabilityCheck
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **String** | The identifier of the vulnerability check. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**plugin** | **String** | The name of the plugin (module) the check belongs to. | [optional]
+**potential** | **BOOLEAN** | Whether the check results in potential vulnerabilities. | [optional]
+**requires_credentials** | **BOOLEAN** | Whether the check requires credentials in order to run. | [optional]
+**safe** | **BOOLEAN** | Whether the checked is deemed to be \"safe\" to run. A safe check is one that can be run without negatively impacting the host it is run against. | [optional]
+**service** | **BOOLEAN** | Whether the check operates against a service, or false it it is a local check. | [optional]
+**unique** | **BOOLEAN** | Whether the check may only register a result once during a scan of host. Otherwise, the tests in the check can run multiple times, possibly registering multiple results. | [optional]
+**vulnerability** | **String** | The identifier of the vulnerability the check results in. | [optional]
+
+
diff --git a/docs/VulnerabilityCheckApi.md b/docs/VulnerabilityCheckApi.md
new file mode 100644
index 0000000..42a7ea7
--- /dev/null
+++ b/docs/VulnerabilityCheckApi.md
@@ -0,0 +1,211 @@
+# Rapid7VmConsole::VulnerabilityCheckApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**get_vulnerability_check_types**](VulnerabilityCheckApi.md#get_vulnerability_check_types) | **GET** /api/3/vulnerability_checks_types | Check Types
+[**get_vulnerability_checks**](VulnerabilityCheckApi.md#get_vulnerability_checks) | **GET** /api/3/vulnerability_checks | Checks
+[**get_vulnerability_checks_for_vulnerability**](VulnerabilityCheckApi.md#get_vulnerability_checks_for_vulnerability) | **GET** /api/3/vulnerabilities/{id}/checks | Vulnerability Checks
+[**vulnerability_check**](VulnerabilityCheckApi.md#vulnerability_check) | **GET** /api/3/vulnerability_checks/{id} | Check
+
+
+# **get_vulnerability_check_types**
+> ReferencesWithVulnerabilityCheckTypeIDLink get_vulnerability_check_types
+
+Check Types
+
+Returns the vulnerability check types. The type groups related vulnerability checks by their purpose, property, or related characteristic.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityCheckApi.new
+
+begin
+ #Check Types
+ result = api_instance.get_vulnerability_check_types
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityCheckApi->get_vulnerability_check_types: #{e}"
+end
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ReferencesWithVulnerabilityCheckTypeIDLink**](ReferencesWithVulnerabilityCheckTypeIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_checks**
+> PageOfVulnerabilityCheck get_vulnerability_checks(opts)
+
+Checks
+
+Returns vulnerability checks. Optional search and filtering parameters may be supplied to refine the results. Searching allows full text search of the vulnerability details a check is related to.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityCheckApi.new
+
+opts = {
+ search: "search_example", # String | Vulnerability search term to find vulnerability checks for. e.g. `\"ssh\"`.
+ safe: true, # BOOLEAN | Whether to return vulnerability checks that are considered \"safe\" to run. Defaults to return safe and unsafe checks.
+ potential: true, # BOOLEAN | Whether to only return checks that result in potentially vulnerable results. Defaults to return all checks.
+ requires_credentials: true, # BOOLEAN | Whether to only return checks that require credentials in order to successfully execute. Defaults to return all checks.
+ unique: true, # BOOLEAN | Whether to only return checks that guarantee to be executed once-and-only once on a host resulting in a unique result. False returns checks that can result in multiple occurrences of the same vulnerability on a host.
+ type: "type_example", # String | The type of vulnerability checks to return. See Check Types for all available types.
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Checks
+ result = api_instance.get_vulnerability_checks(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityCheckApi->get_vulnerability_checks: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **search** | **String**| Vulnerability search term to find vulnerability checks for. e.g. `\"ssh\"`. | [optional]
+ **safe** | **BOOLEAN**| Whether to return vulnerability checks that are considered \"safe\" to run. Defaults to return safe and unsafe checks. | [optional]
+ **potential** | **BOOLEAN**| Whether to only return checks that result in potentially vulnerable results. Defaults to return all checks. | [optional]
+ **requires_credentials** | **BOOLEAN**| Whether to only return checks that require credentials in order to successfully execute. Defaults to return all checks. | [optional]
+ **unique** | **BOOLEAN**| Whether to only return checks that guarantee to be executed once-and-only once on a host resulting in a unique result. False returns checks that can result in multiple occurrences of the same vulnerability on a host. | [optional]
+ **type** | **String**| The type of vulnerability checks to return. See <a href=\"#operation/vulnerabilityCheckTypesUsingGET\">Check Types</a> for all available types. | [optional]
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerabilityCheck**](PageOfVulnerabilityCheck.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_checks_for_vulnerability**
+> ReferencesWithVulnerabilityCheckIDLink get_vulnerability_checks_for_vulnerability(id)
+
+Vulnerability Checks
+
+Returns the vulnerability checks that assess for a specific vulnerability during a scan.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityCheckApi.new
+
+id = "id_example" # String | The identifier of the vulnerability.
+
+
+begin
+ #Vulnerability Checks
+ result = api_instance.get_vulnerability_checks_for_vulnerability(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityCheckApi->get_vulnerability_checks_for_vulnerability: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability. |
+
+### Return type
+
+[**ReferencesWithVulnerabilityCheckIDLink**](ReferencesWithVulnerabilityCheckIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **vulnerability_check**
+> VulnerabilityCheck vulnerability_check(id)
+
+Check
+
+Returns the vulnerability check.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityCheckApi.new
+
+id = "id_example" # String | The identifier of the vulnerability check.
+
+
+begin
+ #Check
+ result = api_instance.vulnerability_check(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityCheckApi->vulnerability_check: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The identifier of the vulnerability check. |
+
+### Return type
+
+[**VulnerabilityCheck**](VulnerabilityCheck.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/VulnerabilityCheckType.md b/docs/VulnerabilityCheckType.md
new file mode 100644
index 0000000..ff41c8f
--- /dev/null
+++ b/docs/VulnerabilityCheckType.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::VulnerabilityCheckType
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**disabled** | **Array<String>** | The types of vulnerability checks to disable during a scan. | [optional]
+**enabled** | **Array<String>** | The types of vulnerability checks to enable during a scan. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+
+
diff --git a/docs/VulnerabilityCvss.md b/docs/VulnerabilityCvss.md
new file mode 100644
index 0000000..75eb962
--- /dev/null
+++ b/docs/VulnerabilityCvss.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::VulnerabilityCvss
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**v2** | [**VulnerabilityCvssV2**](VulnerabilityCvssV2.md) | The Common Vulnerability Scoring System (<a href=\"https://www.first.org/cvss/v2/guide\">CVSS v2</a>) information for the vulnerability. | [optional]
+**v3** | [**VulnerabilityCvssV3**](VulnerabilityCvssV3.md) | The Common Vulnerability Scoring System (<a target=\"_blank\" href=\"https://www.first.org/cvss/specification-document\">CVSS v3</a>) information for the vulnerability. | [optional]
+
+
diff --git a/docs/VulnerabilityCvssV2.md b/docs/VulnerabilityCvssV2.md
new file mode 100644
index 0000000..169964b
--- /dev/null
+++ b/docs/VulnerabilityCvssV2.md
@@ -0,0 +1,17 @@
+# Rapid7VmConsole::VulnerabilityCvssV2
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**access_complexity** | **String** | Access Complexity (AC) component which measures the complexity of the attack required to exploit the vulnerability once an attacker has gained access to the target system. | Access Complexity | Description | | ----------------------- | ------------------------------------------------------------------------ | | High (`\"H\"`) | Specialized access conditions exist. | | Medium (`\"M\"`) | The access conditions are somewhat specialized. | | Low (`\"L\"`) | Specialized access conditions or extenuating circumstances do not exist. | | [optional]
+**access_vector** | **String** | Access Vector (Av) component which reflects how the vulnerability is exploited. | Access Vector | Description | | -------------------------- | ----------- | | Local (`\"L\"`) | A vulnerability exploitable with only local access requires the attacker to have either physical access to the vulnerable system or a local (shell) account. | | Adjacent Network (`\"A\"`) | A vulnerability exploitable with adjacent network access requires the attacker to have access to either the broadcast or collision domain of the vulnerable software. | | Network (`\"N\"`) | A vulnerability exploitable with network access means the vulnerable software is bound to the network stack and the attacker does not require local network access or local access. Such a vulnerability is often termed \"remotely exploitable\". | | [optional]
+**authentication** | **String** | Authentication (Au) component which measures the number of times an attacker must authenticate to a target in order to exploit a vulnerability. | Authentication | Description | | -------------------- | ----------- | | Multiple (`\"M\"`) | Exploiting the vulnerability requires that the attacker authenticate two or more times, even if the same credentials are used each time. | | Single (`\"S\"`) | The vulnerability requires an attacker to be logged into the system. | | None (`\"N\"`) | Authentication is not required to exploit the vulnerability. | | [optional]
+**availability_impact** | **String** | Availability Impact (A) component which measures the impact to availability of a successfully exploited vulnerability. | Availability Impact | Description | | -------------------------- | ------------ | | None (`\"N\"`) | There is no impact to the availability of the system. | | Partial (`\"P\"`) | There is reduced performance or interruptions in resource availability. | | Complete (`\"C\"`) | There is a total shutdown of the affected resource. The attacker can render the resource completely unavailable. | | [optional]
+**confidentiality_impact** | **String** | Confidentiality Impact (C) component which measures the impact on confidentiality of a successfully exploited vulnerability. | Confidentiality Impact | Description | | -------------------------- | ------------ | | None (`\"N\"`) | There is no impact to the confidentiality of the system. | | Partial (`\"P\"`) | There is considerable informational disclosure. Access to some system files is possible, but the attacker does not have control over what is obtained, or the scope of the loss is constrained. | | Complete (`\"C\"`) | There is total information disclosure, resulting in all system files being revealed. The attacker is able to read all of the system's data (memory, files, etc.) | | [optional]
+**exploit_score** | **Float** | The CVSS exploit score. | [optional]
+**impact_score** | **Float** | The CVSS impact score. | [optional]
+**integrity_impact** | **String** | Integrity Impact (I) component measures the impact to integrity of a successfully exploited vulnerability. | Integrity Impact | Description | | -------------------------- | ------------ | | None (`\"N\"`) | There is no impact to the integrity of the system. | | Partial (`\"P\"`) | Modification of some system files or information is possible, but the attacker does not have control over what can be modified, or the scope of what the attacker can affect is limited. | | Complete (`\"C\"`) | There is a total compromise of system integrity. There is a complete loss of system protection, resulting in the entire system being compromised. The attacker is able to modify any files on the target system. | | [optional]
+**score** | **Float** | The CVSS score, which ranges from 0-10. | [optional]
+**vector** | **String** | The <a target=\"_blank\" href=\"https://www.first.org/cvss/v2/guide\">CVSS v2</a> vector. | [optional]
+
+
diff --git a/docs/VulnerabilityCvssV3.md b/docs/VulnerabilityCvssV3.md
new file mode 100644
index 0000000..883a9f0
--- /dev/null
+++ b/docs/VulnerabilityCvssV3.md
@@ -0,0 +1,19 @@
+# Rapid7VmConsole::VulnerabilityCvssV3
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**attack_complexity** | **String** | Access Complexity (AC) component with measures the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. | Access Complexity | Description | | ---------------------- | ------------------------------------------------------------------------ | | Low (`\"L\"`) | Specialized access conditions or extenuating circumstances do not exist. | | High (`\"H\"`) | A successful attack depends on conditions beyond the attacker's control. | | [optional]
+**attack_vector** | **String** | Attack Vector (AV) component which measures context by which vulnerability exploitation is possible. | Access Vector | Description | | ---------------------- | ------------------------------------------------------------------------ | | Local (`\"L\"`) | A vulnerability exploitable with only local access requires the attacker to have either physical access to the vulnerable system or a local (shell) account. | | Adjacent (`\"A\"`) | A vulnerability exploitable with adjacent network access requires the attacker to have access to either the broadcast or collision domain of the vulnerable software. | | Network (`\"N\"`) | A vulnerability exploitable with network access means the vulnerable software is bound to the network stack and the attacker does not require local network access or local access. Such a vulnerability is often termed \"remotely exploitable\". | | [optional]
+**availability_impact** | **String** | Availability Impact (A) measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. | Availability Impact | Description | | -------------------------- | ------------ | | High (`\"H\"`) | There is total loss of availability, resulting in the attacker being able to fully deny access to resources in the impacted component; this loss is either sustained (while the attacker continues to deliver the attack) or persistent (the condition persists even after the attack has completed). | | Low (`\"L\"`) | There is reduced performance or interruptions in resource availability. Even if repeated exploitation of the vulnerability is possible, the attacker does not have the ability to completely deny service to legitimate users. | | None (`\"N\"`) | There is no impact to availability within the impacted component. | | [optional]
+**confidentiality_impact** | **String** | Confidentiality Impact (C) component which measures the impact on confidentiality of a successfully exploited vulnerability. | Confidentiality Impact | Description | | -------------------------- | ------------ | | High (`\"H\"`) | There is total loss of confidentiality, resulting in all resources within the impacted component being divulged to the attacker. | | Low (`\"L\"`) | There is some loss of confidentiality. Access to some restricted information is obtained, but the attacker does not have control over what information is obtained, or the amount or kind of loss is constrained. | | None (`\"N\"`) | There is no loss of confidentiality within the impacted component. | | [optional]
+**exploit_score** | **Float** | The CVSS impact score. | [optional]
+**impact_score** | **Float** | The CVSS exploit score. | [optional]
+**integrity_impact** | **String** | Integrity Impact (I) measures the impact to integrity of a successfully exploited vulnerability. Integrity refers to the trustworthiness and veracity of information. | Integrity Impact | Description | | ------------------- | ------------ | | High (`\"H\"`) | There is a total loss of integrity, or a complete loss of protection. | | Low (`\"L\"`) | Modification of data is possible, but the attacker does not have control over the consequence of a modification, or the amount of modification is constrained. | | None (`\"N\"`) | There is no loss of integrity within the impacted component. | | [optional]
+**privilege_required** | **String** | Privileges Required (PR) measures the level of privileges an attacker must possess before successfully exploiting the vulnerability. | Privileges Required (PR) | Description | | ---------------------------- | ------------------------------------------------------------------------ | | None (`\"N\"`) | The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files to carry out an attack. | | Low (`\"L\"`) | The attacker is authorized with (i.e. requires) privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. | | High (`\"H\"`) | The attacker is authorized with (i.e. requires) privileges that provide significant (e.g. administrative) control over the vulnerable component that could affect component-wide settings and files. | | [optional]
+**scope** | **String** | Scope (S) measures the collection of privileges defined by a computing authority (e.g. an application, an operating system, or a sandbox environment) when granting access to computing resources (e.g. files, CPU, memory, etc). These privileges are assigned based on some method of identification and authorization. | Scope (S) | Description | | -------------------- | ------------------------------------------------------------------------ | | Unchanged (`\"U\"`) | An exploited vulnerability can only affect resources managed by the same authority. In this case the vulnerable component and the impacted component are the same. | | Changed (`\"C\"`) | An exploited vulnerability can affect resources beyond the authorization privileges intended by the vulnerable component. In this case the vulnerable component and the impacted component are different. | | [optional]
+**score** | **Float** | The CVSS score, which ranges from 0-10. | [optional]
+**user_interaction** | **String** | User Interaction (UI) measures the requirement for a user, other than the attacker, to participate in the successful compromise of the vulnerable component. | User Interaction (UI) | Description | | ---------------------------- | ------------------------------------------------------------------------- | | None (`\"N\"`) | The vulnerable system can be exploited without interaction from any user. | | Required (`\"R\"`) | Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited. | | [optional]
+**vector** | **String** | The <a target=\"_blank\" href=\"https://www.first.org/cvss/specification-document\">CVSS v3</a> vector. | [optional]
+
+
diff --git a/docs/VulnerabilityEvents.md b/docs/VulnerabilityEvents.md
new file mode 100644
index 0000000..3e25b6c
--- /dev/null
+++ b/docs/VulnerabilityEvents.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::VulnerabilityEvents
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**confirmed_vulnerabilities** | **BOOLEAN** | Generates an alert for vulnerability results of confirmed vulnerabilties. A vulnerability is \"confirmed\" when asset-specific vulnerability tests, such as exploits, produce positive results. Default value is `true`. |
+**potential_vulnerabilities** | **BOOLEAN** | Generates an alert for vulnerability results of potential vulnerabilties. A vulnerability is \"potential\" if a check for a potential vulnerabilty is positive. Default value is `true`. |
+**unconfirmed_vulnerabilities** | **BOOLEAN** | Generates an alert for vulnerability results of unconfirmed vulnerabilties. A vulnerability is \"unconfirmed\" when a version of a scanned service or software is known to be vulnerable, but there is no positive verification. Default value is `true`. |
+**vulnerability_severity** | **String** | Generates an alert for vulnerability results of the selected vulnerability severity. Default value is `\"any_severity\"`. |
+
+
diff --git a/docs/VulnerabilityException.md b/docs/VulnerabilityException.md
new file mode 100644
index 0000000..71fc4d4
--- /dev/null
+++ b/docs/VulnerabilityException.md
@@ -0,0 +1,14 @@
+# Rapid7VmConsole::VulnerabilityException
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**expires** | **String** | The date and time the vulnerability exception is set to expire. | [optional]
+**id** | **Integer** | The identifier of the vulnerability exception. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**review** | [**Review**](Review.md) | Details regarding the review and/or approval of the exception. | [optional]
+**scope** | [**ExceptionScope**](ExceptionScope.md) | The scope of the vulnerability exception, indicating the results it applies to. | [optional]
+**state** | **String** | The state of the vulnerability exception. One of: `\"Deleted\"`, `\"Expired\"`, `\"Approved\"`, `\"Rejected\"`, `\"Under Review\". | [optional]
+**submit** | [**Submission**](Submission.md) | Details regarding the submission of the exception. | [optional]
+
+
diff --git a/docs/VulnerabilityExceptionApi.md b/docs/VulnerabilityExceptionApi.md
new file mode 100644
index 0000000..6faccce
--- /dev/null
+++ b/docs/VulnerabilityExceptionApi.md
@@ -0,0 +1,360 @@
+# Rapid7VmConsole::VulnerabilityExceptionApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_vulnerability_exception**](VulnerabilityExceptionApi.md#create_vulnerability_exception) | **POST** /api/3/vulnerability_exceptions | Exceptions
+[**get_vulnerability_exception**](VulnerabilityExceptionApi.md#get_vulnerability_exception) | **GET** /api/3/vulnerability_exceptions/{id} | Exception
+[**get_vulnerability_exception_expiration**](VulnerabilityExceptionApi.md#get_vulnerability_exception_expiration) | **GET** /api/3/vulnerability_exceptions/{id}/expires | Exception Expiration
+[**get_vulnerability_exceptions**](VulnerabilityExceptionApi.md#get_vulnerability_exceptions) | **GET** /api/3/vulnerability_exceptions | Exceptions
+[**remove_vulnerability_exception**](VulnerabilityExceptionApi.md#remove_vulnerability_exception) | **DELETE** /api/3/vulnerability_exceptions/{id} | Exception
+[**update_vulnerability_exception_expiration**](VulnerabilityExceptionApi.md#update_vulnerability_exception_expiration) | **PUT** /api/3/vulnerability_exceptions/{id}/expires | Exception Expiration
+[**update_vulnerability_exception_status**](VulnerabilityExceptionApi.md#update_vulnerability_exception_status) | **POST** /api/3/vulnerability_exceptions/{id}/{status} | Exception Status
+
+
+# **create_vulnerability_exception**
+> CreatedReferenceVulnerabilityExceptionIDLink create_vulnerability_exception(opts)
+
+Exceptions
+
+Creates a vulnerability exception.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityExceptionApi.new
+
+opts = {
+ param0: Rapid7VmConsole::VulnerabilityException.new # VulnerabilityException | The vulnerability exception to create.
+}
+
+begin
+ #Exceptions
+ result = api_instance.create_vulnerability_exception(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityExceptionApi->create_vulnerability_exception: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param0** | [**VulnerabilityException**](VulnerabilityException.md)| The vulnerability exception to create. | [optional]
+
+### Return type
+
+[**CreatedReferenceVulnerabilityExceptionIDLink**](CreatedReferenceVulnerabilityExceptionIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_exception**
+> VulnerabilityException get_vulnerability_exception(id)
+
+Exception
+
+Returns an exception made on a vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityExceptionApi.new
+
+id = 56 # Integer | The identifier of the vulnerability exception.
+
+
+begin
+ #Exception
+ result = api_instance.get_vulnerability_exception(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityExceptionApi->get_vulnerability_exception: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the vulnerability exception. |
+
+### Return type
+
+[**VulnerabilityException**](VulnerabilityException.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_exception_expiration**
+> String get_vulnerability_exception_expiration(id)
+
+Exception Expiration
+
+Get the expiration date for a vulnerability exception.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityExceptionApi.new
+
+id = 56 # Integer | id
+
+
+begin
+ #Exception Expiration
+ result = api_instance.get_vulnerability_exception_expiration(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityExceptionApi->get_vulnerability_exception_expiration: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| id |
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_exceptions**
+> PageOfVulnerabilityException get_vulnerability_exceptions(opts)
+
+Exceptions
+
+Returns all exceptions defined on vulnerabilities.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityExceptionApi.new
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Exceptions
+ result = api_instance.get_vulnerability_exceptions(opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityExceptionApi->get_vulnerability_exceptions: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerabilityException**](PageOfVulnerabilityException.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **remove_vulnerability_exception**
+> Links remove_vulnerability_exception(id)
+
+Exception
+
+Removes an exception made on a vulnerability.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityExceptionApi.new
+
+id = 56 # Integer | id
+
+
+begin
+ #Exception
+ result = api_instance.remove_vulnerability_exception(id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityExceptionApi->remove_vulnerability_exception: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| id |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_vulnerability_exception_expiration**
+> Links update_vulnerability_exception_expiration(id, param1)
+
+Exception Expiration
+
+Set the expiration date for a vulnerability exception. This must be a valid date in the future.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityExceptionApi.new
+
+id = 56 # Integer | id
+
+param1 = "param1_example" # String | param1
+
+
+begin
+ #Exception Expiration
+ result = api_instance.update_vulnerability_exception_expiration(id, param1)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityExceptionApi->update_vulnerability_exception_expiration: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| id |
+ **param1** | **String**| param1 |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **update_vulnerability_exception_status**
+> Links update_vulnerability_exception_status(id, status, opts)
+
+Exception Status
+
+Update the status of the vulnerability exception. The status can be one of: `\"recall\"`, `\"approve\"`, or `\"reject\"`.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityExceptionApi.new
+
+id = 56 # Integer | id
+
+status = "status_example" # String | Exception Status
+
+opts = {
+ param2: "param2_example" # String | param2
+}
+
+begin
+ #Exception Status
+ result = api_instance.update_vulnerability_exception_status(id, status, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityExceptionApi->update_vulnerability_exception_status: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| id |
+ **status** | **String**| Exception Status |
+ **param2** | **String**| param2 | [optional]
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/VulnerabilityFinding.md b/docs/VulnerabilityFinding.md
new file mode 100644
index 0000000..1b18631
--- /dev/null
+++ b/docs/VulnerabilityFinding.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::VulnerabilityFinding
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **String** | The identifier of the vulnerability. |
+**instances** | **Integer** | The number of vulnerable occurrences of the vulnerability. This does not include `invulnerable` instances. |
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**results** | [**Array<AssessmentResult>**](AssessmentResult.md) | The vulnerability check results for the finding. Multiple instances may be present if one or more checks fired, or a check has multiple independent results. | [optional]
+**status** | **String** | The status of the finding. |
+
+
diff --git a/docs/VulnerabilityReference.md b/docs/VulnerabilityReference.md
new file mode 100644
index 0000000..53e5dde
--- /dev/null
+++ b/docs/VulnerabilityReference.md
@@ -0,0 +1,12 @@
+# Rapid7VmConsole::VulnerabilityReference
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**advisory** | [**AdvisoryLink**](AdvisoryLink.md) | Hypermedia link to the destination of the vulnerability reference. | [optional]
+**id** | **Integer** | The identifier of the vulnerability reference. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**reference** | **String** | The contents of the reference, typically an identifier or hyperlink. Example: `\"CVE-2011-0762\"` | [optional]
+**source** | **String** | The originating source of the reference. Examples: `\"url\"`, `\"cve\"`, `\"bid\"`, `\"redhat\"` | [optional]
+
+
diff --git a/docs/VulnerabilityResultApi.md b/docs/VulnerabilityResultApi.md
new file mode 100644
index 0000000..f51a927
--- /dev/null
+++ b/docs/VulnerabilityResultApi.md
@@ -0,0 +1,391 @@
+# Rapid7VmConsole::VulnerabilityResultApi
+
+All URIs are relative to *https://localhost:3780*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**create_vulnerability_validation**](VulnerabilityResultApi.md#create_vulnerability_validation) | **POST** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations | Asset Vulnerability Validations
+[**delete_vulnerability_validation**](VulnerabilityResultApi.md#delete_vulnerability_validation) | **DELETE** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations/{validationId} | Asset Vulnerability Validation
+[**get_asset_service_vulnerabilities**](VulnerabilityResultApi.md#get_asset_service_vulnerabilities) | **GET** /api/3/assets/{id}/services/{protocol}/{port}/vulnerabilities | Asset Service Vulnerabilities
+[**get_asset_vulnerabilities**](VulnerabilityResultApi.md#get_asset_vulnerabilities) | **GET** /api/3/assets/{id}/vulnerabilities | Asset Vulnerabilities
+[**get_asset_vulnerability**](VulnerabilityResultApi.md#get_asset_vulnerability) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId} | Asset Vulnerability
+[**get_vulnerability_validation**](VulnerabilityResultApi.md#get_vulnerability_validation) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations/{validationId} | Asset Vulnerability Validation
+[**get_vulnerability_validations**](VulnerabilityResultApi.md#get_vulnerability_validations) | **GET** /api/3/assets/{id}/vulnerabilities/{vulnerabilityId}/validations | Asset Vulnerability Validations
+
+
+# **create_vulnerability_validation**
+> CreatedReferenceVulnerabilityValidationIDLink create_vulnerability_validation(id, vulnerability_id, opts)
+
+Asset Vulnerability Validations
+
+Creates a vulnerability validation for a vulnerability on an asset. The validation signifies that the vulnerability has been confirmed exploitable by an external tool, such as Metasploit.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityResultApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+vulnerability_id = "vulnerability_id_example" # String | The identifier of the vulnerability.
+
+opts = {
+ param2: Rapid7VmConsole::VulnerabilityValidationResource.new # VulnerabilityValidationResource | A vulnerability validation for a vulnerability on an asset. The validation signifies that the vulnerability has been confirmed exploitable by an external tool, such as Metasploit.
+}
+
+begin
+ #Asset Vulnerability Validations
+ result = api_instance.create_vulnerability_validation(id, vulnerability_id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityResultApi->create_vulnerability_validation: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **vulnerability_id** | **String**| The identifier of the vulnerability. |
+ **param2** | [**VulnerabilityValidationResource**](VulnerabilityValidationResource.md)| A vulnerability validation for a vulnerability on an asset. The validation signifies that the vulnerability has been confirmed exploitable by an external tool, such as <a target=\"_blank\" href=\"https://www.metasploit.com\">Metasploit</a>. | [optional]
+
+### Return type
+
+[**CreatedReferenceVulnerabilityValidationIDLink**](CreatedReferenceVulnerabilityValidationIDLink.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **delete_vulnerability_validation**
+> Links delete_vulnerability_validation(id, vulnerability_id, validation_id)
+
+Asset Vulnerability Validation
+
+Removes a vulnerability validation for a vulnerability from an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityResultApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+vulnerability_id = "vulnerability_id_example" # String | The identifier of the vulnerability.
+
+validation_id = 789 # Integer | The identifier of the vulnerability validation.
+
+
+begin
+ #Asset Vulnerability Validation
+ result = api_instance.delete_vulnerability_validation(id, vulnerability_id, validation_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityResultApi->delete_vulnerability_validation: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **vulnerability_id** | **String**| The identifier of the vulnerability. |
+ **validation_id** | **Integer**| The identifier of the vulnerability validation. |
+
+### Return type
+
+[**Links**](Links.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_service_vulnerabilities**
+> PageOfVulnerabilityFinding get_asset_service_vulnerabilities(id, protocol, port, opts)
+
+Asset Service Vulnerabilities
+
+Retrieves the vulnerabilities present on a service running on an asset. A finding may be `invulnerable` if all instances on the service have exceptions applied.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityResultApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+protocol = "protocol_example" # String | The protocol of the service.
+
+port = 56 # Integer | The port of the service.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Asset Service Vulnerabilities
+ result = api_instance.get_asset_service_vulnerabilities(id, protocol, port, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityResultApi->get_asset_service_vulnerabilities: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **protocol** | **String**| The protocol of the service. |
+ **port** | **Integer**| The port of the service. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerabilityFinding**](PageOfVulnerabilityFinding.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_vulnerabilities**
+> PageOfVulnerabilityFinding get_asset_vulnerabilities(id, opts)
+
+Asset Vulnerabilities
+
+Retrieves all vulnerability findings on an asset. A finding may be `invulnerable` if all instances have exceptions applied.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityResultApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+opts = {
+ page: 0, # Integer | The index of the page (zero-based) to retrieve.
+ size: 10, # Integer | The number of records per page to retrieve.
+ sort: ["sort_example"] # Array | The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+}
+
+begin
+ #Asset Vulnerabilities
+ result = api_instance.get_asset_vulnerabilities(id, opts)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityResultApi->get_asset_vulnerabilities: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **page** | **Integer**| The index of the page (zero-based) to retrieve. | [optional] [default to 0]
+ **size** | **Integer**| The number of records per page to retrieve. | [optional] [default to 10]
+ **sort** | [**Array<String>**](String.md)| The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters. | [optional]
+
+### Return type
+
+[**PageOfVulnerabilityFinding**](PageOfVulnerabilityFinding.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_asset_vulnerability**
+> VulnerabilityFinding get_asset_vulnerability(id, vulnerability_id)
+
+Asset Vulnerability
+
+Retrieves the details for a vulnerability finding on an asset.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityResultApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+vulnerability_id = "vulnerability_id_example" # String | The identifier of the vulnerability.
+
+
+begin
+ #Asset Vulnerability
+ result = api_instance.get_asset_vulnerability(id, vulnerability_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityResultApi->get_asset_vulnerability: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **vulnerability_id** | **String**| The identifier of the vulnerability. |
+
+### Return type
+
+[**VulnerabilityFinding**](VulnerabilityFinding.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_validation**
+> VulnerabilityValidationResource get_vulnerability_validation(id, vulnerability_id, validation_id)
+
+Asset Vulnerability Validation
+
+Returns a vulnerability validation for a vulnerability on an asset. The asset must be currently vulnerable to the validated vulnerable for the validation to be returned.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityResultApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+vulnerability_id = "vulnerability_id_example" # String | The identifier of the vulnerability.
+
+validation_id = 789 # Integer | The identifier of the vulnerability validation.
+
+
+begin
+ #Asset Vulnerability Validation
+ result = api_instance.get_vulnerability_validation(id, vulnerability_id, validation_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityResultApi->get_vulnerability_validation: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **vulnerability_id** | **String**| The identifier of the vulnerability. |
+ **validation_id** | **Integer**| The identifier of the vulnerability validation. |
+
+### Return type
+
+[**VulnerabilityValidationResource**](VulnerabilityValidationResource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
+# **get_vulnerability_validations**
+> ResourcesVulnerabilityValidationResource get_vulnerability_validations(id, vulnerability_id)
+
+Asset Vulnerability Validations
+
+Returns all vulnerability validations for a vulnerability on an asset. The asset must be currently vulnerable to the validated vulnerable for the validation to be returned.
+
+### Example
+```ruby
+# load the gem
+require 'rapid7_vm_console'
+
+api_instance = Rapid7VmConsole::VulnerabilityResultApi.new
+
+id = 789 # Integer | The identifier of the asset.
+
+vulnerability_id = "vulnerability_id_example" # String | The identifier of the vulnerability.
+
+
+begin
+ #Asset Vulnerability Validations
+ result = api_instance.get_vulnerability_validations(id, vulnerability_id)
+ p result
+rescue Rapid7VmConsole::ApiError => e
+ puts "Exception when calling VulnerabilityResultApi->get_vulnerability_validations: #{e}"
+end
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **Integer**| The identifier of the asset. |
+ **vulnerability_id** | **String**| The identifier of the vulnerability. |
+
+### Return type
+
+[**ResourcesVulnerabilityValidationResource**](ResourcesVulnerabilityValidationResource.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json;charset=UTF-8
+
+
+
diff --git a/docs/VulnerabilityValidationResource.md b/docs/VulnerabilityValidationResource.md
new file mode 100644
index 0000000..086d271
--- /dev/null
+++ b/docs/VulnerabilityValidationResource.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::VulnerabilityValidationResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**date** | **String** | The date and time the vulnerability was validated, in the ISO8601 format. | [optional]
+**id** | **Integer** | The identifier of the vulnerability validation. | [optional]
+**links** | [**Array<Link>**](Link.md) | | [optional]
+**source** | [**VulnerabilityValidationSource**](VulnerabilityValidationSource.md) | The source used to validate the vulnerability. | [optional]
+
+
diff --git a/docs/VulnerabilityValidationSource.md b/docs/VulnerabilityValidationSource.md
new file mode 100644
index 0000000..0d6a4cb
--- /dev/null
+++ b/docs/VulnerabilityValidationSource.md
@@ -0,0 +1,9 @@
+# Rapid7VmConsole::VulnerabilityValidationSource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**key** | **String** | The identifier or name of the exploit that was used to validate the vulnerability. | [optional]
+**name** | **String** | The name of the source used to validate the vulnerability. | [optional]
+
+
diff --git a/docs/WebApplication.md b/docs/WebApplication.md
new file mode 100644
index 0000000..e162daf
--- /dev/null
+++ b/docs/WebApplication.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::WebApplication
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Integer** | The identifier of the web application. | [optional]
+**pages** | [**Array<WebPage>**](WebPage.md) | The pages discovered on the web application. | [optional]
+**root** | **String** | The web root of the web application. | [optional]
+**virtual_host** | **String** | The virtual host of the web application. | [optional]
+
+
diff --git a/docs/WebFormAuthentication.md b/docs/WebFormAuthentication.md
new file mode 100644
index 0000000..c4a0dd8
--- /dev/null
+++ b/docs/WebFormAuthentication.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::WebFormAuthentication
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**base_url** | **String** | The base URL is the main address from which all paths in the target Web site begin. Includes the protocol. Example: http://acme.com. | [optional]
+**enabled** | **BOOLEAN** | Flag indicating whether the HTML form web authentication is enabled for the site's scans. | [optional]
+**id** | **Integer** | The identifier of the HTML form web authentication. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**login_regular_expression** | **String** | The regular expression matches the message that the Web server returns if the login attempt fails. | [optional]
+**login_url** | **String** | The login page URL contains form for logging on. Include the base URL. Example: http://acme.com/login. | [optional]
+**name** | **String** | The HTML form web authentication name. | [optional]
+**service** | **String** | Value indicating whether this web authentication configuration is for HTML form authentication or HTTP header authentication. | [optional]
+
+
diff --git a/docs/WebHeaderAuthentication.md b/docs/WebHeaderAuthentication.md
new file mode 100644
index 0000000..5748510
--- /dev/null
+++ b/docs/WebHeaderAuthentication.md
@@ -0,0 +1,15 @@
+# Rapid7VmConsole::WebHeaderAuthentication
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**base_url** | **String** | The base URL is the main address from which all paths in the target Web site begin. Includes the protocol. Example: http://acme.com. | [optional]
+**enabled** | **BOOLEAN** | Flag indicating whether the HTTP header web authentication is enabled for the site's scans. | [optional]
+**headers** | **Hash<String, String>** | A map of HTTP headers the scan engine will use when negotiating with the Web server for an \"authenticated\" page. Make sure that the session ID is valid between the time you save this ID for the site and when you start the scan. Note: This property is not returned in responses for security. | [optional]
+**id** | **Integer** | The identifier of the HTTP header web authentication. | [optional]
+**links** | [**Array<Link>**](Link.md) | Hypermedia links to corresponding or related resources. | [optional]
+**login_regular_expression** | **String** | The regular expression matches the message that the Web server returns if the login attempt fails. | [optional]
+**name** | **String** | The HTTP header web authentication name. | [optional]
+**service** | **String** | Value indicating whether this web authentication configuration is for HTML form authentication or HTTP header authentication. | [optional]
+
+
diff --git a/docs/WebPage.md b/docs/WebPage.md
new file mode 100644
index 0000000..e1d0cb3
--- /dev/null
+++ b/docs/WebPage.md
@@ -0,0 +1,10 @@
+# Rapid7VmConsole::WebPage
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**link_type** | **String** | The type of link used to traverse or detect the page. | [optional]
+**path** | **String** | The path to the page (URI). | [optional]
+**response** | **Integer** | The HTTP response code observed with retrieving the page. | [optional]
+
+
diff --git a/docs/WebSettings.md b/docs/WebSettings.md
new file mode 100644
index 0000000..98349a7
--- /dev/null
+++ b/docs/WebSettings.md
@@ -0,0 +1,11 @@
+# Rapid7VmConsole::WebSettings
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**max_threads** | **Integer** | The maximum number of request handling threads. | [optional]
+**min_threads** | **Integer** | The minimum number of request handling threads. | [optional]
+**port** | **Integer** | The port the web server is accepting requests. | [optional]
+**session_timeout** | **String** | Session timeout duration, in ISO 8601 format. For example: `\"PT10M\"`. | [optional]
+
+
diff --git a/git_push.sh b/git_push.sh
new file mode 100644
index 0000000..32db70b
--- /dev/null
+++ b/git_push.sh
@@ -0,0 +1,55 @@
+#!/bin/sh
+#
+# Generated by: https://github.com/swagger-api/swagger-codegen.git
+#
+# ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/
+#
+# Usage example: /bin/sh ./git_push.sh wing328 swagger-petstore-perl "minor update"
+
+git_user_id=$1
+git_repo_id=$2
+release_note=$3
+
+if [ "$git_user_id" = "" ]; then
+ git_user_id="rapid7"
+ echo "[INFO] No command line input provided. Set \$git_user_id to $git_user_id"
+fi
+
+if [ "$git_repo_id" = "" ]; then
+ git_repo_id="vm-console-client-ruby"
+ echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id"
+fi
+
+if [ "$release_note" = "" ]; then
+ release_note="Update generated gem to version: 0.0.1-6.5.2"
+ echo "[INFO] No command line input provided. Set \$release_note to $release_note"
+fi
+
+# Initialize the local directory as a Git repository
+git init
+
+# Adds the files in the local repository and stages them for commit.
+git add .
+
+# Commits the tracked changes and prepares them to be pushed to a remote repository.
+git commit -m "$release_note"
+
+# Sets the new remote
+git_remote=`git remote`
+if [ "$git_remote" = "" ]; then # git remote not defined
+
+ if [ "$GIT_TOKEN" = "" ]; then
+ echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment."
+ git remote add origin https://github.com/${git_user_id}/${git_repo_id}.git
+ else
+ git remote add origin https://${git_user_id}:${GIT_TOKEN}@github.com/${git_user_id}/${git_repo_id}.git
+ fi
+
+fi
+
+git pull origin master
+
+# Pushes (Forces) the changes in the local repository up to the remote repository
+echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git"
+git push origin master 2>&1 | grep -v 'To https'
+
diff --git a/lib/rapid7_vm_console.rb b/lib/rapid7_vm_console.rb
new file mode 100644
index 0000000..0c899f5
--- /dev/null
+++ b/lib/rapid7_vm_console.rb
@@ -0,0 +1,368 @@
+=begin
+#InsightVM API
+
+## Overview This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS. ## Versioning Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`. ## Specification An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
## Authentication Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`. ### 2FA This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API. ## Resources ### Naming Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` | #### Collections A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ``` #### Instances An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` | ### Common Operations #### OPTIONS All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status. ### Collection Resources Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations. #### GET The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information. #### POST The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued. #### PUT The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. #### DELETE The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. ### Instance Resources Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations. #### GET Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type. #### PUT Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource. #### POST Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint. #### PATCH The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed. #### DELETE Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`. ## Requests Unless otherwise indicated, the default request body media type is `application/json`. ### Headers Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) | ### Dates & Times Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | | ### Timezones Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`. ### Paging Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500. ### Sorting Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order. ## Responses The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. | ### Security The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` | ### Headers Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. | ### Format When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses. #### Dates & Times Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z | #### Content In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document. #### Paging The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection. #### Property Views The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ``` #### Error Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\": , \"links\" : [ { \"rel\" : \"...\", \"href\" : \"...\" } ] } ``` The `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message property is a localized message in the request client's locale (if applicable) that articulates the nature of the error. The last property is the `links` property. This may contain additional [hypermedia links](#section/Overview/Authentication) to troubleshoot. #### Search Criteria Multiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The operator is a type and property-specific operating performed on the filtered property. The valid values for fields and operators are outlined in the table below. Every filter also defines one or more values that are supplied to the operator. The valid values vary by operator and are outlined below. ##### Fields The following table outlines the search criteria fields and the available operators: | Field | Operators | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | `alternate-address-type` | `in` | | `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` | | `container-status` | `is` ` is not` | | `containers` | `are` | | `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` | | `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `cve` | `is` ` is not` ` contains` ` does not contain` | | `cvss-access-complexity` | `is` ` is not` | | `cvss-authentication-required` | `is` ` is not` | | `cvss-access-vector` | `is` ` is not` | | `cvss-availability-impact` | `is` ` is not` | | `cvss-confidentiality-impact` | `is` ` is not` | | `cvss-integrity-impact` | `is` ` is not` | | `cvss-v3-confidentiality-impact` | `is` ` is not` | | `cvss-v3-integrity-impact` | `is` ` is not` | | `cvss-v3-availability-impact` | `is` ` is not` | | `cvss-v3-attack-vector` | `is` ` is not` | | `cvss-v3-attack-complexity` | `is` ` is not` | | `cvss-v3-user-interaction` | `is` ` is not` | | `cvss-v3-privileges-required` | `is` ` is not` | | `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` | | `host-type` | `in` ` not in` | | `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` | | `ip-address-type` | `in` ` not in` | | `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` | | `open-ports` | `is` ` is not` ` in range` | | `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` | | `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `pci-compliance` | `is` | | `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` | | `service-name` | `contains` ` does not contain` | | `site-id` | `in` ` not in` | | `software` | `contains` ` does not contain` | | `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-datacenter` | `is` ` is not` | | `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-power-state` | `in` ` not in` | | `vAsset-resource-pool-path` | `contains` ` does not contain` | | `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` | | `vulnerability-cvss-v3-score` | `is` ` is not` | | `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` | | `vulnerability-exposures` | `includes` ` does not include` | | `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` | | `vulnerability-validated-status` | `are` | ##### Enumerated Properties The following fields have enumerated values: | Field | Acceptable Values | | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `alternate-address-type` | 0=IPv4, 1=IPv6 | | `containers` | 0=present, 1=not present | | `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` | | `cvss-access-complexity` | L
= LowM
= MediumH
= High
| | `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
| | `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
| | `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-availability-impact` | | | `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
| | `cvss-v3-attack-complexity` | | | `cvss-v3-user-interaction` | | | `cvss-v3-privileges-required` | | | `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | `ip-address-type` | 0=IPv4, 1=IPv6 | | `pci-compliance` | 0=fail, 1=pass | | `vulnerability-validated-status` | 0=present, 1=not present | ##### Operator Properties The following table outlines which properties are required for each operator and the appropriate data type(s): | Operator | `value` | `lower` | `upper` | | ----------------------|-----------------------|-----------------------|-----------------------| | `are` | `string` | | | | `contains` | `string` | | | | `does-not-contain` | `string` | | | | `ends with` | `string` | | | | `in` | `Array[ string ]` | | | | `in-range` | | `numeric` | `numeric` | | `includes` | `Array[ string ]` | | | | `is` | `string` | | | | `is-applied` | | | | | `is-between` | | `numeric` | `numeric` | | `is-earlier-than` | `numeric` | | | | `is-empty` | | | | | `is-greater-than` | `numeric` | | | | `is-on-or-after` | `string` (yyyy-MM-dd) | | | | `is-on-or-before` | `string` (yyyy-MM-dd) | | | | `is-not` | `string` | | | | `is-not-applied` | | | | | `is-not-empty` | | | | | `is-within-the-last` | `string` | | | | `less-than` | `string` | | | | `like` | `string` | | | | `not-contains` | `string` | | | | `not-in` | `Array[ string ]` | | | | `not-in-range` | | `numeric` | `numeric` | | `not-like` | `string` | | | | `starts-with` | `string` | | | #### Discovery Connection Search Criteria Dynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The list of supported fields vary depending on the type of discovery connection configured for the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating performed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the type of connection. Every filter also defines one or more values that are supplied to the operator. See Search Criteria Operator Properties for more information on the valid values for each operator. ##### Fields (ActiveSync) This section documents search criteria information for ActiveSync discovery connections. The discovery connections must be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. The following table outlines the search criteria fields and the available operators for ActiveSync connections: | Field | Operators | | --------------------------------- | ------------------------------------------------------------- | | `last-sync-time` | `is-within-the-last` ` is-earlier-than` | | `operating-system` | `contains` ` does-not-contain` | | `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (AWS) This section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. The following table outlines the search criteria fields and the available operators for AWS connections: | Field | Operators | | ----------------------- | ------------------------------------------------------------- | | `availability-zone` | `contains` ` does-not-contain` | | `guest-os-family` | `contains` ` does-not-contain` | | `instance-id` | `contains` ` does-not-contain` | | `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `instance-state` | `in` ` not-in` | | `instance-type` | `in` ` not-in` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `region` | `in` ` not-in` | | `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (DHCP) This section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. The following table outlines the search criteria fields and the available operators for DHCP connections: | Field | Operators | | --------------- | ------------------------------------------------------------- | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (Sonar) This section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. The following table outlines the search criteria fields and the available operators for Sonar connections: | Field | Operators | | ------------------- | -------------------- | | `search-domain` | `contains` ` is` | | `ip-address` | `in-range` ` is` | | `sonar-scan-date` | `is-within-the-last` | ##### Fields (vSphere) This section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. The following table outlines the search criteria fields and the available operators for vSphere connections: | Field | Operators | | -------------------- | ------------------------------------------------------------------------------------------ | | `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `data-center` | `is` ` is-not` | | `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `guest-os-family` | `contains` ` does-not-contain` | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `power-state` | `in` ` not-in` | | `resource-pool-path` | `contains` ` does-not-contain` | | `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Enumerated Properties (vSphere) The following fields have enumerated values: | Field | Acceptable Values | | ------------- | ------------------------------------ | | `power-state` | `poweredOn` `poweredOff` `suspended` | ## HATEOAS This API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. Hyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to the corresponding resource. The format of the hypermedia link adheres to both the {json:api} v1 \"Link Object\" and JSON Hyper-Schema \"Link Description Object\" formats. For example: ```json \"links\": [{ \"rel\": \"\", \"href\": \"\" ... }] ``` Where appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc. See the [Root](#tag/Root) resources for the entry points into API discovery.
+
+OpenAPI spec version: 3
+Contact: support@rapid7.com
+Generated by: https://github.com/swagger-api/swagger-codegen.git
+Swagger Codegen version: 2.3.0
+
+=end
+
+# Common files
+require 'rapid7_vm_console/api_client'
+require 'rapid7_vm_console/api_error'
+require 'rapid7_vm_console/version'
+require 'rapid7_vm_console/configuration'
+
+# Models
+require 'rapid7_vm_console/models/account'
+require 'rapid7_vm_console/models/additional_information'
+require 'rapid7_vm_console/models/address'
+require 'rapid7_vm_console/models/adhoc_scan'
+require 'rapid7_vm_console/models/advisory_link'
+require 'rapid7_vm_console/models/alert'
+require 'rapid7_vm_console/models/assessment_result'
+require 'rapid7_vm_console/models/asset'
+require 'rapid7_vm_console/models/asset_create'
+require 'rapid7_vm_console/models/asset_created_or_updated_reference'
+require 'rapid7_vm_console/models/asset_group'
+require 'rapid7_vm_console/models/asset_history'
+require 'rapid7_vm_console/models/asset_policy'
+require 'rapid7_vm_console/models/asset_policy_assessment'
+require 'rapid7_vm_console/models/asset_policy_item'
+require 'rapid7_vm_console/models/asset_tag'
+require 'rapid7_vm_console/models/asset_vulnerabilities'
+require 'rapid7_vm_console/models/authentication_settings'
+require 'rapid7_vm_console/models/authentication_source'
+require 'rapid7_vm_console/models/available_report_format'
+require 'rapid7_vm_console/models/backups_size'
+require 'rapid7_vm_console/models/bad_request_error'
+require 'rapid7_vm_console/models/cpu_info'
+require 'rapid7_vm_console/models/configuration'
+require 'rapid7_vm_console/models/console_command_output'
+require 'rapid7_vm_console/models/content_description'
+require 'rapid7_vm_console/models/create_authentication_source'
+require 'rapid7_vm_console/models/created_or_updated_reference'
+require 'rapid7_vm_console/models/created_reference'
+require 'rapid7_vm_console/models/created_reference_asset_group_id_link'
+require 'rapid7_vm_console/models/created_reference_credential_id_link'
+require 'rapid7_vm_console/models/created_reference_discovery_query_id_link'
+require 'rapid7_vm_console/models/created_reference_engine_id_link'
+require 'rapid7_vm_console/models/created_reference_policy_override_id_link'
+require 'rapid7_vm_console/models/created_reference_scan_id_link'
+require 'rapid7_vm_console/models/created_reference_scan_template_id_link'
+require 'rapid7_vm_console/models/created_reference_user_id_link'
+require 'rapid7_vm_console/models/created_reference_vulnerability_exception_id_link'
+require 'rapid7_vm_console/models/created_reference_vulnerability_validation_id_link'
+require 'rapid7_vm_console/models/created_referenceint_link'
+require 'rapid7_vm_console/models/criterion'
+require 'rapid7_vm_console/models/database'
+require 'rapid7_vm_console/models/database_connection_settings'
+require 'rapid7_vm_console/models/database_settings'
+require 'rapid7_vm_console/models/database_size'
+require 'rapid7_vm_console/models/discovery_asset'
+require 'rapid7_vm_console/models/discovery_connection'
+require 'rapid7_vm_console/models/discovery_search_criteria'
+require 'rapid7_vm_console/models/disk_free'
+require 'rapid7_vm_console/models/disk_info'
+require 'rapid7_vm_console/models/disk_total'
+require 'rapid7_vm_console/models/dynamic_site'
+require 'rapid7_vm_console/models/engine_pool'
+require 'rapid7_vm_console/models/environment_properties'
+require 'rapid7_vm_console/models/error'
+require 'rapid7_vm_console/models/exception_scope'
+require 'rapid7_vm_console/models/excluded_asset_groups'
+require 'rapid7_vm_console/models/excluded_scan_targets'
+require 'rapid7_vm_console/models/exploit'
+require 'rapid7_vm_console/models/exploit_source'
+require 'rapid7_vm_console/models/exploit_source_link'
+require 'rapid7_vm_console/models/features'
+require 'rapid7_vm_console/models/file'
+require 'rapid7_vm_console/models/fingerprint'
+require 'rapid7_vm_console/models/global_scan'
+require 'rapid7_vm_console/models/group_account'
+require 'rapid7_vm_console/models/host_name'
+require 'rapid7_vm_console/models/i_meta_data'
+require 'rapid7_vm_console/models/included_asset_groups'
+require 'rapid7_vm_console/models/included_scan_targets'
+require 'rapid7_vm_console/models/info'
+require 'rapid7_vm_console/models/install_size'
+require 'rapid7_vm_console/models/installation_total_size'
+require 'rapid7_vm_console/models/internal_server_error'
+require 'rapid7_vm_console/models/jvm_info'
+require 'rapid7_vm_console/models/json_node'
+require 'rapid7_vm_console/models/license'
+require 'rapid7_vm_console/models/license_limits'
+require 'rapid7_vm_console/models/license_policy_scanning'
+require 'rapid7_vm_console/models/license_policy_scanning_benchmarks'
+require 'rapid7_vm_console/models/license_reporting'
+require 'rapid7_vm_console/models/license_scanning'
+require 'rapid7_vm_console/models/link'
+require 'rapid7_vm_console/models/links'
+require 'rapid7_vm_console/models/locale_preferences'
+require 'rapid7_vm_console/models/malware_kit'
+require 'rapid7_vm_console/models/matched_solution'
+require 'rapid7_vm_console/models/memory_free'
+require 'rapid7_vm_console/models/memory_info'
+require 'rapid7_vm_console/models/memory_total'
+require 'rapid7_vm_console/models/metadata_container'
+require 'rapid7_vm_console/models/not_found_error'
+require 'rapid7_vm_console/models/operating_system'
+require 'rapid7_vm_console/models/operating_system_cpe'
+require 'rapid7_vm_console/models/pci'
+require 'rapid7_vm_console/models/page_info'
+require 'rapid7_vm_console/models/page_of_asset'
+require 'rapid7_vm_console/models/page_of_asset_group'
+require 'rapid7_vm_console/models/page_of_asset_policy'
+require 'rapid7_vm_console/models/page_of_asset_policy_item'
+require 'rapid7_vm_console/models/page_of_discovery_connection'
+require 'rapid7_vm_console/models/page_of_exploit'
+require 'rapid7_vm_console/models/page_of_global_scan'
+require 'rapid7_vm_console/models/page_of_malware_kit'
+require 'rapid7_vm_console/models/page_of_operating_system'
+require 'rapid7_vm_console/models/page_of_policy'
+require 'rapid7_vm_console/models/page_of_policy_asset'
+require 'rapid7_vm_console/models/page_of_policy_control'
+require 'rapid7_vm_console/models/page_of_policy_group'
+require 'rapid7_vm_console/models/page_of_policy_item'
+require 'rapid7_vm_console/models/page_of_policy_override'
+require 'rapid7_vm_console/models/page_of_policy_rule'
+require 'rapid7_vm_console/models/page_of_report'
+require 'rapid7_vm_console/models/page_of_scan'
+require 'rapid7_vm_console/models/page_of_site'
+require 'rapid7_vm_console/models/page_of_software'
+require 'rapid7_vm_console/models/page_of_tag'
+require 'rapid7_vm_console/models/page_of_user'
+require 'rapid7_vm_console/models/page_of_vulnerability'
+require 'rapid7_vm_console/models/page_of_vulnerability_category'
+require 'rapid7_vm_console/models/page_of_vulnerability_check'
+require 'rapid7_vm_console/models/page_of_vulnerability_exception'
+require 'rapid7_vm_console/models/page_of_vulnerability_finding'
+require 'rapid7_vm_console/models/page_of_vulnerability_reference'
+require 'rapid7_vm_console/models/policy'
+require 'rapid7_vm_console/models/policy_asset'
+require 'rapid7_vm_console/models/policy_benchmark'
+require 'rapid7_vm_console/models/policy_control'
+require 'rapid7_vm_console/models/policy_group'
+require 'rapid7_vm_console/models/policy_item'
+require 'rapid7_vm_console/models/policy_metadata_resource'
+require 'rapid7_vm_console/models/policy_override'
+require 'rapid7_vm_console/models/policy_override_reviewer'
+require 'rapid7_vm_console/models/policy_override_scope'
+require 'rapid7_vm_console/models/policy_override_submitter'
+require 'rapid7_vm_console/models/policy_rule'
+require 'rapid7_vm_console/models/policy_rule_assessment_resource'
+require 'rapid7_vm_console/models/policy_summary_resource'
+require 'rapid7_vm_console/models/privileges'
+require 'rapid7_vm_console/models/reference_with_alert_id_link'
+require 'rapid7_vm_console/models/reference_with_asset_id_link'
+require 'rapid7_vm_console/models/reference_with_endpoint_id_link'
+require 'rapid7_vm_console/models/reference_with_engine_id_link'
+require 'rapid7_vm_console/models/reference_with_report_id_link'
+require 'rapid7_vm_console/models/reference_with_scan_schedule_id_link'
+require 'rapid7_vm_console/models/reference_with_site_id_link'
+require 'rapid7_vm_console/models/reference_with_tag_id_link'
+require 'rapid7_vm_console/models/reference_with_user_id_link'
+require 'rapid7_vm_console/models/references_with_asset_group_id_link'
+require 'rapid7_vm_console/models/references_with_asset_id_link'
+require 'rapid7_vm_console/models/references_with_engine_id_link'
+require 'rapid7_vm_console/models/references_with_reference_with_endpoint_id_link_service_link'
+require 'rapid7_vm_console/models/references_with_site_id_link'
+require 'rapid7_vm_console/models/references_with_solution_natural_id_link'
+require 'rapid7_vm_console/models/references_with_tag_id_link'
+require 'rapid7_vm_console/models/references_with_user_id_link'
+require 'rapid7_vm_console/models/references_with_vulnerability_check_id_link'
+require 'rapid7_vm_console/models/references_with_vulnerability_check_type_id_link'
+require 'rapid7_vm_console/models/references_with_vulnerability_natural_id_link'
+require 'rapid7_vm_console/models/references_with_web_application_id_link'
+require 'rapid7_vm_console/models/repeat_resource'
+require 'rapid7_vm_console/models/repeat_schedule'
+require 'rapid7_vm_console/models/report'
+require 'rapid7_vm_console/models/report_config_category_filters'
+require 'rapid7_vm_console/models/report_config_database_credentials_resource'
+require 'rapid7_vm_console/models/report_config_database_resource'
+require 'rapid7_vm_console/models/report_config_filters_resource'
+require 'rapid7_vm_console/models/report_config_scope_resource'
+require 'rapid7_vm_console/models/report_email'
+require 'rapid7_vm_console/models/report_email_smtp'
+require 'rapid7_vm_console/models/report_filters'
+require 'rapid7_vm_console/models/report_frequency'
+require 'rapid7_vm_console/models/report_instance'
+require 'rapid7_vm_console/models/report_scope'
+require 'rapid7_vm_console/models/report_size'
+require 'rapid7_vm_console/models/report_storage'
+require 'rapid7_vm_console/models/report_template'
+require 'rapid7_vm_console/models/resources_alert'
+require 'rapid7_vm_console/models/resources_asset_group'
+require 'rapid7_vm_console/models/resources_asset_tag'
+require 'rapid7_vm_console/models/resources_authentication_source'
+require 'rapid7_vm_console/models/resources_available_report_format'
+require 'rapid7_vm_console/models/resources_configuration'
+require 'rapid7_vm_console/models/resources_database'
+require 'rapid7_vm_console/models/resources_discovery_asset'
+require 'rapid7_vm_console/models/resources_engine_pool'
+require 'rapid7_vm_console/models/resources_file'
+require 'rapid7_vm_console/models/resources_group_account'
+require 'rapid7_vm_console/models/resources_matched_solution'
+require 'rapid7_vm_console/models/resources_policy_override'
+require 'rapid7_vm_console/models/resources_report_instance'
+require 'rapid7_vm_console/models/resources_report_template'
+require 'rapid7_vm_console/models/resources_role'
+require 'rapid7_vm_console/models/resources_scan_engine'
+require 'rapid7_vm_console/models/resources_scan_schedule'
+require 'rapid7_vm_console/models/resources_scan_template'
+require 'rapid7_vm_console/models/resources_shared_credential'
+require 'rapid7_vm_console/models/resources_site_credential'
+require 'rapid7_vm_console/models/resources_site_shared_credential'
+require 'rapid7_vm_console/models/resources_smtp_alert'
+require 'rapid7_vm_console/models/resources_snmp_alert'
+require 'rapid7_vm_console/models/resources_software'
+require 'rapid7_vm_console/models/resources_solution'
+require 'rapid7_vm_console/models/resources_sonar_query'
+require 'rapid7_vm_console/models/resources_syslog_alert'
+require 'rapid7_vm_console/models/resources_tag'
+require 'rapid7_vm_console/models/resources_user'
+require 'rapid7_vm_console/models/resources_user_account'
+require 'rapid7_vm_console/models/resources_vulnerability_validation_resource'
+require 'rapid7_vm_console/models/resources_web_form_authentication'
+require 'rapid7_vm_console/models/resources_web_header_authentication'
+require 'rapid7_vm_console/models/review'
+require 'rapid7_vm_console/models/risk_modifier_settings'
+require 'rapid7_vm_console/models/risk_settings'
+require 'rapid7_vm_console/models/role'
+require 'rapid7_vm_console/models/scan'
+require 'rapid7_vm_console/models/scan_engine'
+require 'rapid7_vm_console/models/scan_events'
+require 'rapid7_vm_console/models/scan_schedule'
+require 'rapid7_vm_console/models/scan_scope'
+require 'rapid7_vm_console/models/scan_settings'
+require 'rapid7_vm_console/models/scan_size'
+require 'rapid7_vm_console/models/scan_targets_resource'
+require 'rapid7_vm_console/models/scan_template'
+require 'rapid7_vm_console/models/scan_template_asset_discovery'
+require 'rapid7_vm_console/models/scan_template_database'
+require 'rapid7_vm_console/models/scan_template_discovery'
+require 'rapid7_vm_console/models/scan_template_discovery_performance'
+require 'rapid7_vm_console/models/scan_template_discovery_performance_packets_rate'
+require 'rapid7_vm_console/models/scan_template_discovery_performance_parallelism'
+require 'rapid7_vm_console/models/scan_template_discovery_performance_scan_delay'
+require 'rapid7_vm_console/models/scan_template_discovery_performance_timeout'
+require 'rapid7_vm_console/models/scan_template_service_discovery'
+require 'rapid7_vm_console/models/scan_template_service_discovery_tcp'
+require 'rapid7_vm_console/models/scan_template_service_discovery_udp'
+require 'rapid7_vm_console/models/scan_template_vulnerability_check_categories'
+require 'rapid7_vm_console/models/scan_template_vulnerability_check_individual'
+require 'rapid7_vm_console/models/scan_template_vulnerability_checks'
+require 'rapid7_vm_console/models/scan_template_web_spider'
+require 'rapid7_vm_console/models/scan_template_web_spider_paths'
+require 'rapid7_vm_console/models/scan_template_web_spider_patterns'
+require 'rapid7_vm_console/models/scan_template_web_spider_performance'
+require 'rapid7_vm_console/models/scheduled_scan_targets'
+require 'rapid7_vm_console/models/search_criteria'
+require 'rapid7_vm_console/models/service'
+require 'rapid7_vm_console/models/service_link'
+require 'rapid7_vm_console/models/service_unavailable_error'
+require 'rapid7_vm_console/models/settings'
+require 'rapid7_vm_console/models/shared_credential'
+require 'rapid7_vm_console/models/shared_credential_account'
+require 'rapid7_vm_console/models/site'
+require 'rapid7_vm_console/models/site_create_resource'
+require 'rapid7_vm_console/models/site_credential'
+require 'rapid7_vm_console/models/site_discovery_connection'
+require 'rapid7_vm_console/models/site_organization'
+require 'rapid7_vm_console/models/site_shared_credential'
+require 'rapid7_vm_console/models/site_update_resource'
+require 'rapid7_vm_console/models/smtp_alert'
+require 'rapid7_vm_console/models/smtp_settings'
+require 'rapid7_vm_console/models/snmp_alert'
+require 'rapid7_vm_console/models/software'
+require 'rapid7_vm_console/models/software_cpe'
+require 'rapid7_vm_console/models/solution'
+require 'rapid7_vm_console/models/solution_match'
+require 'rapid7_vm_console/models/sonar_criteria'
+require 'rapid7_vm_console/models/sonar_criterion'
+require 'rapid7_vm_console/models/sonar_query'
+require 'rapid7_vm_console/models/static_site'
+require 'rapid7_vm_console/models/steps'
+require 'rapid7_vm_console/models/submission'
+require 'rapid7_vm_console/models/summary'
+require 'rapid7_vm_console/models/swagger_discovery_search_criteria_filter'
+require 'rapid7_vm_console/models/swagger_search_criteria_filter'
+require 'rapid7_vm_console/models/syslog_alert'
+require 'rapid7_vm_console/models/tag'
+require 'rapid7_vm_console/models/tag_asset_source'
+require 'rapid7_vm_console/models/tag_link'
+require 'rapid7_vm_console/models/tagged_asset_references'
+require 'rapid7_vm_console/models/telnet'
+require 'rapid7_vm_console/models/token_resource'
+require 'rapid7_vm_console/models/unauthorized_error'
+require 'rapid7_vm_console/models/unique_id'
+require 'rapid7_vm_console/models/update_id'
+require 'rapid7_vm_console/models/update_info'
+require 'rapid7_vm_console/models/update_settings'
+require 'rapid7_vm_console/models/user'
+require 'rapid7_vm_console/models/user_account'
+require 'rapid7_vm_console/models/user_create_role'
+require 'rapid7_vm_console/models/user_role'
+require 'rapid7_vm_console/models/version_info'
+require 'rapid7_vm_console/models/vulnerabilities'
+require 'rapid7_vm_console/models/vulnerability'
+require 'rapid7_vm_console/models/vulnerability_category'
+require 'rapid7_vm_console/models/vulnerability_check'
+require 'rapid7_vm_console/models/vulnerability_check_type'
+require 'rapid7_vm_console/models/vulnerability_cvss'
+require 'rapid7_vm_console/models/vulnerability_cvss_v2'
+require 'rapid7_vm_console/models/vulnerability_cvss_v3'
+require 'rapid7_vm_console/models/vulnerability_events'
+require 'rapid7_vm_console/models/vulnerability_exception'
+require 'rapid7_vm_console/models/vulnerability_finding'
+require 'rapid7_vm_console/models/vulnerability_reference'
+require 'rapid7_vm_console/models/vulnerability_validation_resource'
+require 'rapid7_vm_console/models/vulnerability_validation_source'
+require 'rapid7_vm_console/models/web_application'
+require 'rapid7_vm_console/models/web_form_authentication'
+require 'rapid7_vm_console/models/web_header_authentication'
+require 'rapid7_vm_console/models/web_page'
+require 'rapid7_vm_console/models/web_settings'
+
+# APIs
+require 'rapid7_vm_console/api/administration_api'
+require 'rapid7_vm_console/api/asset_api'
+require 'rapid7_vm_console/api/asset_discovery_api'
+require 'rapid7_vm_console/api/asset_group_api'
+require 'rapid7_vm_console/api/credential_api'
+require 'rapid7_vm_console/api/policy_api'
+require 'rapid7_vm_console/api/policy_override_api'
+require 'rapid7_vm_console/api/remediation_api'
+require 'rapid7_vm_console/api/report_api'
+require 'rapid7_vm_console/api/root_api'
+require 'rapid7_vm_console/api/scan_api'
+require 'rapid7_vm_console/api/scan_engine_api'
+require 'rapid7_vm_console/api/scan_template_api'
+require 'rapid7_vm_console/api/site_api'
+require 'rapid7_vm_console/api/tag_api'
+require 'rapid7_vm_console/api/user_api'
+require 'rapid7_vm_console/api/vulnerability_api'
+require 'rapid7_vm_console/api/vulnerability_check_api'
+require 'rapid7_vm_console/api/vulnerability_exception_api'
+require 'rapid7_vm_console/api/vulnerability_result_api'
+
+module Rapid7VmConsole
+ class << self
+ # Customize default settings for the SDK using block.
+ # Rapid7VmConsole.configure do |config|
+ # config.username = "xxx"
+ # config.password = "xxx"
+ # end
+ # If no block given, return the default Configuration object.
+ def configure
+ if block_given?
+ yield(Configuration.default)
+ else
+ Configuration.default
+ end
+ end
+ end
+end
diff --git a/lib/rapid7_vm_console/api/administration_api.rb b/lib/rapid7_vm_console/api/administration_api.rb
new file mode 100644
index 0000000..4d872e3
--- /dev/null
+++ b/lib/rapid7_vm_console/api/administration_api.rb
@@ -0,0 +1,325 @@
+=begin
+#InsightVM API
+
+## Overview This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS. ## Versioning Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`. ## Specification An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
## Authentication Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`. ### 2FA This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API. ## Resources ### Naming Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` | #### Collections A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ``` #### Instances An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` | ### Common Operations #### OPTIONS All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status. ### Collection Resources Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations. #### GET The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information. #### POST The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued. #### PUT The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. #### DELETE The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. ### Instance Resources Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations. #### GET Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type. #### PUT Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource. #### POST Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint. #### PATCH The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed. #### DELETE Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`. ## Requests Unless otherwise indicated, the default request body media type is `application/json`. ### Headers Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) | ### Dates & Times Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | | ### Timezones Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`. ### Paging Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500. ### Sorting Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order. ## Responses The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. | ### Security The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` | ### Headers Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. | ### Format When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses. #### Dates & Times Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z | #### Content In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document. #### Paging The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection. #### Property Views The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ``` #### Error Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\": , \"links\" : [ { \"rel\" : \"...\", \"href\" : \"...\" } ] } ``` The `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message property is a localized message in the request client's locale (if applicable) that articulates the nature of the error. The last property is the `links` property. This may contain additional [hypermedia links](#section/Overview/Authentication) to troubleshoot. #### Search Criteria Multiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The operator is a type and property-specific operating performed on the filtered property. The valid values for fields and operators are outlined in the table below. Every filter also defines one or more values that are supplied to the operator. The valid values vary by operator and are outlined below. ##### Fields The following table outlines the search criteria fields and the available operators: | Field | Operators | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | `alternate-address-type` | `in` | | `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` | | `container-status` | `is` ` is not` | | `containers` | `are` | | `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` | | `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `cve` | `is` ` is not` ` contains` ` does not contain` | | `cvss-access-complexity` | `is` ` is not` | | `cvss-authentication-required` | `is` ` is not` | | `cvss-access-vector` | `is` ` is not` | | `cvss-availability-impact` | `is` ` is not` | | `cvss-confidentiality-impact` | `is` ` is not` | | `cvss-integrity-impact` | `is` ` is not` | | `cvss-v3-confidentiality-impact` | `is` ` is not` | | `cvss-v3-integrity-impact` | `is` ` is not` | | `cvss-v3-availability-impact` | `is` ` is not` | | `cvss-v3-attack-vector` | `is` ` is not` | | `cvss-v3-attack-complexity` | `is` ` is not` | | `cvss-v3-user-interaction` | `is` ` is not` | | `cvss-v3-privileges-required` | `is` ` is not` | | `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` | | `host-type` | `in` ` not in` | | `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` | | `ip-address-type` | `in` ` not in` | | `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` | | `open-ports` | `is` ` is not` ` in range` | | `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` | | `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `pci-compliance` | `is` | | `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` | | `service-name` | `contains` ` does not contain` | | `site-id` | `in` ` not in` | | `software` | `contains` ` does not contain` | | `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-datacenter` | `is` ` is not` | | `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-power-state` | `in` ` not in` | | `vAsset-resource-pool-path` | `contains` ` does not contain` | | `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` | | `vulnerability-cvss-v3-score` | `is` ` is not` | | `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` | | `vulnerability-exposures` | `includes` ` does not include` | | `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` | | `vulnerability-validated-status` | `are` | ##### Enumerated Properties The following fields have enumerated values: | Field | Acceptable Values | | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `alternate-address-type` | 0=IPv4, 1=IPv6 | | `containers` | 0=present, 1=not present | | `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` | | `cvss-access-complexity` | L
= LowM
= MediumH
= High
| | `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
| | `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
| | `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-availability-impact` | | | `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
| | `cvss-v3-attack-complexity` | | | `cvss-v3-user-interaction` | | | `cvss-v3-privileges-required` | | | `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | `ip-address-type` | 0=IPv4, 1=IPv6 | | `pci-compliance` | 0=fail, 1=pass | | `vulnerability-validated-status` | 0=present, 1=not present | ##### Operator Properties The following table outlines which properties are required for each operator and the appropriate data type(s): | Operator | `value` | `lower` | `upper` | | ----------------------|-----------------------|-----------------------|-----------------------| | `are` | `string` | | | | `contains` | `string` | | | | `does-not-contain` | `string` | | | | `ends with` | `string` | | | | `in` | `Array[ string ]` | | | | `in-range` | | `numeric` | `numeric` | | `includes` | `Array[ string ]` | | | | `is` | `string` | | | | `is-applied` | | | | | `is-between` | | `numeric` | `numeric` | | `is-earlier-than` | `numeric` | | | | `is-empty` | | | | | `is-greater-than` | `numeric` | | | | `is-on-or-after` | `string` (yyyy-MM-dd) | | | | `is-on-or-before` | `string` (yyyy-MM-dd) | | | | `is-not` | `string` | | | | `is-not-applied` | | | | | `is-not-empty` | | | | | `is-within-the-last` | `string` | | | | `less-than` | `string` | | | | `like` | `string` | | | | `not-contains` | `string` | | | | `not-in` | `Array[ string ]` | | | | `not-in-range` | | `numeric` | `numeric` | | `not-like` | `string` | | | | `starts-with` | `string` | | | #### Discovery Connection Search Criteria Dynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The list of supported fields vary depending on the type of discovery connection configured for the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating performed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the type of connection. Every filter also defines one or more values that are supplied to the operator. See Search Criteria Operator Properties for more information on the valid values for each operator. ##### Fields (ActiveSync) This section documents search criteria information for ActiveSync discovery connections. The discovery connections must be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. The following table outlines the search criteria fields and the available operators for ActiveSync connections: | Field | Operators | | --------------------------------- | ------------------------------------------------------------- | | `last-sync-time` | `is-within-the-last` ` is-earlier-than` | | `operating-system` | `contains` ` does-not-contain` | | `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (AWS) This section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. The following table outlines the search criteria fields and the available operators for AWS connections: | Field | Operators | | ----------------------- | ------------------------------------------------------------- | | `availability-zone` | `contains` ` does-not-contain` | | `guest-os-family` | `contains` ` does-not-contain` | | `instance-id` | `contains` ` does-not-contain` | | `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `instance-state` | `in` ` not-in` | | `instance-type` | `in` ` not-in` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `region` | `in` ` not-in` | | `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (DHCP) This section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. The following table outlines the search criteria fields and the available operators for DHCP connections: | Field | Operators | | --------------- | ------------------------------------------------------------- | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (Sonar) This section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. The following table outlines the search criteria fields and the available operators for Sonar connections: | Field | Operators | | ------------------- | -------------------- | | `search-domain` | `contains` ` is` | | `ip-address` | `in-range` ` is` | | `sonar-scan-date` | `is-within-the-last` | ##### Fields (vSphere) This section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. The following table outlines the search criteria fields and the available operators for vSphere connections: | Field | Operators | | -------------------- | ------------------------------------------------------------------------------------------ | | `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `data-center` | `is` ` is-not` | | `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `guest-os-family` | `contains` ` does-not-contain` | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `power-state` | `in` ` not-in` | | `resource-pool-path` | `contains` ` does-not-contain` | | `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Enumerated Properties (vSphere) The following fields have enumerated values: | Field | Acceptable Values | | ------------- | ------------------------------------ | | `power-state` | `poweredOn` `poweredOff` `suspended` | ## HATEOAS This API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. Hyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to the corresponding resource. The format of the hypermedia link adheres to both the {json:api} v1 \"Link Object\" and JSON Hyper-Schema \"Link Description Object\" formats. For example: ```json \"links\": [{ \"rel\": \"\", \"href\": \"\" ... }] ``` Where appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc. See the [Root](#tag/Root) resources for the entry points into API discovery.
+
+OpenAPI spec version: 3
+Contact: support@rapid7.com
+Generated by: https://github.com/swagger-api/swagger-codegen.git
+Swagger Codegen version: 2.3.0
+
+=end
+
+require "uri"
+
+module Rapid7VmConsole
+ class AdministrationApi
+ attr_accessor :api_client
+
+ def initialize(api_client = ApiClient.default)
+ @api_client = api_client
+ end
+
+ # License
+ # Licenses the product with an activation key or a provided license file. If both are provided, the license file is preferred. Global Administrator
+ # @param [Hash] opts the optional parameters
+ # @option opts [File] :license The contents of a license (.lic) file.
+ # @option opts [String] :key A license activation key.
+ # @return [Links]
+ def activate_license(opts = {})
+ data, _status_code, _headers = activate_license_with_http_info(opts)
+ return data
+ end
+
+ # License
+ # Licenses the product with an activation key or a provided license file. If both are provided, the license file is preferred. <span class=\"authorization\">Global Administrator</span>
+ # @param [Hash] opts the optional parameters
+ # @option opts [File] :license The contents of a license (.lic) file.
+ # @option opts [String] :key A license activation key.
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def activate_license_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AdministrationApi.activate_license ..."
+ end
+ # resource path
+ local_var_path = "/api/3/administration/license"
+
+ # query parameters
+ query_params = {}
+ query_params[:'key'] = opts[:'key'] if !opts[:'key'].nil?
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['multipart/form-data'])
+
+ # form parameters
+ form_params = {}
+ form_params["license"] = opts[:'license'] if !opts[:'license'].nil?
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AdministrationApi#activate_license\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Console Commands
+ # Executes a console command against the Security Console. Global Administrator
+ # @param [Hash] opts the optional parameters
+ # @option opts [String] :param0 The console command to execute.
+ # @return [ConsoleCommandOutput]
+ def execute_command(opts = {})
+ data, _status_code, _headers = execute_command_with_http_info(opts)
+ return data
+ end
+
+ # Console Commands
+ # Executes a console command against the Security Console. <span class=\"authorization\">Global Administrator</span>
+ # @param [Hash] opts the optional parameters
+ # @option opts [String] :param0 The console command to execute.
+ # @return [Array<(ConsoleCommandOutput, Fixnum, Hash)>] ConsoleCommandOutput data, response status code and response headers
+ def execute_command_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AdministrationApi.execute_command ..."
+ end
+ # resource path
+ local_var_path = "/api/3/administration/commands"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param0'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ConsoleCommandOutput')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AdministrationApi#execute_command\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Information
+ # Returns system details, including host and version information.
+ # @param [Hash] opts the optional parameters
+ # @return [Info]
+ def get_info(opts = {})
+ data, _status_code, _headers = get_info_with_http_info(opts)
+ return data
+ end
+
+ # Information
+ # Returns system details, including host and version information.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Info, Fixnum, Hash)>] Info data, response status code and response headers
+ def get_info_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AdministrationApi.get_info ..."
+ end
+ # resource path
+ local_var_path = "/api/3/administration/info"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Info')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AdministrationApi#get_info\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # License
+ # Returns the enabled features and limits of the current license. Global Administrator
+ # @param [Hash] opts the optional parameters
+ # @return [License]
+ def get_license(opts = {})
+ data, _status_code, _headers = get_license_with_http_info(opts)
+ return data
+ end
+
+ # License
+ # Returns the enabled features and limits of the current license. <span class=\"authorization\">Global Administrator</span>
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(License, Fixnum, Hash)>] License data, response status code and response headers
+ def get_license_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AdministrationApi.get_license ..."
+ end
+ # resource path
+ local_var_path = "/api/3/administration/license"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'License')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AdministrationApi#get_license\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Properties
+ # Returns system details, including host and version information.
+ # @param [Hash] opts the optional parameters
+ # @return [EnvironmentProperties]
+ def get_properties(opts = {})
+ data, _status_code, _headers = get_properties_with_http_info(opts)
+ return data
+ end
+
+ # Properties
+ # Returns system details, including host and version information.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(EnvironmentProperties, Fixnum, Hash)>] EnvironmentProperties data, response status code and response headers
+ def get_properties_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AdministrationApi.get_properties ..."
+ end
+ # resource path
+ local_var_path = "/api/3/administration/properties"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'EnvironmentProperties')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AdministrationApi#get_properties\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Settings
+ # Returns the current administration settings. Global Administrator
+ # @param [Hash] opts the optional parameters
+ # @return [Settings]
+ def get_settings(opts = {})
+ data, _status_code, _headers = get_settings_with_http_info(opts)
+ return data
+ end
+
+ # Settings
+ # Returns the current administration settings. <span class=\"authorization\">Global Administrator</span>
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Settings, Fixnum, Hash)>] Settings data, response status code and response headers
+ def get_settings_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AdministrationApi.get_settings ..."
+ end
+ # resource path
+ local_var_path = "/api/3/administration/settings"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Settings')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AdministrationApi#get_settings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+ end
+end
diff --git a/lib/rapid7_vm_console/api/asset_api.rb b/lib/rapid7_vm_console/api/asset_api.rb
new file mode 100644
index 0000000..b97a90b
--- /dev/null
+++ b/lib/rapid7_vm_console/api/asset_api.rb
@@ -0,0 +1,1548 @@
+=begin
+#InsightVM API
+
+## Overview This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS. ## Versioning Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`. ## Specification An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
## Authentication Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`. ### 2FA This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API. ## Resources ### Naming Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` | #### Collections A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ``` #### Instances An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` | ### Common Operations #### OPTIONS All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status. ### Collection Resources Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations. #### GET The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information. #### POST The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued. #### PUT The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. #### DELETE The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. ### Instance Resources Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations. #### GET Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type. #### PUT Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource. #### POST Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint. #### PATCH The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed. #### DELETE Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`. ## Requests Unless otherwise indicated, the default request body media type is `application/json`. ### Headers Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) | ### Dates & Times Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | | ### Timezones Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`. ### Paging Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500. ### Sorting Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order. ## Responses The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. | ### Security The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` | ### Headers Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. | ### Format When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses. #### Dates & Times Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z | #### Content In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document. #### Paging The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection. #### Property Views The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ``` #### Error Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\": , \"links\" : [ { \"rel\" : \"...\", \"href\" : \"...\" } ] } ``` The `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message property is a localized message in the request client's locale (if applicable) that articulates the nature of the error. The last property is the `links` property. This may contain additional [hypermedia links](#section/Overview/Authentication) to troubleshoot. #### Search Criteria Multiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The operator is a type and property-specific operating performed on the filtered property. The valid values for fields and operators are outlined in the table below. Every filter also defines one or more values that are supplied to the operator. The valid values vary by operator and are outlined below. ##### Fields The following table outlines the search criteria fields and the available operators: | Field | Operators | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | `alternate-address-type` | `in` | | `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` | | `container-status` | `is` ` is not` | | `containers` | `are` | | `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` | | `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `cve` | `is` ` is not` ` contains` ` does not contain` | | `cvss-access-complexity` | `is` ` is not` | | `cvss-authentication-required` | `is` ` is not` | | `cvss-access-vector` | `is` ` is not` | | `cvss-availability-impact` | `is` ` is not` | | `cvss-confidentiality-impact` | `is` ` is not` | | `cvss-integrity-impact` | `is` ` is not` | | `cvss-v3-confidentiality-impact` | `is` ` is not` | | `cvss-v3-integrity-impact` | `is` ` is not` | | `cvss-v3-availability-impact` | `is` ` is not` | | `cvss-v3-attack-vector` | `is` ` is not` | | `cvss-v3-attack-complexity` | `is` ` is not` | | `cvss-v3-user-interaction` | `is` ` is not` | | `cvss-v3-privileges-required` | `is` ` is not` | | `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` | | `host-type` | `in` ` not in` | | `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` | | `ip-address-type` | `in` ` not in` | | `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` | | `open-ports` | `is` ` is not` ` in range` | | `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` | | `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `pci-compliance` | `is` | | `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` | | `service-name` | `contains` ` does not contain` | | `site-id` | `in` ` not in` | | `software` | `contains` ` does not contain` | | `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-datacenter` | `is` ` is not` | | `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-power-state` | `in` ` not in` | | `vAsset-resource-pool-path` | `contains` ` does not contain` | | `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` | | `vulnerability-cvss-v3-score` | `is` ` is not` | | `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` | | `vulnerability-exposures` | `includes` ` does not include` | | `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` | | `vulnerability-validated-status` | `are` | ##### Enumerated Properties The following fields have enumerated values: | Field | Acceptable Values | | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `alternate-address-type` | 0=IPv4, 1=IPv6 | | `containers` | 0=present, 1=not present | | `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` | | `cvss-access-complexity` | L
= LowM
= MediumH
= High
| | `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
| | `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
| | `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-availability-impact` | | | `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
| | `cvss-v3-attack-complexity` | | | `cvss-v3-user-interaction` | | | `cvss-v3-privileges-required` | | | `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | `ip-address-type` | 0=IPv4, 1=IPv6 | | `pci-compliance` | 0=fail, 1=pass | | `vulnerability-validated-status` | 0=present, 1=not present | ##### Operator Properties The following table outlines which properties are required for each operator and the appropriate data type(s): | Operator | `value` | `lower` | `upper` | | ----------------------|-----------------------|-----------------------|-----------------------| | `are` | `string` | | | | `contains` | `string` | | | | `does-not-contain` | `string` | | | | `ends with` | `string` | | | | `in` | `Array[ string ]` | | | | `in-range` | | `numeric` | `numeric` | | `includes` | `Array[ string ]` | | | | `is` | `string` | | | | `is-applied` | | | | | `is-between` | | `numeric` | `numeric` | | `is-earlier-than` | `numeric` | | | | `is-empty` | | | | | `is-greater-than` | `numeric` | | | | `is-on-or-after` | `string` (yyyy-MM-dd) | | | | `is-on-or-before` | `string` (yyyy-MM-dd) | | | | `is-not` | `string` | | | | `is-not-applied` | | | | | `is-not-empty` | | | | | `is-within-the-last` | `string` | | | | `less-than` | `string` | | | | `like` | `string` | | | | `not-contains` | `string` | | | | `not-in` | `Array[ string ]` | | | | `not-in-range` | | `numeric` | `numeric` | | `not-like` | `string` | | | | `starts-with` | `string` | | | #### Discovery Connection Search Criteria Dynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The list of supported fields vary depending on the type of discovery connection configured for the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating performed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the type of connection. Every filter also defines one or more values that are supplied to the operator. See Search Criteria Operator Properties for more information on the valid values for each operator. ##### Fields (ActiveSync) This section documents search criteria information for ActiveSync discovery connections. The discovery connections must be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. The following table outlines the search criteria fields and the available operators for ActiveSync connections: | Field | Operators | | --------------------------------- | ------------------------------------------------------------- | | `last-sync-time` | `is-within-the-last` ` is-earlier-than` | | `operating-system` | `contains` ` does-not-contain` | | `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (AWS) This section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. The following table outlines the search criteria fields and the available operators for AWS connections: | Field | Operators | | ----------------------- | ------------------------------------------------------------- | | `availability-zone` | `contains` ` does-not-contain` | | `guest-os-family` | `contains` ` does-not-contain` | | `instance-id` | `contains` ` does-not-contain` | | `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `instance-state` | `in` ` not-in` | | `instance-type` | `in` ` not-in` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `region` | `in` ` not-in` | | `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (DHCP) This section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. The following table outlines the search criteria fields and the available operators for DHCP connections: | Field | Operators | | --------------- | ------------------------------------------------------------- | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (Sonar) This section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. The following table outlines the search criteria fields and the available operators for Sonar connections: | Field | Operators | | ------------------- | -------------------- | | `search-domain` | `contains` ` is` | | `ip-address` | `in-range` ` is` | | `sonar-scan-date` | `is-within-the-last` | ##### Fields (vSphere) This section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. The following table outlines the search criteria fields and the available operators for vSphere connections: | Field | Operators | | -------------------- | ------------------------------------------------------------------------------------------ | | `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `data-center` | `is` ` is-not` | | `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `guest-os-family` | `contains` ` does-not-contain` | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `power-state` | `in` ` not-in` | | `resource-pool-path` | `contains` ` does-not-contain` | | `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Enumerated Properties (vSphere) The following fields have enumerated values: | Field | Acceptable Values | | ------------- | ------------------------------------ | | `power-state` | `poweredOn` `poweredOff` `suspended` | ## HATEOAS This API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. Hyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to the corresponding resource. The format of the hypermedia link adheres to both the {json:api} v1 \"Link Object\" and JSON Hyper-Schema \"Link Description Object\" formats. For example: ```json \"links\": [{ \"rel\": \"\", \"href\": \"\" ... }] ``` Where appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc. See the [Root](#tag/Root) resources for the entry points into API discovery.
+
+OpenAPI spec version: 3
+Contact: support@rapid7.com
+Generated by: https://github.com/swagger-api/swagger-codegen.git
+Swagger Codegen version: 2.3.0
+
+=end
+
+require "uri"
+
+module Rapid7VmConsole
+ class AssetApi
+ attr_accessor :api_client
+
+ def initialize(api_client = ApiClient.default)
+ @api_client = api_client
+ end
+
+ # Asset Tag
+ # Assigns the specified tag to the asset.
+ # @param id The identifier of the asset.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def add_asset_tag(id, tag_id, opts = {})
+ data, _status_code, _headers = add_asset_tag_with_http_info(id, tag_id, opts)
+ return data
+ end
+
+ # Asset Tag
+ # Assigns the specified tag to the asset.
+ # @param id The identifier of the asset.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def add_asset_tag_with_http_info(id, tag_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.add_asset_tag ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.add_asset_tag"
+ end
+ # verify the required parameter 'tag_id' is set
+ if @api_client.config.client_side_validation && tag_id.nil?
+ fail ArgumentError, "Missing the required parameter 'tag_id' when calling AssetApi.add_asset_tag"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/tags/{tagId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'tagId' + '}', tag_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#add_asset_tag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Assets
+ # Creates or updates an asset with the specified details.
+ # @param id The identifier of the site.
+ # @param [Hash] opts the optional parameters
+ # @option opts [AssetCreate] :param1 The details of the asset being added or updated. The operating system can be specified in one of three ways, with the order of precedence: `\"osFingerprint\"`, `\"os\"`, `\"cpe\"`
+ # @return [CreatedReference]
+ def create_asset(id, opts = {})
+ data, _status_code, _headers = create_asset_with_http_info(id, opts)
+ return data
+ end
+
+ # Assets
+ # Creates or updates an asset with the specified details.
+ # @param id The identifier of the site.
+ # @param [Hash] opts the optional parameters
+ # @option opts [AssetCreate] :param1 The details of the asset being added or updated. The operating system can be specified in one of three ways, with the order of precedence: `\"osFingerprint\"`, `\"os\"`, `\"cpe\"`
+ # @return [Array<(CreatedReference, Fixnum, Hash)>] CreatedReference data, response status code and response headers
+ def create_asset_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.create_asset ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.create_asset"
+ end
+ # resource path
+ local_var_path = "/api/3/sites/{id}/assets".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param1'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'CreatedReference')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#create_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset
+ # Deletes the specified asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def delete_asset(id, opts = {})
+ data, _status_code, _headers = delete_asset_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset
+ # Deletes the specified asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def delete_asset_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.delete_asset ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.delete_asset"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#delete_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Search
+ # Returns all assets for which you have access that match the given search criteria.
+ # @param param1 param1
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve. (default to 0)
+ # @option opts [Integer] :size The number of records per page to retrieve. (default to 10)
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [PageOfAsset]
+ def find_assets(param1, opts = {})
+ data, _status_code, _headers = find_assets_with_http_info(param1, opts)
+ return data
+ end
+
+ # Asset Search
+ # Returns all assets for which you have access that match the given search criteria.
+ # @param param1 param1
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve.
+ # @option opts [Integer] :size The number of records per page to retrieve.
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [Array<(PageOfAsset, Fixnum, Hash)>] PageOfAsset data, response status code and response headers
+ def find_assets_with_http_info(param1, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.find_assets ..."
+ end
+ # verify the required parameter 'param1' is set
+ if @api_client.config.client_side_validation && param1.nil?
+ fail ArgumentError, "Missing the required parameter 'param1' when calling AssetApi.find_assets"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/search"
+
+ # query parameters
+ query_params = {}
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
+ query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
+ query_params[:'sort'] = @api_client.build_collection_param(opts[:'sort'], :multi) if !opts[:'sort'].nil?
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(param1)
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'PageOfAsset')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#find_assets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset
+ # Returns the specified asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Asset]
+ def get_asset(id, opts = {})
+ data, _status_code, _headers = get_asset_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset
+ # Returns the specified asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Asset, Fixnum, Hash)>] Asset data, response status code and response headers
+ def get_asset_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Asset')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Databases
+ # Returns the databases enumerated on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesDatabase]
+ def get_asset_databases(id, opts = {})
+ data, _status_code, _headers = get_asset_databases_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Databases
+ # Returns the databases enumerated on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesDatabase, Fixnum, Hash)>] ResourcesDatabase data, response status code and response headers
+ def get_asset_databases_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_databases ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_databases"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/databases".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesDatabase')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_databases\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Files
+ # Returns the files discovered on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesFile]
+ def get_asset_files(id, opts = {})
+ data, _status_code, _headers = get_asset_files_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Files
+ # Returns the files discovered on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesFile, Fixnum, Hash)>] ResourcesFile data, response status code and response headers
+ def get_asset_files_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_files ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_files"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/files".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesFile')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_files\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Service
+ # Returns the service running a port and protocol on the asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [Service]
+ def get_asset_service(id, protocol, port, opts = {})
+ data, _status_code, _headers = get_asset_service_with_http_info(id, protocol, port, opts)
+ return data
+ end
+
+ # Asset Service
+ # Returns the service running a port and protocol on the asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Service, Fixnum, Hash)>] Service data, response status code and response headers
+ def get_asset_service_with_http_info(id, protocol, port, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_service ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_service"
+ end
+ # verify the required parameter 'protocol' is set
+ if @api_client.config.client_side_validation && protocol.nil?
+ fail ArgumentError, "Missing the required parameter 'protocol' when calling AssetApi.get_asset_service"
+ end
+ # verify enum value
+ if @api_client.config.client_side_validation && !['ip', 'icmp', 'igmp', 'ggp', 'tcp', 'pup', 'udp', 'idp', 'esp', 'nd', 'raw'].include?(protocol)
+ fail ArgumentError, "invalid value for 'protocol', must be one of ip, icmp, igmp, ggp, tcp, pup, udp, idp, esp, nd, raw"
+ end
+ # verify the required parameter 'port' is set
+ if @api_client.config.client_side_validation && port.nil?
+ fail ArgumentError, "Missing the required parameter 'port' when calling AssetApi.get_asset_service"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services/{protocol}/{port}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'protocol' + '}', protocol.to_s).sub('{' + 'port' + '}', port.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Service')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Service Configurations
+ # Returns the configuration (properties) of a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesConfiguration]
+ def get_asset_service_configurations(id, protocol, port, opts = {})
+ data, _status_code, _headers = get_asset_service_configurations_with_http_info(id, protocol, port, opts)
+ return data
+ end
+
+ # Asset Service Configurations
+ # Returns the configuration (properties) of a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesConfiguration, Fixnum, Hash)>] ResourcesConfiguration data, response status code and response headers
+ def get_asset_service_configurations_with_http_info(id, protocol, port, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_service_configurations ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_service_configurations"
+ end
+ # verify the required parameter 'protocol' is set
+ if @api_client.config.client_side_validation && protocol.nil?
+ fail ArgumentError, "Missing the required parameter 'protocol' when calling AssetApi.get_asset_service_configurations"
+ end
+ # verify enum value
+ if @api_client.config.client_side_validation && !['ip', 'icmp', 'igmp', 'ggp', 'tcp', 'pup', 'udp', 'idp', 'esp', 'nd', 'raw'].include?(protocol)
+ fail ArgumentError, "invalid value for 'protocol', must be one of ip, icmp, igmp, ggp, tcp, pup, udp, idp, esp, nd, raw"
+ end
+ # verify the required parameter 'port' is set
+ if @api_client.config.client_side_validation && port.nil?
+ fail ArgumentError, "Missing the required parameter 'port' when calling AssetApi.get_asset_service_configurations"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services/{protocol}/{port}/configurations".sub('{' + 'id' + '}', id.to_s).sub('{' + 'protocol' + '}', protocol.to_s).sub('{' + 'port' + '}', port.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesConfiguration')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_service_configurations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Service Databases
+ # Returns the databases running on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesDatabase]
+ def get_asset_service_databases(id, protocol, port, opts = {})
+ data, _status_code, _headers = get_asset_service_databases_with_http_info(id, protocol, port, opts)
+ return data
+ end
+
+ # Asset Service Databases
+ # Returns the databases running on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesDatabase, Fixnum, Hash)>] ResourcesDatabase data, response status code and response headers
+ def get_asset_service_databases_with_http_info(id, protocol, port, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_service_databases ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_service_databases"
+ end
+ # verify the required parameter 'protocol' is set
+ if @api_client.config.client_side_validation && protocol.nil?
+ fail ArgumentError, "Missing the required parameter 'protocol' when calling AssetApi.get_asset_service_databases"
+ end
+ # verify enum value
+ if @api_client.config.client_side_validation && !['ip', 'icmp', 'igmp', 'ggp', 'tcp', 'pup', 'udp', 'idp', 'esp', 'nd', 'raw'].include?(protocol)
+ fail ArgumentError, "invalid value for 'protocol', must be one of ip, icmp, igmp, ggp, tcp, pup, udp, idp, esp, nd, raw"
+ end
+ # verify the required parameter 'port' is set
+ if @api_client.config.client_side_validation && port.nil?
+ fail ArgumentError, "Missing the required parameter 'port' when calling AssetApi.get_asset_service_databases"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services/{protocol}/{port}/databases".sub('{' + 'id' + '}', id.to_s).sub('{' + 'protocol' + '}', protocol.to_s).sub('{' + 'port' + '}', port.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesDatabase')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_service_databases\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Service User Groups
+ # Returns the user groups enumerated on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesGroupAccount]
+ def get_asset_service_user_groups(id, protocol, port, opts = {})
+ data, _status_code, _headers = get_asset_service_user_groups_with_http_info(id, protocol, port, opts)
+ return data
+ end
+
+ # Asset Service User Groups
+ # Returns the user groups enumerated on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesGroupAccount, Fixnum, Hash)>] ResourcesGroupAccount data, response status code and response headers
+ def get_asset_service_user_groups_with_http_info(id, protocol, port, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_service_user_groups ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_service_user_groups"
+ end
+ # verify the required parameter 'protocol' is set
+ if @api_client.config.client_side_validation && protocol.nil?
+ fail ArgumentError, "Missing the required parameter 'protocol' when calling AssetApi.get_asset_service_user_groups"
+ end
+ # verify enum value
+ if @api_client.config.client_side_validation && !['ip', 'icmp', 'igmp', 'ggp', 'tcp', 'pup', 'udp', 'idp', 'esp', 'nd', 'raw'].include?(protocol)
+ fail ArgumentError, "invalid value for 'protocol', must be one of ip, icmp, igmp, ggp, tcp, pup, udp, idp, esp, nd, raw"
+ end
+ # verify the required parameter 'port' is set
+ if @api_client.config.client_side_validation && port.nil?
+ fail ArgumentError, "Missing the required parameter 'port' when calling AssetApi.get_asset_service_user_groups"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services/{protocol}/{port}/user_groups".sub('{' + 'id' + '}', id.to_s).sub('{' + 'protocol' + '}', protocol.to_s).sub('{' + 'port' + '}', port.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesGroupAccount')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_service_user_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Service Users
+ # Returns the users enumerated on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesUserAccount]
+ def get_asset_service_users(id, protocol, port, opts = {})
+ data, _status_code, _headers = get_asset_service_users_with_http_info(id, protocol, port, opts)
+ return data
+ end
+
+ # Asset Service Users
+ # Returns the users enumerated on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesUserAccount, Fixnum, Hash)>] ResourcesUserAccount data, response status code and response headers
+ def get_asset_service_users_with_http_info(id, protocol, port, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_service_users ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_service_users"
+ end
+ # verify the required parameter 'protocol' is set
+ if @api_client.config.client_side_validation && protocol.nil?
+ fail ArgumentError, "Missing the required parameter 'protocol' when calling AssetApi.get_asset_service_users"
+ end
+ # verify enum value
+ if @api_client.config.client_side_validation && !['ip', 'icmp', 'igmp', 'ggp', 'tcp', 'pup', 'udp', 'idp', 'esp', 'nd', 'raw'].include?(protocol)
+ fail ArgumentError, "invalid value for 'protocol', must be one of ip, icmp, igmp, ggp, tcp, pup, udp, idp, esp, nd, raw"
+ end
+ # verify the required parameter 'port' is set
+ if @api_client.config.client_side_validation && port.nil?
+ fail ArgumentError, "Missing the required parameter 'port' when calling AssetApi.get_asset_service_users"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services/{protocol}/{port}/users".sub('{' + 'id' + '}', id.to_s).sub('{' + 'protocol' + '}', protocol.to_s).sub('{' + 'port' + '}', port.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesUserAccount')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_service_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Service Web Application
+ # Returns a web application running on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param web_application_id The identifier of the web application.
+ # @param [Hash] opts the optional parameters
+ # @return [WebApplication]
+ def get_asset_service_web_application(id, protocol, port, web_application_id, opts = {})
+ data, _status_code, _headers = get_asset_service_web_application_with_http_info(id, protocol, port, web_application_id, opts)
+ return data
+ end
+
+ # Asset Service Web Application
+ # Returns a web application running on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param web_application_id The identifier of the web application.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(WebApplication, Fixnum, Hash)>] WebApplication data, response status code and response headers
+ def get_asset_service_web_application_with_http_info(id, protocol, port, web_application_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_service_web_application ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_service_web_application"
+ end
+ # verify the required parameter 'protocol' is set
+ if @api_client.config.client_side_validation && protocol.nil?
+ fail ArgumentError, "Missing the required parameter 'protocol' when calling AssetApi.get_asset_service_web_application"
+ end
+ # verify enum value
+ if @api_client.config.client_side_validation && !['ip', 'icmp', 'igmp', 'ggp', 'tcp', 'pup', 'udp', 'idp', 'esp', 'nd', 'raw'].include?(protocol)
+ fail ArgumentError, "invalid value for 'protocol', must be one of ip, icmp, igmp, ggp, tcp, pup, udp, idp, esp, nd, raw"
+ end
+ # verify the required parameter 'port' is set
+ if @api_client.config.client_side_validation && port.nil?
+ fail ArgumentError, "Missing the required parameter 'port' when calling AssetApi.get_asset_service_web_application"
+ end
+ # verify the required parameter 'web_application_id' is set
+ if @api_client.config.client_side_validation && web_application_id.nil?
+ fail ArgumentError, "Missing the required parameter 'web_application_id' when calling AssetApi.get_asset_service_web_application"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services/{protocol}/{port}/web_applications/{webApplicationId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'protocol' + '}', protocol.to_s).sub('{' + 'port' + '}', port.to_s).sub('{' + 'webApplicationId' + '}', web_application_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'WebApplication')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_service_web_application\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Service Web Applications
+ # Returns the web applications running on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [ReferencesWithWebApplicationIDLink]
+ def get_asset_service_web_applications(id, protocol, port, opts = {})
+ data, _status_code, _headers = get_asset_service_web_applications_with_http_info(id, protocol, port, opts)
+ return data
+ end
+
+ # Asset Service Web Applications
+ # Returns the web applications running on a port and protocol on an asset.
+ # @param id The identifier of the asset.
+ # @param protocol The protocol of the service.
+ # @param port The port of the service.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ReferencesWithWebApplicationIDLink, Fixnum, Hash)>] ReferencesWithWebApplicationIDLink data, response status code and response headers
+ def get_asset_service_web_applications_with_http_info(id, protocol, port, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_service_web_applications ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_service_web_applications"
+ end
+ # verify the required parameter 'protocol' is set
+ if @api_client.config.client_side_validation && protocol.nil?
+ fail ArgumentError, "Missing the required parameter 'protocol' when calling AssetApi.get_asset_service_web_applications"
+ end
+ # verify enum value
+ if @api_client.config.client_side_validation && !['ip', 'icmp', 'igmp', 'ggp', 'tcp', 'pup', 'udp', 'idp', 'esp', 'nd', 'raw'].include?(protocol)
+ fail ArgumentError, "invalid value for 'protocol', must be one of ip, icmp, igmp, ggp, tcp, pup, udp, idp, esp, nd, raw"
+ end
+ # verify the required parameter 'port' is set
+ if @api_client.config.client_side_validation && port.nil?
+ fail ArgumentError, "Missing the required parameter 'port' when calling AssetApi.get_asset_service_web_applications"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services/{protocol}/{port}/web_applications".sub('{' + 'id' + '}', id.to_s).sub('{' + 'protocol' + '}', protocol.to_s).sub('{' + 'port' + '}', port.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ReferencesWithWebApplicationIDLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_service_web_applications\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Services
+ # Returns the services discovered on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [ReferencesWithReferenceWithEndpointIDLinkServiceLink]
+ def get_asset_services(id, opts = {})
+ data, _status_code, _headers = get_asset_services_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Services
+ # Returns the services discovered on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ReferencesWithReferenceWithEndpointIDLinkServiceLink, Fixnum, Hash)>] ReferencesWithReferenceWithEndpointIDLinkServiceLink data, response status code and response headers
+ def get_asset_services_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_services ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_services"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/services".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ReferencesWithReferenceWithEndpointIDLinkServiceLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_services\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Software
+ # Returns the software on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesSoftware]
+ def get_asset_software(id, opts = {})
+ data, _status_code, _headers = get_asset_software_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Software
+ # Returns the software on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesSoftware, Fixnum, Hash)>] ResourcesSoftware data, response status code and response headers
+ def get_asset_software_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_software ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_software"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/software".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesSoftware')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_software\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Tags
+ # Returns tags assigned to an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesAssetTag]
+ def get_asset_tags(id, opts = {})
+ data, _status_code, _headers = get_asset_tags_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Tags
+ # Returns tags assigned to an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesAssetTag, Fixnum, Hash)>] ResourcesAssetTag data, response status code and response headers
+ def get_asset_tags_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_tags ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_tags"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/tags".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesAssetTag')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset User Groups
+ # Returns user groups enumerated on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesGroupAccount]
+ def get_asset_user_groups(id, opts = {})
+ data, _status_code, _headers = get_asset_user_groups_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset User Groups
+ # Returns user groups enumerated on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesGroupAccount, Fixnum, Hash)>] ResourcesGroupAccount data, response status code and response headers
+ def get_asset_user_groups_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_user_groups ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_user_groups"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/user_groups".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesGroupAccount')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_user_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Users
+ # Returns users enumerated on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesUserAccount]
+ def get_asset_users(id, opts = {})
+ data, _status_code, _headers = get_asset_users_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Users
+ # Returns users enumerated on an asset.
+ # @param id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesUserAccount, Fixnum, Hash)>] ResourcesUserAccount data, response status code and response headers
+ def get_asset_users_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_asset_users ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_asset_users"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/users".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesUserAccount')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_asset_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Assets
+ # Returns all assets for which you have access.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve. (default to 0)
+ # @option opts [Integer] :size The number of records per page to retrieve. (default to 10)
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [PageOfAsset]
+ def get_assets(opts = {})
+ data, _status_code, _headers = get_assets_with_http_info(opts)
+ return data
+ end
+
+ # Assets
+ # Returns all assets for which you have access.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve.
+ # @option opts [Integer] :size The number of records per page to retrieve.
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [Array<(PageOfAsset, Fixnum, Hash)>] PageOfAsset data, response status code and response headers
+ def get_assets_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_assets ..."
+ end
+ # resource path
+ local_var_path = "/api/3/assets"
+
+ # query parameters
+ query_params = {}
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
+ query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
+ query_params[:'sort'] = @api_client.build_collection_param(opts[:'sort'], :multi) if !opts[:'sort'].nil?
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'PageOfAsset')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_assets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Operating System
+ # Returns the details for an operating system.
+ # @param id The identifier of the operating system.
+ # @param [Hash] opts the optional parameters
+ # @return [OperatingSystem]
+ def get_operating_system(id, opts = {})
+ data, _status_code, _headers = get_operating_system_with_http_info(id, opts)
+ return data
+ end
+
+ # Operating System
+ # Returns the details for an operating system.
+ # @param id The identifier of the operating system.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(OperatingSystem, Fixnum, Hash)>] OperatingSystem data, response status code and response headers
+ def get_operating_system_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_operating_system ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_operating_system"
+ end
+ # resource path
+ local_var_path = "/api/3/operating_systems/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'OperatingSystem')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_operating_system\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Operating Systems
+ # Returns all operating systems discovered across all assets.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve. (default to 0)
+ # @option opts [Integer] :size The number of records per page to retrieve. (default to 10)
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [PageOfOperatingSystem]
+ def get_operating_systems(opts = {})
+ data, _status_code, _headers = get_operating_systems_with_http_info(opts)
+ return data
+ end
+
+ # Operating Systems
+ # Returns all operating systems discovered across all assets.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve.
+ # @option opts [Integer] :size The number of records per page to retrieve.
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [Array<(PageOfOperatingSystem, Fixnum, Hash)>] PageOfOperatingSystem data, response status code and response headers
+ def get_operating_systems_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_operating_systems ..."
+ end
+ # resource path
+ local_var_path = "/api/3/operating_systems"
+
+ # query parameters
+ query_params = {}
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
+ query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
+ query_params[:'sort'] = @api_client.build_collection_param(opts[:'sort'], :multi) if !opts[:'sort'].nil?
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'PageOfOperatingSystem')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_operating_systems\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Software
+ # Returns the details for software.
+ # @param id The identifier of the software.
+ # @param [Hash] opts the optional parameters
+ # @return [Software]
+ def get_software(id, opts = {})
+ data, _status_code, _headers = get_software_with_http_info(id, opts)
+ return data
+ end
+
+ # Software
+ # Returns the details for software.
+ # @param id The identifier of the software.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Software, Fixnum, Hash)>] Software data, response status code and response headers
+ def get_software_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_software ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.get_software"
+ end
+ # resource path
+ local_var_path = "/api/3/software/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Software')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_software\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Software
+ # Returns all software enumerated on any asset.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve. (default to 0)
+ # @option opts [Integer] :size The number of records per page to retrieve. (default to 10)
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [PageOfSoftware]
+ def get_softwares(opts = {})
+ data, _status_code, _headers = get_softwares_with_http_info(opts)
+ return data
+ end
+
+ # Software
+ # Returns all software enumerated on any asset.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve.
+ # @option opts [Integer] :size The number of records per page to retrieve.
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [Array<(PageOfSoftware, Fixnum, Hash)>] PageOfSoftware data, response status code and response headers
+ def get_softwares_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.get_softwares ..."
+ end
+ # resource path
+ local_var_path = "/api/3/software"
+
+ # query parameters
+ query_params = {}
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
+ query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
+ query_params[:'sort'] = @api_client.build_collection_param(opts[:'sort'], :multi) if !opts[:'sort'].nil?
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'PageOfSoftware')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#get_softwares\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Tag
+ # Removes the specified tag from the asset's tags.
+ # @param id The identifier of the asset.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def remove_asset_tag(id, tag_id, opts = {})
+ data, _status_code, _headers = remove_asset_tag_with_http_info(id, tag_id, opts)
+ return data
+ end
+
+ # Asset Tag
+ # Removes the specified tag from the asset's tags.
+ # @param id The identifier of the asset.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def remove_asset_tag_with_http_info(id, tag_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetApi.remove_asset_tag ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetApi.remove_asset_tag"
+ end
+ # verify the required parameter 'tag_id' is set
+ if @api_client.config.client_side_validation && tag_id.nil?
+ fail ArgumentError, "Missing the required parameter 'tag_id' when calling AssetApi.remove_asset_tag"
+ end
+ # resource path
+ local_var_path = "/api/3/assets/{id}/tags/{tagId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'tagId' + '}', tag_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetApi#remove_asset_tag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+ end
+end
diff --git a/lib/rapid7_vm_console/api/asset_discovery_api.rb b/lib/rapid7_vm_console/api/asset_discovery_api.rb
new file mode 100644
index 0000000..a853cbc
--- /dev/null
+++ b/lib/rapid7_vm_console/api/asset_discovery_api.rb
@@ -0,0 +1,575 @@
+=begin
+#InsightVM API
+
+## Overview This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS. ## Versioning Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`. ## Specification An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
## Authentication Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`. ### 2FA This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API. ## Resources ### Naming Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` | #### Collections A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ``` #### Instances An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` | ### Common Operations #### OPTIONS All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status. ### Collection Resources Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations. #### GET The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information. #### POST The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued. #### PUT The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. #### DELETE The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. ### Instance Resources Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations. #### GET Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type. #### PUT Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource. #### POST Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint. #### PATCH The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed. #### DELETE Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`. ## Requests Unless otherwise indicated, the default request body media type is `application/json`. ### Headers Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) | ### Dates & Times Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | | ### Timezones Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`. ### Paging Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500. ### Sorting Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order. ## Responses The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. | ### Security The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` | ### Headers Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. | ### Format When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses. #### Dates & Times Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z | #### Content In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document. #### Paging The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection. #### Property Views The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ``` #### Error Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\": , \"links\" : [ { \"rel\" : \"...\", \"href\" : \"...\" } ] } ``` The `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message property is a localized message in the request client's locale (if applicable) that articulates the nature of the error. The last property is the `links` property. This may contain additional [hypermedia links](#section/Overview/Authentication) to troubleshoot. #### Search Criteria Multiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The operator is a type and property-specific operating performed on the filtered property. The valid values for fields and operators are outlined in the table below. Every filter also defines one or more values that are supplied to the operator. The valid values vary by operator and are outlined below. ##### Fields The following table outlines the search criteria fields and the available operators: | Field | Operators | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | `alternate-address-type` | `in` | | `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` | | `container-status` | `is` ` is not` | | `containers` | `are` | | `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` | | `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `cve` | `is` ` is not` ` contains` ` does not contain` | | `cvss-access-complexity` | `is` ` is not` | | `cvss-authentication-required` | `is` ` is not` | | `cvss-access-vector` | `is` ` is not` | | `cvss-availability-impact` | `is` ` is not` | | `cvss-confidentiality-impact` | `is` ` is not` | | `cvss-integrity-impact` | `is` ` is not` | | `cvss-v3-confidentiality-impact` | `is` ` is not` | | `cvss-v3-integrity-impact` | `is` ` is not` | | `cvss-v3-availability-impact` | `is` ` is not` | | `cvss-v3-attack-vector` | `is` ` is not` | | `cvss-v3-attack-complexity` | `is` ` is not` | | `cvss-v3-user-interaction` | `is` ` is not` | | `cvss-v3-privileges-required` | `is` ` is not` | | `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` | | `host-type` | `in` ` not in` | | `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` | | `ip-address-type` | `in` ` not in` | | `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` | | `open-ports` | `is` ` is not` ` in range` | | `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` | | `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `pci-compliance` | `is` | | `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` | | `service-name` | `contains` ` does not contain` | | `site-id` | `in` ` not in` | | `software` | `contains` ` does not contain` | | `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-datacenter` | `is` ` is not` | | `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-power-state` | `in` ` not in` | | `vAsset-resource-pool-path` | `contains` ` does not contain` | | `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` | | `vulnerability-cvss-v3-score` | `is` ` is not` | | `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` | | `vulnerability-exposures` | `includes` ` does not include` | | `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` | | `vulnerability-validated-status` | `are` | ##### Enumerated Properties The following fields have enumerated values: | Field | Acceptable Values | | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `alternate-address-type` | 0=IPv4, 1=IPv6 | | `containers` | 0=present, 1=not present | | `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` | | `cvss-access-complexity` | L
= LowM
= MediumH
= High
| | `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
| | `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
| | `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-availability-impact` | | | `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
| | `cvss-v3-attack-complexity` | | | `cvss-v3-user-interaction` | | | `cvss-v3-privileges-required` | | | `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | `ip-address-type` | 0=IPv4, 1=IPv6 | | `pci-compliance` | 0=fail, 1=pass | | `vulnerability-validated-status` | 0=present, 1=not present | ##### Operator Properties The following table outlines which properties are required for each operator and the appropriate data type(s): | Operator | `value` | `lower` | `upper` | | ----------------------|-----------------------|-----------------------|-----------------------| | `are` | `string` | | | | `contains` | `string` | | | | `does-not-contain` | `string` | | | | `ends with` | `string` | | | | `in` | `Array[ string ]` | | | | `in-range` | | `numeric` | `numeric` | | `includes` | `Array[ string ]` | | | | `is` | `string` | | | | `is-applied` | | | | | `is-between` | | `numeric` | `numeric` | | `is-earlier-than` | `numeric` | | | | `is-empty` | | | | | `is-greater-than` | `numeric` | | | | `is-on-or-after` | `string` (yyyy-MM-dd) | | | | `is-on-or-before` | `string` (yyyy-MM-dd) | | | | `is-not` | `string` | | | | `is-not-applied` | | | | | `is-not-empty` | | | | | `is-within-the-last` | `string` | | | | `less-than` | `string` | | | | `like` | `string` | | | | `not-contains` | `string` | | | | `not-in` | `Array[ string ]` | | | | `not-in-range` | | `numeric` | `numeric` | | `not-like` | `string` | | | | `starts-with` | `string` | | | #### Discovery Connection Search Criteria Dynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The list of supported fields vary depending on the type of discovery connection configured for the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating performed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the type of connection. Every filter also defines one or more values that are supplied to the operator. See Search Criteria Operator Properties for more information on the valid values for each operator. ##### Fields (ActiveSync) This section documents search criteria information for ActiveSync discovery connections. The discovery connections must be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. The following table outlines the search criteria fields and the available operators for ActiveSync connections: | Field | Operators | | --------------------------------- | ------------------------------------------------------------- | | `last-sync-time` | `is-within-the-last` ` is-earlier-than` | | `operating-system` | `contains` ` does-not-contain` | | `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (AWS) This section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. The following table outlines the search criteria fields and the available operators for AWS connections: | Field | Operators | | ----------------------- | ------------------------------------------------------------- | | `availability-zone` | `contains` ` does-not-contain` | | `guest-os-family` | `contains` ` does-not-contain` | | `instance-id` | `contains` ` does-not-contain` | | `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `instance-state` | `in` ` not-in` | | `instance-type` | `in` ` not-in` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `region` | `in` ` not-in` | | `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (DHCP) This section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. The following table outlines the search criteria fields and the available operators for DHCP connections: | Field | Operators | | --------------- | ------------------------------------------------------------- | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (Sonar) This section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. The following table outlines the search criteria fields and the available operators for Sonar connections: | Field | Operators | | ------------------- | -------------------- | | `search-domain` | `contains` ` is` | | `ip-address` | `in-range` ` is` | | `sonar-scan-date` | `is-within-the-last` | ##### Fields (vSphere) This section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. The following table outlines the search criteria fields and the available operators for vSphere connections: | Field | Operators | | -------------------- | ------------------------------------------------------------------------------------------ | | `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `data-center` | `is` ` is-not` | | `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `guest-os-family` | `contains` ` does-not-contain` | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `power-state` | `in` ` not-in` | | `resource-pool-path` | `contains` ` does-not-contain` | | `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Enumerated Properties (vSphere) The following fields have enumerated values: | Field | Acceptable Values | | ------------- | ------------------------------------ | | `power-state` | `poweredOn` `poweredOff` `suspended` | ## HATEOAS This API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. Hyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to the corresponding resource. The format of the hypermedia link adheres to both the {json:api} v1 \"Link Object\" and JSON Hyper-Schema \"Link Description Object\" formats. For example: ```json \"links\": [{ \"rel\": \"\", \"href\": \"\" ... }] ``` Where appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc. See the [Root](#tag/Root) resources for the entry points into API discovery.
+
+OpenAPI spec version: 3
+Contact: support@rapid7.com
+Generated by: https://github.com/swagger-api/swagger-codegen.git
+Swagger Codegen version: 2.3.0
+
+=end
+
+require "uri"
+
+module Rapid7VmConsole
+ class AssetDiscoveryApi
+ attr_accessor :api_client
+
+ def initialize(api_client = ApiClient.default)
+ @api_client = api_client
+ end
+
+ # Sonar Queries
+ # Creates a sonar query.
+ # @param param0 param0
+ # @param [Hash] opts the optional parameters
+ # @return [CreatedReferenceDiscoveryQueryIDLink]
+ def create_sonar_query(param0, opts = {})
+ data, _status_code, _headers = create_sonar_query_with_http_info(param0, opts)
+ return data
+ end
+
+ # Sonar Queries
+ # Creates a sonar query.
+ # @param param0 param0
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(CreatedReferenceDiscoveryQueryIDLink, Fixnum, Hash)>] CreatedReferenceDiscoveryQueryIDLink data, response status code and response headers
+ def create_sonar_query_with_http_info(param0, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.create_sonar_query ..."
+ end
+ # verify the required parameter 'param0' is set
+ if @api_client.config.client_side_validation && param0.nil?
+ fail ArgumentError, "Missing the required parameter 'param0' when calling AssetDiscoveryApi.create_sonar_query"
+ end
+ # resource path
+ local_var_path = "/api/3/sonar_queries"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(param0)
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'CreatedReferenceDiscoveryQueryIDLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#create_sonar_query\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Sonar Query
+ # Removes a sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def delete_sonar_query(id, opts = {})
+ data, _status_code, _headers = delete_sonar_query_with_http_info(id, opts)
+ return data
+ end
+
+ # Sonar Query
+ # Removes a sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def delete_sonar_query_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.delete_sonar_query ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetDiscoveryApi.delete_sonar_query"
+ end
+ # resource path
+ local_var_path = "/api/3/sonar_queries/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#delete_sonar_query\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Discovery Connection
+ # Returns a discovery connection.
+ # @param id The identifier of the discovery connection.
+ # @param [Hash] opts the optional parameters
+ # @return [DiscoveryConnection]
+ def get_discovery_connection(id, opts = {})
+ data, _status_code, _headers = get_discovery_connection_with_http_info(id, opts)
+ return data
+ end
+
+ # Discovery Connection
+ # Returns a discovery connection.
+ # @param id The identifier of the discovery connection.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(DiscoveryConnection, Fixnum, Hash)>] DiscoveryConnection data, response status code and response headers
+ def get_discovery_connection_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.get_discovery_connection ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetDiscoveryApi.get_discovery_connection"
+ end
+ # resource path
+ local_var_path = "/api/3/discovery_connections/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'DiscoveryConnection')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#get_discovery_connection\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Discovery Connections
+ # Returns all discovery connections.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve. (default to 0)
+ # @option opts [Integer] :size The number of records per page to retrieve. (default to 10)
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [PageOfDiscoveryConnection]
+ def get_discovery_connections(opts = {})
+ data, _status_code, _headers = get_discovery_connections_with_http_info(opts)
+ return data
+ end
+
+ # Discovery Connections
+ # Returns all discovery connections.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve.
+ # @option opts [Integer] :size The number of records per page to retrieve.
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [Array<(PageOfDiscoveryConnection, Fixnum, Hash)>] PageOfDiscoveryConnection data, response status code and response headers
+ def get_discovery_connections_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.get_discovery_connections ..."
+ end
+ # resource path
+ local_var_path = "/api/3/discovery_connections"
+
+ # query parameters
+ query_params = {}
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
+ query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
+ query_params[:'sort'] = @api_client.build_collection_param(opts[:'sort'], :multi) if !opts[:'sort'].nil?
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'PageOfDiscoveryConnection')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#get_discovery_connections\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Sonar Queries
+ # Returns all sonar queries.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesSonarQuery]
+ def get_sonar_queries(opts = {})
+ data, _status_code, _headers = get_sonar_queries_with_http_info(opts)
+ return data
+ end
+
+ # Sonar Queries
+ # Returns all sonar queries.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesSonarQuery, Fixnum, Hash)>] ResourcesSonarQuery data, response status code and response headers
+ def get_sonar_queries_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.get_sonar_queries ..."
+ end
+ # resource path
+ local_var_path = "/api/3/sonar_queries"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesSonarQuery')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#get_sonar_queries\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Sonar Query
+ # Returns a sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param [Hash] opts the optional parameters
+ # @return [SonarQuery]
+ def get_sonar_query(id, opts = {})
+ data, _status_code, _headers = get_sonar_query_with_http_info(id, opts)
+ return data
+ end
+
+ # Sonar Query
+ # Returns a sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(SonarQuery, Fixnum, Hash)>] SonarQuery data, response status code and response headers
+ def get_sonar_query_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.get_sonar_query ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetDiscoveryApi.get_sonar_query"
+ end
+ # resource path
+ local_var_path = "/api/3/sonar_queries/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'SonarQuery')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#get_sonar_query\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Sonar Query Assets
+ # Returns the assets that are discovered by a Sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesDiscoveryAsset]
+ def get_sonar_query_assets(id, opts = {})
+ data, _status_code, _headers = get_sonar_query_assets_with_http_info(id, opts)
+ return data
+ end
+
+ # Sonar Query Assets
+ # Returns the assets that are discovered by a Sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesDiscoveryAsset, Fixnum, Hash)>] ResourcesDiscoveryAsset data, response status code and response headers
+ def get_sonar_query_assets_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.get_sonar_query_assets ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetDiscoveryApi.get_sonar_query_assets"
+ end
+ # resource path
+ local_var_path = "/api/3/sonar_queries/{id}/assets".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesDiscoveryAsset')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#get_sonar_query_assets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Discovery Connection Reconnect
+ # Attempts to reconnect the discovery connection.
+ # @param id The identifier of the discovery connection.
+ # @param [Hash] opts the optional parameters
+ # @return [nil]
+ def reconnect_discovery_connection(id, opts = {})
+ reconnect_discovery_connection_with_http_info(id, opts)
+ return nil
+ end
+
+ # Discovery Connection Reconnect
+ # Attempts to reconnect the discovery connection.
+ # @param id The identifier of the discovery connection.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
+ def reconnect_discovery_connection_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.reconnect_discovery_connection ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetDiscoveryApi.reconnect_discovery_connection"
+ end
+ # resource path
+ local_var_path = "/api/3/discovery_connections/{id}/connect".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names)
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#reconnect_discovery_connection\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Sonar Query Search
+ # Executes a Sonar query to discover assets with the given search criteria.
+ # @param param0 param0
+ # @param [Hash] opts the optional parameters
+ # @return [Array]
+ def sonar_query_search(param0, opts = {})
+ data, _status_code, _headers = sonar_query_search_with_http_info(param0, opts)
+ return data
+ end
+
+ # Sonar Query Search
+ # Executes a Sonar query to discover assets with the given search criteria.
+ # @param param0 param0
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Array, Fixnum, Hash)>] Array data, response status code and response headers
+ def sonar_query_search_with_http_info(param0, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.sonar_query_search ..."
+ end
+ # verify the required parameter 'param0' is set
+ if @api_client.config.client_side_validation && param0.nil?
+ fail ArgumentError, "Missing the required parameter 'param0' when calling AssetDiscoveryApi.sonar_query_search"
+ end
+ # resource path
+ local_var_path = "/api/3/sonar_queries/search"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(param0)
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Array')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#sonar_query_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Sonar Query
+ # Updates a sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param param1 param1
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def update_sonar_query(id, param1, opts = {})
+ data, _status_code, _headers = update_sonar_query_with_http_info(id, param1, opts)
+ return data
+ end
+
+ # Sonar Query
+ # Updates a sonar query.
+ # @param id The identifier of the Sonar query.
+ # @param param1 param1
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def update_sonar_query_with_http_info(id, param1, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetDiscoveryApi.update_sonar_query ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetDiscoveryApi.update_sonar_query"
+ end
+ # verify the required parameter 'param1' is set
+ if @api_client.config.client_side_validation && param1.nil?
+ fail ArgumentError, "Missing the required parameter 'param1' when calling AssetDiscoveryApi.update_sonar_query"
+ end
+ # resource path
+ local_var_path = "/api/3/sonar_queries/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(param1)
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetDiscoveryApi#update_sonar_query\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+ end
+end
diff --git a/lib/rapid7_vm_console/api/asset_group_api.rb b/lib/rapid7_vm_console/api/asset_group_api.rb
new file mode 100644
index 0000000..b3d28d0
--- /dev/null
+++ b/lib/rapid7_vm_console/api/asset_group_api.rb
@@ -0,0 +1,1229 @@
+=begin
+#InsightVM API
+
+## Overview This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS. ## Versioning Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`. ## Specification An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
## Authentication Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`. ### 2FA This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API. ## Resources ### Naming Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` | #### Collections A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ``` #### Instances An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` | ### Common Operations #### OPTIONS All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status. ### Collection Resources Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations. #### GET The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information. #### POST The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued. #### PUT The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. #### DELETE The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. ### Instance Resources Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations. #### GET Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type. #### PUT Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource. #### POST Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint. #### PATCH The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed. #### DELETE Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`. ## Requests Unless otherwise indicated, the default request body media type is `application/json`. ### Headers Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) | ### Dates & Times Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | | ### Timezones Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`. ### Paging Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500. ### Sorting Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order. ## Responses The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. | ### Security The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` | ### Headers Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. | ### Format When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses. #### Dates & Times Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z | #### Content In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document. #### Paging The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection. #### Property Views The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ``` #### Error Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\": , \"links\" : [ { \"rel\" : \"...\", \"href\" : \"...\" } ] } ``` The `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message property is a localized message in the request client's locale (if applicable) that articulates the nature of the error. The last property is the `links` property. This may contain additional [hypermedia links](#section/Overview/Authentication) to troubleshoot. #### Search Criteria Multiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The operator is a type and property-specific operating performed on the filtered property. The valid values for fields and operators are outlined in the table below. Every filter also defines one or more values that are supplied to the operator. The valid values vary by operator and are outlined below. ##### Fields The following table outlines the search criteria fields and the available operators: | Field | Operators | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | `alternate-address-type` | `in` | | `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` | | `container-status` | `is` ` is not` | | `containers` | `are` | | `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` | | `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `cve` | `is` ` is not` ` contains` ` does not contain` | | `cvss-access-complexity` | `is` ` is not` | | `cvss-authentication-required` | `is` ` is not` | | `cvss-access-vector` | `is` ` is not` | | `cvss-availability-impact` | `is` ` is not` | | `cvss-confidentiality-impact` | `is` ` is not` | | `cvss-integrity-impact` | `is` ` is not` | | `cvss-v3-confidentiality-impact` | `is` ` is not` | | `cvss-v3-integrity-impact` | `is` ` is not` | | `cvss-v3-availability-impact` | `is` ` is not` | | `cvss-v3-attack-vector` | `is` ` is not` | | `cvss-v3-attack-complexity` | `is` ` is not` | | `cvss-v3-user-interaction` | `is` ` is not` | | `cvss-v3-privileges-required` | `is` ` is not` | | `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` | | `host-type` | `in` ` not in` | | `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` | | `ip-address-type` | `in` ` not in` | | `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` | | `open-ports` | `is` ` is not` ` in range` | | `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` | | `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `pci-compliance` | `is` | | `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` | | `service-name` | `contains` ` does not contain` | | `site-id` | `in` ` not in` | | `software` | `contains` ` does not contain` | | `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-datacenter` | `is` ` is not` | | `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-power-state` | `in` ` not in` | | `vAsset-resource-pool-path` | `contains` ` does not contain` | | `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` | | `vulnerability-cvss-v3-score` | `is` ` is not` | | `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` | | `vulnerability-exposures` | `includes` ` does not include` | | `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` | | `vulnerability-validated-status` | `are` | ##### Enumerated Properties The following fields have enumerated values: | Field | Acceptable Values | | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `alternate-address-type` | 0=IPv4, 1=IPv6 | | `containers` | 0=present, 1=not present | | `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` | | `cvss-access-complexity` | L
= LowM
= MediumH
= High
| | `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
| | `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
| | `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-availability-impact` | | | `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
| | `cvss-v3-attack-complexity` | | | `cvss-v3-user-interaction` | | | `cvss-v3-privileges-required` | | | `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | `ip-address-type` | 0=IPv4, 1=IPv6 | | `pci-compliance` | 0=fail, 1=pass | | `vulnerability-validated-status` | 0=present, 1=not present | ##### Operator Properties The following table outlines which properties are required for each operator and the appropriate data type(s): | Operator | `value` | `lower` | `upper` | | ----------------------|-----------------------|-----------------------|-----------------------| | `are` | `string` | | | | `contains` | `string` | | | | `does-not-contain` | `string` | | | | `ends with` | `string` | | | | `in` | `Array[ string ]` | | | | `in-range` | | `numeric` | `numeric` | | `includes` | `Array[ string ]` | | | | `is` | `string` | | | | `is-applied` | | | | | `is-between` | | `numeric` | `numeric` | | `is-earlier-than` | `numeric` | | | | `is-empty` | | | | | `is-greater-than` | `numeric` | | | | `is-on-or-after` | `string` (yyyy-MM-dd) | | | | `is-on-or-before` | `string` (yyyy-MM-dd) | | | | `is-not` | `string` | | | | `is-not-applied` | | | | | `is-not-empty` | | | | | `is-within-the-last` | `string` | | | | `less-than` | `string` | | | | `like` | `string` | | | | `not-contains` | `string` | | | | `not-in` | `Array[ string ]` | | | | `not-in-range` | | `numeric` | `numeric` | | `not-like` | `string` | | | | `starts-with` | `string` | | | #### Discovery Connection Search Criteria Dynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The list of supported fields vary depending on the type of discovery connection configured for the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating performed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the type of connection. Every filter also defines one or more values that are supplied to the operator. See Search Criteria Operator Properties for more information on the valid values for each operator. ##### Fields (ActiveSync) This section documents search criteria information for ActiveSync discovery connections. The discovery connections must be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. The following table outlines the search criteria fields and the available operators for ActiveSync connections: | Field | Operators | | --------------------------------- | ------------------------------------------------------------- | | `last-sync-time` | `is-within-the-last` ` is-earlier-than` | | `operating-system` | `contains` ` does-not-contain` | | `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (AWS) This section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. The following table outlines the search criteria fields and the available operators for AWS connections: | Field | Operators | | ----------------------- | ------------------------------------------------------------- | | `availability-zone` | `contains` ` does-not-contain` | | `guest-os-family` | `contains` ` does-not-contain` | | `instance-id` | `contains` ` does-not-contain` | | `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `instance-state` | `in` ` not-in` | | `instance-type` | `in` ` not-in` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `region` | `in` ` not-in` | | `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (DHCP) This section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. The following table outlines the search criteria fields and the available operators for DHCP connections: | Field | Operators | | --------------- | ------------------------------------------------------------- | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (Sonar) This section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. The following table outlines the search criteria fields and the available operators for Sonar connections: | Field | Operators | | ------------------- | -------------------- | | `search-domain` | `contains` ` is` | | `ip-address` | `in-range` ` is` | | `sonar-scan-date` | `is-within-the-last` | ##### Fields (vSphere) This section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. The following table outlines the search criteria fields and the available operators for vSphere connections: | Field | Operators | | -------------------- | ------------------------------------------------------------------------------------------ | | `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `data-center` | `is` ` is-not` | | `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `guest-os-family` | `contains` ` does-not-contain` | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `power-state` | `in` ` not-in` | | `resource-pool-path` | `contains` ` does-not-contain` | | `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Enumerated Properties (vSphere) The following fields have enumerated values: | Field | Acceptable Values | | ------------- | ------------------------------------ | | `power-state` | `poweredOn` `poweredOff` `suspended` | ## HATEOAS This API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. Hyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to the corresponding resource. The format of the hypermedia link adheres to both the {json:api} v1 \"Link Object\" and JSON Hyper-Schema \"Link Description Object\" formats. For example: ```json \"links\": [{ \"rel\": \"\", \"href\": \"\" ... }] ``` Where appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc. See the [Root](#tag/Root) resources for the entry points into API discovery.
+
+OpenAPI spec version: 3
+Contact: support@rapid7.com
+Generated by: https://github.com/swagger-api/swagger-codegen.git
+Swagger Codegen version: 2.3.0
+
+=end
+
+require "uri"
+
+module Rapid7VmConsole
+ class AssetGroupApi
+ attr_accessor :api_client
+
+ def initialize(api_client = ApiClient.default)
+ @api_client = api_client
+ end
+
+ # Asset Group Tag
+ # Adds a tag to an asset group.
+ # @param id The identifier of the asset group.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def add_asset_group_tag(id, tag_id, opts = {})
+ data, _status_code, _headers = add_asset_group_tag_with_http_info(id, tag_id, opts)
+ return data
+ end
+
+ # Asset Group Tag
+ # Adds a tag to an asset group.
+ # @param id The identifier of the asset group.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def add_asset_group_tag_with_http_info(id, tag_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.add_asset_group_tag ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.add_asset_group_tag"
+ end
+ # verify the required parameter 'tag_id' is set
+ if @api_client.config.client_side_validation && tag_id.nil?
+ fail ArgumentError, "Missing the required parameter 'tag_id' when calling AssetGroupApi.add_asset_group_tag"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/tags/{tagId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'tagId' + '}', tag_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#add_asset_group_tag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group User
+ # Grants a user with sufficient privileges access to the asset group.
+ # @param id The identifier of the asset group.
+ # @param user_id The identifier of the user.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def add_asset_group_user(id, user_id, opts = {})
+ data, _status_code, _headers = add_asset_group_user_with_http_info(id, user_id, opts)
+ return data
+ end
+
+ # Asset Group User
+ # Grants a user with sufficient privileges access to the asset group.
+ # @param id The identifier of the asset group.
+ # @param user_id The identifier of the user.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def add_asset_group_user_with_http_info(id, user_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.add_asset_group_user ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.add_asset_group_user"
+ end
+ # verify the required parameter 'user_id' is set
+ if @api_client.config.client_side_validation && user_id.nil?
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling AssetGroupApi.add_asset_group_user"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/users/{userId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'userId' + '}', user_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#add_asset_group_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Asset
+ # Adds an asset to a static asset group.
+ # @param id The identifier of the asset group.
+ # @param asset_id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def add_asset_to_asset_group(id, asset_id, opts = {})
+ data, _status_code, _headers = add_asset_to_asset_group_with_http_info(id, asset_id, opts)
+ return data
+ end
+
+ # Asset Group Asset
+ # Adds an asset to a static asset group.
+ # @param id The identifier of the asset group.
+ # @param asset_id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def add_asset_to_asset_group_with_http_info(id, asset_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.add_asset_to_asset_group ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.add_asset_to_asset_group"
+ end
+ # verify the required parameter 'asset_id' is set
+ if @api_client.config.client_side_validation && asset_id.nil?
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetGroupApi.add_asset_to_asset_group"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/assets/{assetId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'assetId' + '}', asset_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#add_asset_to_asset_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Groups
+ # Creates a new asset group. The `searchCriteria` field can be passed no matter what the type of the asset group is. The asset group `type` changes when the assets are refreshed. Dynamic asset groups constantly refreshed their membership as assets are scanned whereas static asset groups do not change membership automatically. See the Search Criteria for more information on using dynamic criteria.
+ # @param [Hash] opts the optional parameters
+ # @option opts [AssetGroup] :param0 The details of the asset group.
+ # @return [CreatedReferenceAssetGroupIDLink]
+ def create_asset_group(opts = {})
+ data, _status_code, _headers = create_asset_group_with_http_info(opts)
+ return data
+ end
+
+ # Asset Groups
+ # Creates a new asset group. The `searchCriteria` field can be passed no matter what the type of the asset group is. The asset group `type` changes when the assets are refreshed. Dynamic asset groups constantly refreshed their membership as assets are scanned whereas static asset groups do not change membership automatically. See the <a href=\"#section/Responses/SearchCriteria\">Search Criteria</a> for more information on using dynamic criteria.
+ # @param [Hash] opts the optional parameters
+ # @option opts [AssetGroup] :param0 The details of the asset group.
+ # @return [Array<(CreatedReferenceAssetGroupIDLink, Fixnum, Hash)>] CreatedReferenceAssetGroupIDLink data, response status code and response headers
+ def create_asset_group_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.create_asset_group ..."
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param0'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'CreatedReferenceAssetGroupIDLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#create_asset_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group
+ # Deletes the asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def delete_asset_group(id, opts = {})
+ data, _status_code, _headers = delete_asset_group_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group
+ # Deletes the asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def delete_asset_group_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.delete_asset_group ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.delete_asset_group"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#delete_asset_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group
+ # Returns an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [AssetGroup]
+ def get_asset_group(id, opts = {})
+ data, _status_code, _headers = get_asset_group_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group
+ # Returns an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(AssetGroup, Fixnum, Hash)>] AssetGroup data, response status code and response headers
+ def get_asset_group_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.get_asset_group ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.get_asset_group"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'AssetGroup')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#get_asset_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Assets
+ # Returns hypermedia links for the assets that belong to an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [ReferencesWithAssetIDLink]
+ def get_asset_group_assets(id, opts = {})
+ data, _status_code, _headers = get_asset_group_assets_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Assets
+ # Returns hypermedia links for the assets that belong to an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ReferencesWithAssetIDLink, Fixnum, Hash)>] ReferencesWithAssetIDLink data, response status code and response headers
+ def get_asset_group_assets_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.get_asset_group_assets ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.get_asset_group_assets"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/assets".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ReferencesWithAssetIDLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#get_asset_group_assets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Search Criteria
+ # Returns the search criteria of a dynamic asset group.For a reference of valid search criteria input see the Asset Search resource.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [SearchCriteria]
+ def get_asset_group_search_criteria(id, opts = {})
+ data, _status_code, _headers = get_asset_group_search_criteria_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Search Criteria
+ # Returns the search criteria of a dynamic asset group.For a reference of valid search criteria input see the <a href=\"#operation/getAssetsSearchUsingPOST\">Asset Search</a> resource.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(SearchCriteria, Fixnum, Hash)>] SearchCriteria data, response status code and response headers
+ def get_asset_group_search_criteria_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.get_asset_group_search_criteria ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.get_asset_group_search_criteria"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/search_criteria".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'SearchCriteria')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#get_asset_group_search_criteria\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Tags
+ # Returns the tags assigned to an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [ReferencesWithTagIDLink]
+ def get_asset_group_tags(id, opts = {})
+ data, _status_code, _headers = get_asset_group_tags_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Tags
+ # Returns the tags assigned to an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ReferencesWithTagIDLink, Fixnum, Hash)>] ReferencesWithTagIDLink data, response status code and response headers
+ def get_asset_group_tags_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.get_asset_group_tags ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.get_asset_group_tags"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/tags".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ReferencesWithTagIDLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#get_asset_group_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Users
+ # Returns hypermedia links for the users with access to this asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [ReferencesWithUserIDLink]
+ def get_asset_group_users(id, opts = {})
+ data, _status_code, _headers = get_asset_group_users_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Users
+ # Returns hypermedia links for the users with access to this asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ReferencesWithUserIDLink, Fixnum, Hash)>] ReferencesWithUserIDLink data, response status code and response headers
+ def get_asset_group_users_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.get_asset_group_users ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.get_asset_group_users"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/users".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ReferencesWithUserIDLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#get_asset_group_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Groups
+ # Returns all asset groups.
+ # @param [Hash] opts the optional parameters
+ # @option opts [String] :type The type of asset group.
+ # @option opts [String] :name A search pattern for the name of the asset group. Searches are case-insensitive contains.
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve. (default to 0)
+ # @option opts [Integer] :size The number of records per page to retrieve. (default to 10)
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [PageOfAssetGroup]
+ def get_asset_groups(opts = {})
+ data, _status_code, _headers = get_asset_groups_with_http_info(opts)
+ return data
+ end
+
+ # Asset Groups
+ # Returns all asset groups.
+ # @param [Hash] opts the optional parameters
+ # @option opts [String] :type The type of asset group.
+ # @option opts [String] :name A search pattern for the name of the asset group. Searches are case-insensitive contains.
+ # @option opts [Integer] :page The index of the page (zero-based) to retrieve.
+ # @option opts [Integer] :size The number of records per page to retrieve.
+ # @option opts [Array] :sort The criteria to sort the records by, in the format: `property[,ASC|DESC]`. The default sort order is ascending. Multiple sort criteria can be specified using multiple sort query parameters.
+ # @return [Array<(PageOfAssetGroup, Fixnum, Hash)>] PageOfAssetGroup data, response status code and response headers
+ def get_asset_groups_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.get_asset_groups ..."
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups"
+
+ # query parameters
+ query_params = {}
+ query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil?
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
+ query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
+ query_params[:'sort'] = @api_client.build_collection_param(opts[:'sort'], :multi) if !opts[:'sort'].nil?
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'PageOfAssetGroup')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#get_asset_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Tags
+ # Removes all tag associations from the asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def remove_all_asset_group_tags(id, opts = {})
+ data, _status_code, _headers = remove_all_asset_group_tags_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Tags
+ # Removes all tag associations from the asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def remove_all_asset_group_tags_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.remove_all_asset_group_tags ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.remove_all_asset_group_tags"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/tags".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#remove_all_asset_group_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Assets
+ # Removes the assets from the given static asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def remove_all_assets_from_asset_group(id, opts = {})
+ data, _status_code, _headers = remove_all_assets_from_asset_group_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Assets
+ # Removes the assets from the given static asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def remove_all_assets_from_asset_group_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.remove_all_assets_from_asset_group ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.remove_all_assets_from_asset_group"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/assets".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#remove_all_assets_from_asset_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Asset
+ # Removes an asset from an asset group.
+ # @param id The identifier of the asset group.
+ # @param asset_id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def remove_asset_from_asset_group(id, asset_id, opts = {})
+ data, _status_code, _headers = remove_asset_from_asset_group_with_http_info(id, asset_id, opts)
+ return data
+ end
+
+ # Asset Group Asset
+ # Removes an asset from an asset group.
+ # @param id The identifier of the asset group.
+ # @param asset_id The identifier of the asset.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def remove_asset_from_asset_group_with_http_info(id, asset_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.remove_asset_from_asset_group ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.remove_asset_from_asset_group"
+ end
+ # verify the required parameter 'asset_id' is set
+ if @api_client.config.client_side_validation && asset_id.nil?
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetGroupApi.remove_asset_from_asset_group"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/assets/{assetId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'assetId' + '}', asset_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#remove_asset_from_asset_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Tag
+ # Removes a tag from an asset group.
+ # @param id The identifier of the asset group.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def remove_asset_group_tag(id, tag_id, opts = {})
+ data, _status_code, _headers = remove_asset_group_tag_with_http_info(id, tag_id, opts)
+ return data
+ end
+
+ # Asset Group Tag
+ # Removes a tag from an asset group.
+ # @param id The identifier of the asset group.
+ # @param tag_id The identifier of the tag.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def remove_asset_group_tag_with_http_info(id, tag_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.remove_asset_group_tag ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.remove_asset_group_tag"
+ end
+ # verify the required parameter 'tag_id' is set
+ if @api_client.config.client_side_validation && tag_id.nil?
+ fail ArgumentError, "Missing the required parameter 'tag_id' when calling AssetGroupApi.remove_asset_group_tag"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/tags/{tagId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'tagId' + '}', tag_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#remove_asset_group_tag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group User
+ # Removes a user's access from an asset group.
+ # @param id The identifier of the asset group.
+ # @param user_id The identifier of the user.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def remove_asset_group_user(id, user_id, opts = {})
+ data, _status_code, _headers = remove_asset_group_user_with_http_info(id, user_id, opts)
+ return data
+ end
+
+ # Asset Group User
+ # Removes a user's access from an asset group.
+ # @param id The identifier of the asset group.
+ # @param user_id The identifier of the user.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def remove_asset_group_user_with_http_info(id, user_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.remove_asset_group_user ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.remove_asset_group_user"
+ end
+ # verify the required parameter 'user_id' is set
+ if @api_client.config.client_side_validation && user_id.nil?
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling AssetGroupApi.remove_asset_group_user"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/users/{userId}".sub('{' + 'id' + '}', id.to_s).sub('{' + 'userId' + '}', user_id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#remove_asset_group_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Search Criteria
+ # Updates the search criteria of a dynamic asset group. For a reference of valid search criteria input see the Asset Search resource.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SearchCriteria] :param1 The search criteria specification.
+ # @return [Links]
+ def set_asset_group_search_criteria(id, opts = {})
+ data, _status_code, _headers = set_asset_group_search_criteria_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Search Criteria
+ # Updates the search criteria of a dynamic asset group. For a reference of valid search criteria input see the <a href=\"#operation/getAssetsSearchUsingPOST\">Asset Search</a> resource.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SearchCriteria] :param1 The search criteria specification.
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def set_asset_group_search_criteria_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.set_asset_group_search_criteria ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.set_asset_group_search_criteria"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/search_criteria".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param1'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#set_asset_group_search_criteria\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Tags
+ # Updates the tags of an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Array] :param1 The tags to associate to the asset group.
+ # @return [Links]
+ def set_asset_group_tags(id, opts = {})
+ data, _status_code, _headers = set_asset_group_tags_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Tags
+ # Updates the tags of an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Array] :param1 The tags to associate to the asset group.
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def set_asset_group_tags_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.set_asset_group_tags ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.set_asset_group_tags"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/tags".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param1'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#set_asset_group_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Users
+ # Grants users with sufficient privileges access to an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Array] :param1 The users to grant access to the asset group.
+ # @return [Links]
+ def set_asset_group_users(id, opts = {})
+ data, _status_code, _headers = set_asset_group_users_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Users
+ # Grants users with sufficient privileges access to an asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Array] :param1 The users to grant access to the asset group.
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def set_asset_group_users_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.set_asset_group_users ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.set_asset_group_users"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/users".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param1'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#set_asset_group_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group
+ # Updates the details of an asset group. See the search criteria endpoint (/search_criteria) for more information about building the search criteria and examples.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [AssetGroup] :param1 The details of the asset group.
+ # @return [Links]
+ def update_asset_group(id, opts = {})
+ data, _status_code, _headers = update_asset_group_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group
+ # Updates the details of an asset group. See the search criteria endpoint (/search_criteria) for more information about building the search criteria and examples.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [AssetGroup] :param1 The details of the asset group.
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def update_asset_group_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.update_asset_group ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.update_asset_group"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param1'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#update_asset_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Asset Group Assets
+ # Updates all the assets that belong to a static asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Array] :param1 The assets to place in the asset group.
+ # @return [Links]
+ def update_asset_group_assets(id, opts = {})
+ data, _status_code, _headers = update_asset_group_assets_with_http_info(id, opts)
+ return data
+ end
+
+ # Asset Group Assets
+ # Updates all the assets that belong to a static asset group.
+ # @param id The identifier of the asset group.
+ # @param [Hash] opts the optional parameters
+ # @option opts [Array] :param1 The assets to place in the asset group.
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def update_asset_group_assets_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: AssetGroupApi.update_asset_group_assets ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling AssetGroupApi.update_asset_group_assets"
+ end
+ # resource path
+ local_var_path = "/api/3/asset_groups/{id}/assets".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param1'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: AssetGroupApi#update_asset_group_assets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+ end
+end
diff --git a/lib/rapid7_vm_console/api/credential_api.rb b/lib/rapid7_vm_console/api/credential_api.rb
new file mode 100644
index 0000000..a90be42
--- /dev/null
+++ b/lib/rapid7_vm_console/api/credential_api.rb
@@ -0,0 +1,339 @@
+=begin
+#InsightVM API
+
+## Overview This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS. ## Versioning Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`. ## Specification An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
## Authentication Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`. ### 2FA This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API. ## Resources ### Naming Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` | #### Collections A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ``` #### Instances An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` | ### Common Operations #### OPTIONS All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status. ### Collection Resources Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations. #### GET The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information. #### POST The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued. #### PUT The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. #### DELETE The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. ### Instance Resources Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations. #### GET Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type. #### PUT Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource. #### POST Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint. #### PATCH The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed. #### DELETE Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`. ## Requests Unless otherwise indicated, the default request body media type is `application/json`. ### Headers Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) | ### Dates & Times Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | | ### Timezones Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`. ### Paging Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500. ### Sorting Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order. ## Responses The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. | ### Security The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` | ### Headers Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. | ### Format When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses. #### Dates & Times Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z | #### Content In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document. #### Paging The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection. #### Property Views The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ``` #### Error Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\": , \"links\" : [ { \"rel\" : \"...\", \"href\" : \"...\" } ] } ``` The `status` property is the same as the HTTP status returned in the response, to ease client parsing. The message property is a localized message in the request client's locale (if applicable) that articulates the nature of the error. The last property is the `links` property. This may contain additional [hypermedia links](#section/Overview/Authentication) to troubleshoot. #### Search Criteria Multiple resources make use of search criteria to match assets. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The operator is a type and property-specific operating performed on the filtered property. The valid values for fields and operators are outlined in the table below. Every filter also defines one or more values that are supplied to the operator. The valid values vary by operator and are outlined below. ##### Fields The following table outlines the search criteria fields and the available operators: | Field | Operators | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | `alternate-address-type` | `in` | | `container-image` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is like` ` not like` | | `container-status` | `is` ` is not` | | `containers` | `are` | | `criticality-tag` | `is` ` is not` ` is greater than` ` is less than` ` is applied` ` is not applied` | | `custom-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `cve` | `is` ` is not` ` contains` ` does not contain` | | `cvss-access-complexity` | `is` ` is not` | | `cvss-authentication-required` | `is` ` is not` | | `cvss-access-vector` | `is` ` is not` | | `cvss-availability-impact` | `is` ` is not` | | `cvss-confidentiality-impact` | `is` ` is not` | | `cvss-integrity-impact` | `is` ` is not` | | `cvss-v3-confidentiality-impact` | `is` ` is not` | | `cvss-v3-integrity-impact` | `is` ` is not` | | `cvss-v3-availability-impact` | `is` ` is not` | | `cvss-v3-attack-vector` | `is` ` is not` | | `cvss-v3-attack-complexity` | `is` ` is not` | | `cvss-v3-user-interaction` | `is` ` is not` | | `cvss-v3-privileges-required` | `is` ` is not` | | `host-name` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is empty` ` is not empty` ` is like` ` not like` | | `host-type` | `in` ` not in` | | `ip-address` | `is` ` is not` ` in range` ` not in range` ` is like` ` not like` | | `ip-address-type` | `in` ` not in` | | `last-scan-date` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `location-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `mobile-device-last-sync-time` | `is-within-the-last` ` is earlier than` | | `open-ports` | `is` ` is not` ` in range` | | `operating-system` | `contains` ` does not contain` ` is empty` ` is not empty` | | `owner-tag` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` ` is applied` ` is not applied` | | `pci-compliance` | `is` | | `risk-score` | `is` ` is not` ` in range` ` greater than` ` less than` | | `service-name` | `contains` ` does not contain` | | `site-id` | `in` ` not in` | | `software` | `contains` ` does not contain` | | `vAsset-cluster` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-datacenter` | `is` ` is not` | | `vAsset-host-name` | `is` ` is not` ` contains` ` does not contain` ` starts with` | | `vAsset-power-state` | `in` ` not in` | | `vAsset-resource-pool-path` | `contains` ` does not contain` | | `vulnerability-assessed` | `is-on-or-before` ` is on or after` ` is between` ` is earlier than` ` is within the last` | | `vulnerability-category` | `is` ` is not` ` starts with` ` ends with` ` contains` ` does not contain` | | `vulnerability-cvss-v3-score` | `is` ` is not` | | `vulnerability-cvss-score` | `is` ` is not` ` in range` ` is greater than` ` is less than` | | `vulnerability-exposures` | `includes` ` does not include` | | `vulnerability-title` | `contains` ` does not contain` ` is` ` is not` ` starts with` ` ends with` | | `vulnerability-validated-status` | `are` | ##### Enumerated Properties The following fields have enumerated values: | Field | Acceptable Values | | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `alternate-address-type` | 0=IPv4, 1=IPv6 | | `containers` | 0=present, 1=not present | | `container-status` | `created` `running` `paused` `restarting` `exited` `dead` `unknown` | | `cvss-access-complexity` | L
= LowM
= MediumH
= High
| | `cvss-integrity-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-confidentiality-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-availability-impact` | N
= NoneP
= PartialC
= Complete
| | `cvss-access-vector` | L
= LocalA
= AdjacentN
= Network
| | `cvss-authentication-required` | N
= NoneS
= SingleM
= Multiple
| | `cvss-v3-confidentiality-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-integrity-impact` | L
= LocalL
= LowN
= NoneH
= High
| | `cvss-v3-availability-impact` | | | `cvss-v3-attack-vector` | N
= NetworkA
= AdjacentL
= LocalP
= Physical
| | `cvss-v3-attack-complexity` | | | `cvss-v3-user-interaction` | | | `cvss-v3-privileges-required` | | | `host-type` | 0=Unknown, 1=Guest, 2=Hypervisor, 3=Physical, 4=Mobile | | `ip-address-type` | 0=IPv4, 1=IPv6 | | `pci-compliance` | 0=fail, 1=pass | | `vulnerability-validated-status` | 0=present, 1=not present | ##### Operator Properties The following table outlines which properties are required for each operator and the appropriate data type(s): | Operator | `value` | `lower` | `upper` | | ----------------------|-----------------------|-----------------------|-----------------------| | `are` | `string` | | | | `contains` | `string` | | | | `does-not-contain` | `string` | | | | `ends with` | `string` | | | | `in` | `Array[ string ]` | | | | `in-range` | | `numeric` | `numeric` | | `includes` | `Array[ string ]` | | | | `is` | `string` | | | | `is-applied` | | | | | `is-between` | | `numeric` | `numeric` | | `is-earlier-than` | `numeric` | | | | `is-empty` | | | | | `is-greater-than` | `numeric` | | | | `is-on-or-after` | `string` (yyyy-MM-dd) | | | | `is-on-or-before` | `string` (yyyy-MM-dd) | | | | `is-not` | `string` | | | | `is-not-applied` | | | | | `is-not-empty` | | | | | `is-within-the-last` | `string` | | | | `less-than` | `string` | | | | `like` | `string` | | | | `not-contains` | `string` | | | | `not-in` | `Array[ string ]` | | | | `not-in-range` | | `numeric` | `numeric` | | `not-like` | `string` | | | | `starts-with` | `string` | | | #### Discovery Connection Search Criteria Dynamic sites make use of search criteria to match assets from a discovery connection. Search criteria is an array of search filters. Each search filter has a generic format of: ```json { \"field\": \"\", \"operator\": \"\", [\"value\": \"\",] [\"lower\": \"\",] [\"upper\": \"\"] } ``` Every filter defines two required properties `field` and `operator`. The field is the name of an asset property that is being filtered on. The list of supported fields vary depending on the type of discovery connection configured for the dynamic site (e.g vSphere, ActiveSync, etc.). The operator is a type and property-specific operating performed on the filtered property. The valid values for fields outlined in the tables below and are grouped by the type of connection. Every filter also defines one or more values that are supplied to the operator. See Search Criteria Operator Properties for more information on the valid values for each operator. ##### Fields (ActiveSync) This section documents search criteria information for ActiveSync discovery connections. The discovery connections must be one of the following types: `\"activesync-ldap\"`, `\"activesync-office365\"`, or `\"activesync-powershell\"`. The following table outlines the search criteria fields and the available operators for ActiveSync connections: | Field | Operators | | --------------------------------- | ------------------------------------------------------------- | | `last-sync-time` | `is-within-the-last` ` is-earlier-than` | | `operating-system` | `contains` ` does-not-contain` | | `user` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (AWS) This section documents search criteria information for AWS discovery connections. The discovery connections must be the type `\"aws\"`. The following table outlines the search criteria fields and the available operators for AWS connections: | Field | Operators | | ----------------------- | ------------------------------------------------------------- | | `availability-zone` | `contains` ` does-not-contain` | | `guest-os-family` | `contains` ` does-not-contain` | | `instance-id` | `contains` ` does-not-contain` | | `instance-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `instance-state` | `in` ` not-in` | | `instance-type` | `in` ` not-in` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `region` | `in` ` not-in` | | `vpc-id` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (DHCP) This section documents search criteria information for DHCP discovery connections. The discovery connections must be the type `\"dhcp\"`. The following table outlines the search criteria fields and the available operators for DHCP connections: | Field | Operators | | --------------- | ------------------------------------------------------------- | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `mac-address` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Fields (Sonar) This section documents search criteria information for Sonar discovery connections. The discovery connections must be the type `\"sonar\"`. The following table outlines the search criteria fields and the available operators for Sonar connections: | Field | Operators | | ------------------- | -------------------- | | `search-domain` | `contains` ` is` | | `ip-address` | `in-range` ` is` | | `sonar-scan-date` | `is-within-the-last` | ##### Fields (vSphere) This section documents search criteria information for vSphere discovery connections. The discovery connections must be the type `\"vsphere\"`. The following table outlines the search criteria fields and the available operators for vSphere connections: | Field | Operators | | -------------------- | ------------------------------------------------------------------------------------------ | | `cluster` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `data-center` | `is` ` is-not` | | `discovered-time` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `guest-os-family` | `contains` ` does-not-contain` | | `host-name` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | | `ip-address` | `in-range` ` not-in-range` ` is` ` is-not` | | `power-state` | `in` ` not-in` | | `resource-pool-path` | `contains` ` does-not-contain` | | `last-time-seen` | `is-on-or-before` ` is-on-or-after` ` is-between` ` is-earlier-than` ` is-within-the-last` | | `vm` | `is` ` is-not` ` contains` ` does-not-contain` ` starts-with` | ##### Enumerated Properties (vSphere) The following fields have enumerated values: | Field | Acceptable Values | | ------------- | ------------------------------------ | | `power-state` | `poweredOn` `poweredOff` `suspended` | ## HATEOAS This API follows Hypermedia as the Engine of Application State (HATEOAS) principals and is therefore hypermedia friendly. Hyperlinks are returned in the `links` property of any given resource and contain a fully-qualified hyperlink to the corresponding resource. The format of the hypermedia link adheres to both the {json:api} v1 \"Link Object\" and JSON Hyper-Schema \"Link Description Object\" formats. For example: ```json \"links\": [{ \"rel\": \"\", \"href\": \"\" ... }] ``` Where appropriate link objects may also contain additional properties than the `rel` and `href` properties, such as `id`, `type`, etc. See the [Root](#tag/Root) resources for the entry points into API discovery.
+
+OpenAPI spec version: 3
+Contact: support@rapid7.com
+Generated by: https://github.com/swagger-api/swagger-codegen.git
+Swagger Codegen version: 2.3.0
+
+=end
+
+require "uri"
+
+module Rapid7VmConsole
+ class CredentialApi
+ attr_accessor :api_client
+
+ def initialize(api_client = ApiClient.default)
+ @api_client = api_client
+ end
+
+ # Shared Credentials
+ # Creates a new shared credential.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SharedCredential] :param0 The specification of a shared credential.
+ # @return [CreatedReferenceCredentialIDLink]
+ def create_shared_credential(opts = {})
+ data, _status_code, _headers = create_shared_credential_with_http_info(opts)
+ return data
+ end
+
+ # Shared Credentials
+ # Creates a new shared credential.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SharedCredential] :param0 The specification of a shared credential.
+ # @return [Array<(CreatedReferenceCredentialIDLink, Fixnum, Hash)>] CreatedReferenceCredentialIDLink data, response status code and response headers
+ def create_shared_credential_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: CredentialApi.create_shared_credential ..."
+ end
+ # resource path
+ local_var_path = "/api/3/shared_credentials"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param0'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'CreatedReferenceCredentialIDLink')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: CredentialApi#create_shared_credential\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Shared Credentials
+ # Deletes all shared credentials.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def delete_all_shared_credentials(opts = {})
+ data, _status_code, _headers = delete_all_shared_credentials_with_http_info(opts)
+ return data
+ end
+
+ # Shared Credentials
+ # Deletes all shared credentials.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def delete_all_shared_credentials_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: CredentialApi.delete_all_shared_credentials ..."
+ end
+ # resource path
+ local_var_path = "/api/3/shared_credentials"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: CredentialApi#delete_all_shared_credentials\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Shared Credential
+ # Deletes the specified shared scan credential.
+ # @param id The identifier of the credential.
+ # @param [Hash] opts the optional parameters
+ # @return [Links]
+ def delete_shared_credential(id, opts = {})
+ data, _status_code, _headers = delete_shared_credential_with_http_info(id, opts)
+ return data
+ end
+
+ # Shared Credential
+ # Deletes the specified shared scan credential.
+ # @param id The identifier of the credential.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def delete_shared_credential_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: CredentialApi.delete_shared_credential ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling CredentialApi.delete_shared_credential"
+ end
+ # resource path
+ local_var_path = "/api/3/shared_credentials/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: CredentialApi#delete_shared_credential\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Shared Credential
+ # Retrieves the specified shared credential.
+ # @param id The identifier of the credential.
+ # @param [Hash] opts the optional parameters
+ # @return [SharedCredential]
+ def get_shared_credential(id, opts = {})
+ data, _status_code, _headers = get_shared_credential_with_http_info(id, opts)
+ return data
+ end
+
+ # Shared Credential
+ # Retrieves the specified shared credential.
+ # @param id The identifier of the credential.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(SharedCredential, Fixnum, Hash)>] SharedCredential data, response status code and response headers
+ def get_shared_credential_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: CredentialApi.get_shared_credential ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling CredentialApi.get_shared_credential"
+ end
+ # resource path
+ local_var_path = "/api/3/shared_credentials/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'SharedCredential')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: CredentialApi#get_shared_credential\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Shared Credentials
+ # Retrieves all defined shared credential resources.
+ # @param [Hash] opts the optional parameters
+ # @return [ResourcesSharedCredential]
+ def get_shared_credentials(opts = {})
+ data, _status_code, _headers = get_shared_credentials_with_http_info(opts)
+ return data
+ end
+
+ # Shared Credentials
+ # Retrieves all defined shared credential resources.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(ResourcesSharedCredential, Fixnum, Hash)>] ResourcesSharedCredential data, response status code and response headers
+ def get_shared_credentials_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: CredentialApi.get_shared_credentials ..."
+ end
+ # resource path
+ local_var_path = "/api/3/shared_credentials"
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = nil
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'ResourcesSharedCredential')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: CredentialApi#get_shared_credentials\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Shared Credential
+ # Updates the specified shared credential.
+ # @param id The identifier of the credential.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SharedCredential] :param1 The specification of the shared credential to update.
+ # @return [Links]
+ def update_shared_credential(id, opts = {})
+ data, _status_code, _headers = update_shared_credential_with_http_info(id, opts)
+ return data
+ end
+
+ # Shared Credential
+ # Updates the specified shared credential.
+ # @param id The identifier of the credential.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SharedCredential] :param1 The specification of the shared credential to update.
+ # @return [Array<(Links, Fixnum, Hash)>] Links data, response status code and response headers
+ def update_shared_credential_with_http_info(id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "Calling API: CredentialApi.update_shared_credential ..."
+ end
+ # verify the required parameter 'id' is set
+ if @api_client.config.client_side_validation && id.nil?
+ fail ArgumentError, "Missing the required parameter 'id' when calling CredentialApi.update_shared_credential"
+ end
+ # resource path
+ local_var_path = "/api/3/shared_credentials/{id}".sub('{' + 'id' + '}', id.to_s)
+
+ # query parameters
+ query_params = {}
+
+ # header parameters
+ header_params = {}
+ # HTTP header 'Accept' (if needed)
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=UTF-8'])
+ # HTTP header 'Content-Type'
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
+
+ # form parameters
+ form_params = {}
+
+ # http body (model)
+ post_body = @api_client.object_to_http_body(opts[:'param1'])
+ auth_names = []
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => 'Links')
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: CredentialApi#update_shared_credential\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+ end
+end
diff --git a/lib/rapid7_vm_console/api/policy_api.rb b/lib/rapid7_vm_console/api/policy_api.rb
new file mode 100644
index 0000000..400dc5b
--- /dev/null
+++ b/lib/rapid7_vm_console/api/policy_api.rb
@@ -0,0 +1,1699 @@
+=begin
+#InsightVM API
+
+## Overview This guide documents the InsightVM Application Programming Interface (API) Version 3. This API supports the Representation State Transfer (REST) design pattern. Unless noted otherwise this API accepts and produces the `application/json` media type. This API uses Hypermedia as the Engine of Application State (HATEOAS) and is hypermedia friendly. All API connections must be made to the security console using HTTPS. ## Versioning Versioning is specified in the URL and the base path of this API is: `https://:/api/3/`. ## Specification An OpenAPI v2 specification (also known as Swagger 2) of this API is available. Tools such as swagger-codegen can be used to generate an API client in the language of your choosing using this specification document. Download the specification: Download
## Authentication Authorization to the API uses HTTP Basic Authorization (see RFC 2617 for more information). Requests must supply authorization credentials in the `Authorization` header using a Base64 encoded hash of `\"username:password\"`. ### 2FA This API supports two-factor authentication (2FA) by supplying an authentication token in addition to the Basic Authorization. The token is specified using the `Token` request header. To leverage two-factor authentication, this must be enabled on the console and be configured for the account accessing the API. ## Resources ### Naming Resource names represent nouns and identify the entity being manipulated or accessed. All collection resources are pluralized to indicate to the client they are interacting with a collection of multiple resources of the same type. Singular resource names are used when there exists only one resource available to interact with. The following naming conventions are used by this API: | Type | Case | | --------------------------------------------- | ------------------------ | | Resource names | `lower_snake_case` | | Header, body, and query parameters parameters | `camelCase` | | JSON fields and property names | `camelCase` | #### Collections A collection resource is a parent resource for instance resources, but can itself be retrieved and operated on independently. Collection resources use a pluralized resource name. The resource path for collection resources follow the convention: ``` /api/3/{resource_name} ``` #### Instances An instance resource is a \"leaf\" level resource that may be retrieved, optionally nested within a collection resource. Instance resources are usually retrievable with opaque identifiers. The resource path for instance resources follows the convention: ``` /api/3/{resource_name}/{instance_id}... ``` ## Verbs The following HTTP operations are supported throughout this API. The general usage of the operation and both its failure and success status codes are outlined below. | Verb | Usage | Success | Failure | | --------- | ------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------- | | `GET` | Used to retrieve a resource by identifier, or a collection of resources by type. | `200` | `400`, `401`, `402`, `404`, `405`, `408`, `410`, `415`, `500` | | `POST` | Creates a resource with an application-specified identifier. | `201` | `400`, `401`, `404`, `405`, `408`, `413`, `415`, `500` | | `POST` | Performs a request to queue an asynchronous job. | `202` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Creates a resource with a client-specified identifier. | `200` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `PUT` | Performs a full update of a resource with a specified identifier. | `201` | `400`, `401`, `403`, `405`, `408`, `410`, `413`, `415`, `500` | | `DELETE` | Deletes a resource by identifier or an entire collection of resources. | `204` | `400`, `401`, `405`, `408`, `410`, `413`, `415`, `500` | | `OPTIONS` | Requests what operations are available on a resource. | `200` | `401`, `404`, `405`, `408`, `500` | ### Common Operations #### OPTIONS All resources respond to the `OPTIONS` request, which allows discoverability of available operations that are supported. The `OPTIONS` response returns the acceptable HTTP operations on that resource within the `Allow` header. The response is always a `200 OK` status. ### Collection Resources Collection resources can support the `GET`, `POST`, `PUT`, and `DELETE` operations. #### GET The `GET` operation invoked on a collection resource indicates a request to retrieve all, or some, of the entities contained within the collection. This also includes the optional capability to filter or search resources during the request. The response from a collection listing is a paginated document. See [hypermedia links](#section/Overview/Paging) for more information. #### POST The `POST` is a non-idempotent operation that allows for the creation of a new resource when the resource identifier is not provided by the system during the creation operation (i.e. the Security Console generates the identifier). The content of the `POST` request is sent in the request body. The response to a successful `POST` request should be a `201 CREATED` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. The `POST` to a collection resource can also be used to interact with asynchronous resources. In this situation, instead of a `201 CREATED` response, the `202 ACCEPTED` response indicates that processing of the request is not fully complete but has been accepted for future processing. This request will respond similarly with a `Location` header with link to the job-oriented asynchronous resource that was created and/or queued. #### PUT The `PUT` is an idempotent operation that either performs a create with user-supplied identity, or a full replace or update of a resource by a known identifier. The response to a `PUT` operation to create an entity is a `201 Created` with a valid `Location` header field set to the URI that can be used to access to the newly created resource. `PUT` on a collection resource replaces all values in the collection. The typical response to a `PUT` operation that updates an entity is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. #### DELETE The `DELETE` is an idempotent operation that physically deletes a resource, or removes an association between resources. The typical response to a `DELETE` operation is hypermedia links, which may link to related resources caused by the side-effects of the changes performed. ### Instance Resources Instance resources can support the `GET`, `PUT`, `POST`, `PATCH` and `DELETE` operations. #### GET Retrieves the details of a specific resource by its identifier. The details retrieved can be controlled through property selection and property views. The content of the resource is returned within the body of the response in the acceptable media type. #### PUT Allows for and idempotent \"full update\" (complete replacement) on a specific resource. If the resource does not exist, it will be created; if it does exist, it is completely overwritten. Any omitted properties in the request are assumed to be undefined/null. For \"partial updates\" use `POST` or `PATCH` instead. The content of the `PUT` request is sent in the request body. The identifier of the resource is specified within the URL (not the request body). The response to a successful `PUT` request is a `201 CREATED` to represent the created status, with a valid `Location` header field set to the URI that can be used to access to the newly created (or fully replaced) resource. #### POST Performs a non-idempotent creation of a new resource. The `POST` of an instance resource most commonly occurs with the use of nested resources (e.g. searching on a parent collection resource). The response to a `POST` of an instance resource is typically a `200 OK` if the resource is non-persistent, and a `201 CREATED` if there is a resource created/persisted as a result of the operation. This varies by endpoint. #### PATCH The `PATCH` operation is used to perform a partial update of a resource. `PATCH` is a non-idempotent operation that enforces an atomic mutation of a resource. Only the properties specified in the request are to be overwritten on the resource it is applied to. If a property is missing, it is assumed to not have changed. #### DELETE Permanently removes the individual resource from the system. If the resource is an association between resources, only the association is removed, not the resources themselves. A successful deletion of the resource should return `204 NO CONTENT` with no response body. This operation is not fully idempotent, as follow-up requests to delete a non-existent resource should return a `404 NOT FOUND`. ## Requests Unless otherwise indicated, the default request body media type is `application/json`. ### Headers Commonly used request headers include: | Header | Example | Purpose | | ------------------ | --------------------------------------------- | ---------------------------------------------------------------------------------------------- | | `Accept` | `application/json` | Defines what acceptable content types are allowed by the client. For all types, use `*/*`. | | `Accept-Encoding` | `deflate, gzip` | Allows for the encoding to be specified (such as gzip). | | `Accept-Language` | `en-US` | Indicates to the server the client's locale (defaults `en-US`). | | `Authorization ` | `Basic Base64(\"username:password\")` | Basic authentication | | `Token ` | `123456` | Two-factor authentication token (if enabled) | ### Dates & Times Dates and/or times are specified as strings in the ISO 8601 format(s). The following formats are supported as input: | Value | Format | Notes | | --------------------------- | ------------------------------------------------------ | ----------------------------------------------------- | | Date | YYYY-MM-DD | Defaults to 12 am UTC (if used for a date & time | | Date & time only | YYYY-MM-DD'T'hh:mm:ss[.nnn] | Defaults to UTC | | Date & time in UTC | YYYY-MM-DD'T'hh:mm:ss[.nnn]Z | | | Date & time w/ offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm | | | Date & time w/ zone-offset | YYYY-MM-DD'T'hh:mm:ss[.nnn][+|-]hh:mm[] | | ### Timezones Timezones are specified in the regional zone format, such as `\"America/Los_Angeles\"`, `\"Asia/Tokyo\"`, or `\"GMT\"`. ### Paging Pagination is supported on certain collection resources using a combination of two query parameters, `page` and `size`. As these are control parameters, they are prefixed with the underscore character. The page parameter dictates the zero-based index of the page to retrieve, and the `size` indicates the size of the page. For example, `/resources?page=2&size=10` will return page 3, with 10 records per page, giving results 21-30. The maximum page size for a request is 500. ### Sorting Sorting is supported on paginated resources with the `sort` query parameter(s). The sort query parameter(s) supports identifying a single or multi-property sort with a single or multi-direction output. The format of the parameter is: ``` sort=property[,ASC|DESC]... ``` Therefore, the request `/resources?sort=name,title,DESC` would return the results sorted by the name and title descending, in that order. The sort directions are either ascending `ASC` or descending `DESC`. With single-order sorting, all properties are sorted in the same direction. To sort the results with varying orders by property, multiple sort parameters are passed. For example, the request `/resources?sort=name,ASC&sort=title,DESC` would sort by name ascending and title descending, in that order. ## Responses The following response statuses may be returned by this API. | Status | Meaning | Usage | | ------ | ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `200` | OK | The operation performed without error according to the specification of the request, and no more specific 2xx code is suitable. | | `201` | Created | A create request has been fulfilled and a resource has been created. The resource is available as the URI specified in the response, including the `Location` header. | | `202` | Accepted | An asynchronous task has been accepted, but not guaranteed, to be processed in the future. | | `400` | Bad Request | The request was invalid or cannot be otherwise served. The request is not likely to succeed in the future without modifications. | | `401` | Unauthorized | The user is unauthorized to perform the operation requested, or does not maintain permissions to perform the operation on the resource specified. | | `403` | Forbidden | The resource exists to which the user has access, but the operating requested is not permitted. | | `404` | Not Found | The resource specified could not be located, does not exist, or an unauthenticated client does not have permissions to a resource. | | `405` | Method Not Allowed | The operations may not be performed on the specific resource. Allowed operations are returned and may be performed on the resource. | | `408` | Request Timeout | The client has failed to complete a request in a timely manner and the request has been discarded. | | `413` | Request Entity Too Large | The request being provided is too large for the server to accept processing. | | `415` | Unsupported Media Type | The media type is not supported for the requested resource. | | `500` | Internal Server Error | An internal and unexpected error has occurred on the server at no fault of the client. | ### Security The response statuses 401, 403 and 404 need special consideration for security purposes. As necessary, error statuses and messages may be obscured to strengthen security and prevent information exposure. The following is a guideline for privileged resource response statuses: | Use Case | Access | Resource | Permission | Status | | ------------------------------------------------------------------ | ------------------ |------------------- | ------------ | ------------ | | Unauthenticated access to an unauthenticated resource. | Unauthenticated | Unauthenticated | Yes | `20x` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Authenticated | No | `401` | | Unauthenticated access to an authenticated resource. | Unauthenticated | Non-existent | No | `401` | | Authenticated access to a unauthenticated resource. | Authenticated | Unauthenticated | Yes | `20x` | | Authenticated access to an authenticated, unprivileged resource. | Authenticated | Authenticated | No | `404` | | Authenticated access to an authenticated, privileged resource. | Authenticated | Authenticated | Yes | `20x` | | Authenticated access to an authenticated, non-existent resource | Authenticated | Non-existent | Yes | `404` | ### Headers Commonly used response headers include: | Header | Example | Purpose | | -------------------------- | --------------------------------- | --------------------------------------------------------------- | | `Allow` | `OPTIONS, GET` | Defines the allowable HTTP operations on a resource. | | `Cache-Control` | `no-store, must-revalidate` | Disables caching of resources (as they are all dynamic). | | `Content-Encoding` | `gzip` | The encoding of the response body (if any). | | `Location` | | Refers to the URI of the resource created by a request. | | `Transfer-Encoding` | `chunked` | Specified the encoding used to transform response. | | `Retry-After` | 5000 | Indicates the time to wait before retrying a request. | | `X-Content-Type-Options` | `nosniff` | Disables MIME type sniffing. | | `X-XSS-Protection` | `1; mode=block` | Enables XSS filter protection. | | `X-Frame-Options` | `SAMEORIGIN` | Prevents rendering in a frame from a different origin. | | `X-UA-Compatible` | `IE=edge,chrome=1` | Specifies the browser mode to render in. | ### Format When `application/json` is returned in the response body it is always pretty-printed (indented, human readable output). Additionally, gzip compression/encoding is supported on all responses. #### Dates & Times Dates or times are returned as strings in the ISO 8601 'extended' format. When a date and time is returned (instant) the value is converted to UTC. For example: | Value | Format | Example | | --------------- | ------------------------------ | --------------------- | | Date | `YYYY-MM-DD` | 2017-12-03 | | Date & Time | `YYYY-MM-DD'T'hh:mm:ss[.nnn]Z` | 2017-12-03T10:15:30Z | #### Content In some resources a Content data type is used. This allows for multiple formats of representation to be returned within resource, specifically `\"html\"` and `\"text\"`. The `\"text\"` property returns a flattened representation suitable for output in textual displays. The `\"html\"` property returns an HTML fragment suitable for display within an HTML element. Note, the HTML returned is not a valid stand-alone HTML document. #### Paging The response to a paginated request follows the format: ```json { resources\": [ ... ], \"page\": { \"number\" : ..., \"size\" : ..., \"totalResources\" : ..., \"totalPages\" : ... }, \"links\": [ \"first\" : { \"href\" : \"...\" }, \"prev\" : { \"href\" : \"...\" }, \"self\" : { \"href\" : \"...\" }, \"next\" : { \"href\" : \"...\" }, \"last\" : { \"href\" : \"...\" } ] } ``` The `resources` property is an array of the resources being retrieved from the endpoint, each which should contain at minimum a \"self\" relation hypermedia link. The `page` property outlines the details of the current page and total possible pages. The object for the page includes the following properties: - number - The page number (zero-based) of the page returned. - size - The size of the pages, which is less than or equal to the maximum page size. - totalResources - The total amount of resources available across all pages. - totalPages - The total amount of pages. The last property of the paged response is the `links` array, which contains all available hypermedia links. For paginated responses, the \"self\", \"next\", \"previous\", \"first\", and \"last\" links are returned. The \"self\" link must always be returned and should contain a link to allow the client to replicate the original request against the collection resource in an identical manner to that in which it was invoked. The \"next\" and \"previous\" links are present if either or both there exists a previous or next page, respectively. The \"next\" and \"previous\" links have hrefs that allow \"natural movement\" to the next page, that is all parameters required to move the next page are provided in the link. The \"first\" and \"last\" links provide references to the first and last pages respectively. Requests outside the boundaries of the pageable will result in a `404 NOT FOUND`. Paginated requests do not provide a \"stateful cursor\" to the client, nor does it need to provide a read consistent view. Records in adjacent pages may change while pagination is being traversed, and the total number of pages and resources may change between requests within the same filtered/queries resource collection. #### Property Views The \"depth\" of the response of a resource can be configured using a \"view\". All endpoints supports two views that can tune the extent of the information returned in the resource. The supported views are `summary` and `details` (the default). View are specified using a query parameter, in this format: ```bash /?view={viewName} ``` #### Error Any error responses can provide a response body with a message to the client indicating more information (if applicable) to aid debugging of the error. All 40x and 50x responses will return an error response in the body. The format of the response is as follows: ```json { \"status\": , \"message\":