# GMP: Greenbone Management Protocol

Version: 22.7

The management protocol of the Greenbone Vulnerability Manager.

## Contents

1. Summary of Data Types
2. Summary of Elements
3. Summary of Commands
4. RNC Preamble
5. Data Type Details
6. Element Details
7. Command Details
8. Compatibility Changes in Version 22.7

## 1 Summary of Data Types

alive_test | An alive test.
base64 | Base64 encoded data.
boolean | A true or false value.
boolean_atoi | A true or false value, after conversion to an integer.
compliance_levels | A string selecting compliance levels that may include the characters y, n, i and u.
compliance_status | A compliance status.
ctime | A date and time, in the C `ctime' format.
delta_states | A string selecting delta states that may include the characters c, g, n and s.
decimal | A decimal number that can have a fractional part.
type_name | A name of a data type.
integer | An integer.
iso_time | A date and time, in ISO 8601 format.
levels | A string selecting severity levels that may include the characters c, h, m, l, g and f.
name | A name.
port | A port.
port_range | A comma separated list of port ranges, prefixed with "T:" for TCP and "U:" for UDP, allowing whitespace.
user_list | A space separated list of users.
oid | An Object Identifier (OID).
scanner_type | A number specifying the type of a scanner.
severity | A severity score.
sort_order | A string describing an order for sorting.
status | The success or failure status of a command.
task_status | A task run status.
task_trend | The trend of results for a task.
ticket_status | A ticket status.
threat | A threat level.
time_unit | A unit of time.
timezone | A timezone.
uuid | A Universally Unique Identifier (UUID).
uuid_or_empty | A Universally Unique Identifier (UUID), or the empty string.

## 2 Summary of Elements

c | A reference to a command.
e | A reference to an element.
r | A reference to a response.
o | An optional pattern item.
g | A group of pattern items.
any | Pattern item indicating "any number of".
pattern | The pattern element of a command or command descendant.
command_definition | Definition of a command in GMP describing HELP command.
filter_keywords | A group of filter keywords usable in an attribute or element text.
certificate_info | Info about a certificate.
nvt | Meta information of a network vulnerability test.
note | A note.
override | An override.
result | A result.
report | Actually attributes and either base64 or a report.
severities | A collection of severity scoring info.

## 3 Summary of Commands

authenticate | Authenticate with the manager.
create_alert | Create an alert.
create_asset | Create an asset.
create_config | Create a config.
create_credential | Create a credential.
create_filter | Create a filter.
create_group | Create a group.
create_note | Create a note.
create_override | Create an override.
create_permission | Create a permission.
create_port_list | Create a port list.
create_port_range | Create a port range.
create_report | Create a report.
create_report_config | Create a report config.
create_report_format | Create a report format.
create_role | Create a role.
create_scanner | Create a scanner.
create_schedule | Create a schedule.
create_tag | Create a tag.
create_target | Create a target.
create_task | Create a task.
create_ticket | Create a ticket.
create_tls_certificate | Create a TLS certificate.
create_user | Create a user.
delete_alert | Delete an alert.
delete_asset | Delete an asset.
delete_config | Delete a config.
delete_credential | Delete a credential.
delete_filter | Delete a filter.
delete_group | Delete a group.
delete_note | Delete a note.
delete_override | Delete an override.
delete_permission | Delete a permission.
delete_port_list | Delete a port list.
delete_port_range | Delete a port range.
delete_report | Delete a report.
delete_report_config | Delete a report config.
delete_report_format | Delete a report format.
delete_role | Delete a role.
delete_scanner | Delete a scanner.
delete_schedule | Delete a schedule.
delete_tag | Delete a tag.
delete_target | Delete a target.
delete_task | Delete a task.
delete_ticket | Delete a ticket.
delete_user | Delete a user.
describe_auth | Describe authentication methods.
empty_trashcan | Empty the trashcan.
get_aggregates | Get aggregates of various resources.
get_alerts | Get one or many alerts.
get_assets | Get one or many assets.
get_configs | Get one or many configs.
get_credentials | Get one or many credentials.
get_credential_stores | Get one or many credential stores.
get_features | Get a list of optional features.
get_feeds | Get one or many feeds.
get_filters | Get one or many filters.
get_groups | Get one or many groups.
get_info | Get information for items of given type.
get_integration_configs | Get integration configurations.
get_license | Get the current license.
get_notes | Get one or many notes.
get_nvt_families | Get a list of all NVT families.
get_nvts | Get one or many NVTs.
get_overrides | Get one or many overrides.
get_permissions | Get one or many permissions.
get_port_lists | Get one or many port lists.
get_preferences | Get one or many preferences.
get_report_applications | Get applications from a report.
get_report_configs | Get one or many report configs.
get_report_errors | Get error messages from a report.
get_report_formats | Get one or many report formats.
get_report_hosts | Get hosts from a report.
get_report_operating_systems | Get operating systems from a report.
get_report_ports | Get ports from a report.
get_report_tls_certificates | Get TLS certificates from a report.
get_reports | Get one or many reports.
get_resource_names | Get one or many names and IDs for items of given type.
get_results | Get results.
get_roles | Get one or many roles.
get_scanners | Get one or many scanners.
get_schedules | Get one or many schedules.
get_settings | Get one or many settings.
get_system_reports | Get one or many system reports.
get_tags | Get one or many tags.
get_targets | Get one or many targets.
get_tasks | Get one or many tasks.
get_tickets | Get one or many tickets.
get_timezones | Get a list of supported timezones.
get_tls_certificates | Get one or many TLS certificates.
get_users | Get one or many users.
get_version | Get the Greenbone Management Protocol version.
get_vulns | Get one or many vulnerabilities.
help | Get the help text.
modify_alert | Modify an existing alert.
modify_asset | Modify an existing asset.
modify_auth | Modify the authentication methods.
modify_config | Modify an existing config.
modify_credential | Modify an existing credential.
modify_filter | Modify an existing filter.
modify_group | Modify an existing group.
modify_integration_config | Modify an integration configuration.
modify_license | Modify the existing license.
modify_note | Modify an existing note.
modify_override | Modify an existing override.
modify_permission | Modify a permission.
modify_port_list | Modify an existing port list.
modify_report_config | Modify an existing report config.
modify_report_format | Update an existing report format.
modify_role | Modify an existing role.
modify_scanner | Modify an existing scanner.
modify_schedule | Modify an existing schedule.
modify_setting | Modify an existing setting.
modify_tag | Modify a tag.
modify_target | Modify an existing target.
modify_task | Modify an existing task.
modify_ticket | Modify an existing ticket.
modify_tls_certificate | Create a TLS certificate.
modify_user | Modify an existing user.
move_task | Moves an existing task to another slave scanner or the master.
restore | Restore a resource.
resume_task | Resume a task.
run_wizard | Run a wizard.
start_task | Manually start an existing task.
stop_task | Stop a running task.
sync_config | Synchronize a config with a scanner.
test_alert | Run an alert.
verify_report_format | Verify a report format.
verify_scanner | Verify a scanner.

## 4 RNC Preamble

    ### Preamble

    start = command | response

    command
      = authenticate
        | create_alert
        | create_asset
        | create_config
        | create_credential
        | create_filter
        | create_group
        | create_note
        | create_override
        | create_permission
        | create_port_list
        | create_port_range
        | create_report
        | create_report_config
        | create_report_format
        | create_role
        | create_scanner
        | create_schedule
        | create_tag
        | create_target
        | create_task
        | create_ticket
        | create_tls_certificate
        | create_user
        | delete_alert
        | delete_asset
        | delete_config
        | delete_credential
        | delete_filter
        | delete_group
        | delete_note
        | delete_override
        | delete_permission
        | delete_port_list
        | delete_port_range
        | delete_report
        | delete_report_config
        | delete_report_format
        | delete_role
        | delete_scanner
        | delete_schedule
        | delete_tag
        | delete_target
        | delete_task
        | delete_ticket
        | delete_user
        | describe_auth
        | empty_trashcan
        | get_aggregates
        | get_alerts
        | get_assets
        | get_configs
        | get_credentials
        | get_credential_stores
        | get_features
        | get_feeds
        | get_filters
        | get_groups
        | get_info
        | get_integration_configs
        | get_license
        | get_notes
        | get_nvt_families
        | get_nvts
        | get_overrides
        | get_permissions
        | get_port_lists
        | get_preferences
        | get_report_applications
        | get_report_configs
        | get_report_errors
        | get_report_formats
        | get_report_hosts
        | get_report_operating_systems
        | get_report_ports
        | get_report_tls_certificates
        | get_reports
        | get_resource_names
        | get_results
        | get_roles
        | get_scanners
        | get_schedules
        | get_settings
        | get_system_reports
        | get_tags
        | get_targets
        | get_tasks
        | get_tickets
        | get_timezones
        | get_tls_certificates
        | get_users
        | get_version
        | get_vulns
        | help
        | modify_alert
        | modify_asset
        | modify_auth
        | modify_config
        | modify_credential
        | modify_filter
        | modify_group
        | modify_integration_config
        | modify_license
        | modify_note
        | modify_override
        | modify_permission
        | modify_port_list
        | modify_report_config
        | modify_report_format
        | modify_role
        | modify_scanner
        | modify_schedule
        | modify_setting
        | modify_tag
        | modify_target
        | modify_task
        | modify_ticket
        | modify_tls_certificate
        | modify_user
        | move_task
        | restore
        | resume_task
        | run_wizard
        | start_task
        | stop_task
        | sync_config
        | test_alert
        | verify_report_format
        | verify_scanner

    response
      = authenticate_response
        | create_alert_response
        | create_asset_response
        | create_config_response
        | create_credential_response
        | create_filter_response
        | create_group_response
        | create_note_response
        | create_override_response
        | create_permission_response
        | create_port_list_response
        | create_port_range_response
        | create_report_response
        | create_report_config_response
        | create_report_format_response
        | create_role_response
        | create_scanner_response
        | create_schedule_response
        | create_tag_response
        | create_target_response
        | create_task_response
        | create_ticket_response
        | create_tls_certificate_response
        | create_user_response
        | delete_alert_response
        | delete_asset_response
        | delete_config_response
        | delete_credential_response
        | delete_filter_response
        | delete_group_response
        | delete_note_response
        | delete_override_response
        | delete_permission_response
        | delete_port_list_response
        | delete_port_range_response
        | delete_report_response
        | delete_report_config_response
        | delete_report_format_response
        | delete_role_response
        | delete_scanner_response
        | delete_schedule_response
        | delete_tag_response
        | delete_target_response
        | delete_task_response
        | delete_ticket_response
        | delete_user_response
        | describe_auth_response
        | empty_trashcan_response
        | get_aggregates_response
        | get_alerts_response
        | get_assets_response
        | get_configs_response
        | get_credentials_response
        | get_credential_stores_response
        | get_features_response
        | get_feeds_response
        | get_filters_response
        | get_groups_response
        | get_info_response
        | get_integration_configs_response
        | get_license_response
        | get_notes_response
        | get_nvt_families_response
        | get_nvts_response
        | get_overrides_response
        | get_permissions_response
        | get_port_lists_response
        | get_preferences_response
        | get_report_applications_response
        | get_report_configs_response
        | get_report_errors_response
        | get_report_formats_response
        | get_report_hosts_response
        | get_report_operating_systems_response
        | get_report_ports_response
        | get_report_tls_certificates_response
        | get_reports_response
        | get_resource_names_response
        | get_results_response
        | get_roles_response
        | get_scanners_response
        | get_schedules_response
        | get_settings_response
        | get_system_reports_response
        | get_tags_response
        | get_targets_response
        | get_tasks_response
        | get_tickets_response
        | get_timezones_response
        | get_tls_certificates_response
        | get_users_response
        | get_version_response
        | get_vulns_response
        | help_response
        | modify_alert_response
        | modify_asset_response
        | modify_auth_response
        | modify_config_response
        | modify_credential_response
        | modify_filter_response
        | modify_group_response
        | modify_integration_config_response
        | modify_license_response
        | modify_note_response
        | modify_override_response
        | modify_permission_response
        | modify_port_list_response
        | modify_report_config_response
        | modify_report_format_response
        | modify_role_response
        | modify_scanner_response
        | modify_schedule_response
        | modify_setting_response
        | modify_tag_response
        | modify_target_response
        | modify_task_response
        | modify_ticket_response
        | modify_tls_certificate_response
        | modify_user_response
        | move_task_response
        | restore_response
        | resume_task_response
        | run_wizard_response
        | start_task_response
        | stop_task_response
        | sync_config_response
        | test_alert_response
        | verify_report_format_response
        | verify_scanner_response

## 5 Data Type Details

### 5.1 Data Type `alive_test`

In short: An alive test.

#### 5.1.1 RNC

    alive_test = xsd:token { pattern = "ICMP Ping|TCP-ACK Service Ping|TCP-SYN Service Ping|A↵
    RP Ping|Consider Alive|Scan Config Default" }

### 5.2 Data Type `base64`

In short: Base64 encoded data.

#### 5.2.1 RNC

    base64 = xsd:base64Binary

### 5.3 Data Type `boolean`

In short: A true or false value.

Zero is false, anything else is true. As a result, the empty string is considered true.

#### 5.3.1 RNC

    boolean = text

### 5.4 Data Type `boolean_atoi`

In short: A true or false value, after conversion to an integer.

Zero is false, anything else is true. The value is first converted to an integer, as by the C `atoi' routine. This means that an empty string is considered false.

#### 5.4.1 RNC

    boolean_atoi = text

### 5.5 Data Type `compliance_levels`

In short: A string selecting compliance levels that may include the characters y, n, i and u.

The meanings of the letters for each level are: "y" for "yes" (compliant), "n" for "no" (not compliant), "i" for "incomplete" and "u" for "undefined" (without compliance information).

#### 5.5.1 RNC

    compliance_levels = xsd:token { pattern = "y?n?i?u?" }

### 5.6 Data Type `compliance_status`

In short: A compliance status.

#### 5.6.1 RNC

    compliance_status = xsd:token { pattern = "yes|no|incomplete|undefined" }

### 5.7 Data Type `ctime`

In short: A date and time, in the C `ctime' format.

An example string in this format is "Wed Jun 30 21:49:08 1993\n".

#### 5.7.1 RNC

    ctime = text

### 5.8 Data Type `delta_states`

In short: A string selecting delta states that may include the characters c, g, n and s.

The meanings of the letters for each state are: "c" for "changed", "g" for "gone", "n" for "new", and "s" for "same".

#### 5.8.1 RNC

    delta_states = xsd:token { pattern = "c?g?n?s?" }

### 5.9 Data Type `decimal`

In short: A decimal number that can have a fractional part.

#### 5.9.1 RNC

    decimal = xsd:decimal

### 5.10 Data Type `type_name`

In short: A name of a data type.

#### 5.10.1 RNC

    type_name = xsd:Name

### 5.11 Data Type `integer`

In short: An integer.

#### 5.11.1 RNC

    integer = xsd:integer

### 5.12 Data Type `iso_time`

In short: A date and time, in ISO 8601 format.

An example string in this format is "2011-11-08T19:57:06+02:00".

#### 5.12.1 RNC

    iso_time = text

### 5.13 Data Type `levels`

In short: A string selecting severity levels that may include the characters c, h, m, l, g and f.

The meanings of the letters for each level are: "c" for "critical", "h" for "high", "m" for "medium", "l" for "low", "g" for "log" and "f" for "false positive".

#### 5.13.1 RNC

    levels = xsd:token { pattern = "c?h?m?l?g?f?" }

### 5.14 Data Type `name`

In short: A name.

Typically this is the name of one of the manager resources, like a task or target.

#### 5.14.1 RNC

    name = xsd:string

### 5.15 Data Type `port`

In short: A port.

#### 5.15.1 RNC

    port = xsd:token { pattern = "[0-9]{1,5}" }

### 5.16 Data Type `port_range`

In short: A comma separated list of port ranges, prefixed with "T:" for TCP and "U:" for UDP, allowing whitespace.

#### 5.16.1 RNC

    port_range = xsd:token { pattern = "[TU]:[0-9]{1,5}(-[0-9]{1,5})?(,\s*[TU]:[0-9]{1,5}(-[0↵
    -9]{1,5})?)*" }

### 5.17 Data Type `user_list`

In short: A space separated list of users.

#### 5.17.1 RNC

    user_list = text

### 5.18 Data Type `oid`

In short: An Object Identifier (OID).

#### 5.18.1 RNC

    oid = xsd:token { pattern = "[0-9\.]{1,80}" }

### 5.19 Data Type `scanner_type`

In short: A number specifying the type of a scanner.

The mapping of the numbers is as follows: '2' for OpenVAS (classic), '3' for CVE, '5' for OSP Sensor, '6' for OpenVASD, '7' for Agent Controller, '8' for OpenVASD Sensor, '9' for Agent Controller Sensor.

#### 5.19.1 RNC

    scanner_type = xsd:token { pattern = "2|3|5|6|7|8|9" }

### 5.20 Data Type `severity`

In short: A severity score.

A severity score is a decimal number between 0.0 and 10.0 (inclusive) with one digit after the decimal point or a special negative value (-1.0, -2.0 or -3.0). If a single severity score defines a constraint, e.g. on whether an override applies, for values 0.0 and lower the severity must be equal to match while for > 0.0 the compared value must be greater or equal.

#### 5.20.1 RNC

    severity = xsd:token { pattern = "-[1-3](\.0)?|[0-9](\.[0-9])?|10(\.0)?" }

### 5.21 Data Type `sort_order`

In short: A string describing an order for sorting.

The string "descending" denotes descending order, anything else means ascending.

#### 5.21.1 RNC

    sort_order = text

### 5.22 Data Type `status`

In short: The success or failure status of a command.

#### 5.22.1 RNC

    status = xsd:token { pattern = "200|201|202|400|401|403|404|409|500|503" }

### 5.23 Data Type `task_status`

In short: A task run status.

#### 5.23.1 RNC

    task_status = xsd:token { pattern = "Delete Requested|Done|New|Processing|Requested|Runnin↵
    g|Stop Requested|Stopped|Interrupted" }

### 5.24 Data Type `task_trend`

In short: The trend of results for a task.

#### 5.24.1 RNC

    task_trend = xsd:token { pattern = "up|down|more|less|same" }

### 5.25 Data Type `ticket_status`

In short: A ticket status.

#### 5.25.1 RNC

    ticket_status = xsd:token { pattern = "Open|Fixed|Fix Verified|Closed" }

### 5.26 Data Type `threat`

In short: A threat level.

Threat levels are a classification of severity scores only supported for importing reports from OpenVAS-6 and older. The use of these elements is deprecated as they are otherwise replaced by severity elements, which should be used instead.

#### 5.26.1 RNC

    threat = xsd:token { pattern = "High|Medium|Low|Alarm|Log" }

### 5.27 Data Type `time_unit`

In short: A unit of time.

#### 5.27.1 RNC

    time_unit = xsd:token { pattern = "second|minute|hour|day|week|month|year|decade" }

### 5.28 Data Type `timezone`

In short: A timezone.

The format of a timezone is the same as that of the TZ environment variable on GNU/Linux systems. That is, the same value accepted by the tzset C function. There are three versions of the format. Note the lack of spaces in the examples.

"std offset" defines a simple timezone. For example, "FOO+2" defines a timezone FOO which is 2 hours behind UTC.

"std offset dst [offset],start[/time],end[/time]" defines a timezone, including daylight savings time. For example, "NZST-12.00:00NZDT-13:00:00,M10.1.0,M3.3.0".

":[filespec]" refers to a predefined timezone. For example, ":Africa/Johannesburg". Note that the colon is optional. Certain acronyms are predefined, such as GB, NZ and CET.

#### 5.28.1 RNC

    timezone = text

### 5.29 Data Type `uuid`

In short: A Universally Unique Identifier (UUID).

#### 5.29.1 RNC

    uuid = xsd:token { pattern = "[0-9abcdefABCDEF\-]{1,40}" }

### 5.30 Data Type `uuid_or_empty`

In short: A Universally Unique Identifier (UUID), or the empty string.

#### 5.30.1 RNC

    uuid_or_empty = xsd:token { pattern = "[0-9abcdefABCDEF\-]{0,40}" }

## 6 Element Details

### 6.1 Element `c`

In short: A reference to a command.

#### 6.1.1 Structure

- text

#### 6.1.2 RNC

    c
     = element c
         {
           text
         }

### 6.2 Element `e`

In short: A reference to an element.

#### 6.2.1 Structure

- text

#### 6.2.2 RNC

    e
     = element e
         {
           text
         }

### 6.3 Element `r`

In short: A reference to a response.

#### 6.3.1 Structure

- text

#### 6.3.2 RNC

    r
     = element r
         {
           text
         }

### 6.4 Element `o`

In short: An optional pattern item.

#### 6.4.1 Structure

- - One of
    - <c>
      A reference to a command.
    - <e>
      A reference to an element.
    - <r>
      A reference to a response.
    - <g>
      A group of pattern items.

#### 6.4.2 RNC

    o
     = element o
         {
           ( c
               | e
               | r
               | g )
         }

### 6.5 Element `g`

In short: A group of pattern items.

#### 6.5.1 Structure

- - <c> *
    A reference to a command.
  - <e> *
    A reference to an element.
  - <r> *
    A reference to a response.
  - <o> *
    An optional pattern item.
  - <any> *
    Pattern item indicating "any number of".

#### 6.5.2 RNC

    g
     = element g
         {
           c*
           & e*
           & r*
           & o*
           & any*
         }

### 6.6 Element `any`

In short: Pattern item indicating "any number of".

#### 6.6.1 Structure

- - One of
    - <c>
      A reference to a command.
    - <e>
      A reference to an element.
    - <r>
      A reference to a response.
    - <g>
      A group of pattern items.

#### 6.6.2 RNC

    any
     = element any
         {
           ( c
               | e
               | r
               | g )
         }

### 6.7 Element `pattern`

In short: The pattern element of a command or command descendant.

It's actually either a 't' element, or the word "text", or "".

#### 6.7.1 Structure

- - <attrib> *
    An attribute.
    - <name>
    - <type>
    - <required>
    - <filter_keywords> *
      Optional description of filter keywords usable in the attribute.
  - <c> *
    A reference to a command.
  - <e> *
    A reference to an element.
  - <r> *
    A reference to a response.
  - <o> *
    An optional pattern item.
  - <g> *
    A group of pattern items.
  - <any> *
    Pattern item indicating "any number of".
  - <t> ?
    The type of the text of the element.

#### 6.7.2 RNC

    pattern
     = element pattern
         {
           text
           & pattern_attrib*
           & c*
           & e*
           & r*
           & o*
           & g*
           & any*
           & pattern_t?
         }

    pattern_attrib
     = element attrib
         {
           pattern_attrib_name
           & pattern_attrib_type
           & pattern_attrib_required
           & pattern_attrib_filter_keywords*
         }

    pattern_attrib_name
     = element name
         {
           type_name
         }

    pattern_attrib_type
     = element type
         {
           type_name
         }

    pattern_attrib_required
     = element required
         {
           boolean
         }

    pattern_attrib_filter_keywords
     = element filter_keywords
         {
           filter_keywords
         }

    pattern_t
     = element t
         {
           type_name
         }

### 6.8 Element `command_definition`

In short: Definition of a command in GMP describing HELP command.

#### 6.8.1 Structure

- - <name>
    The name of the command.
    More Details
    The name must be unique
  - <summary> ?
    A summary of the command.
  - <description> ?
    A description of the command.
    - <p> *
      A paragraph.
  - One of
    - The group
      - <pattern>
        (pattern)
      - <response>
        (pattern)
    - The group
      - <type>
        The type of the element.
      - <ele> *
        (command_definition)
        An element.
        More Details
        This is a recursive definition.
        command_definition actually includes an extra response element, but it's convenient to use it for the elements.
  - <example> *
    - <summary> ?
    - <description> ?
    - <request>
      Example request.
      More Details
      This can actually contain any XML
    - <response>
      Response to example request.
      More Details
      This can actually contain any XML

#### 6.8.2 RNC

    command_definition
     = element command_definition
         {
           command_definition_name
           & command_definition_summary?
           & command_definition_description?
           & ( ( command_definition_pattern
               & command_definition_response )
               | ( command_definition_type
               & command_definition_ele* ) )
           & command_definition_example*
         }

    command_definition_name
     = element name
         {
           type_name
         }

    command_definition_summary
     = element summary
         {
           text
         }

    command_definition_description
     = element description
         {
           text
           & command_definition_description_p*
         }

    command_definition_description_p
     = element p
         {
           text
         }

    command_definition_pattern
     = element pattern    # type pattern
         {
           text
           & pattern_attrib*
           & c*
           & e*
           & r*
           & o*
           & g*
           & any*
           & pattern_t?
         }

    command_definition_response
     = element response    # type pattern
         {
           text
           & pattern_attrib*
           & c*
           & e*
           & r*
           & o*
           & g*
           & any*
           & pattern_t?
         }

    command_definition_example
     = element example
         {
           command_definition_example_summary?
           & command_definition_example_description?
           & command_definition_example_request
           & command_definition_example_response
         }

    command_definition_example_summary
     = element summary
         {
           text
         }

    command_definition_example_description
     = element description
         {
           text
         }

    command_definition_example_request
     = element request
         {
           text
         }

    command_definition_example_response
     = element response
         {
           text
         }

    command_definition_type
     = element type
         {
           text
         }

    command_definition_ele
     = element ele    # type command_definition
         {
           command_definition_name
           & command_definition_summary?
           & command_definition_description?
           & ( ( command_definition_pattern
               & command_definition_response )
               | ( command_definition_type
               & command_definition_ele* ) )
           & command_definition_example*
         }

### 6.9 Element `filter_keywords`

In short: A group of filter keywords usable in an attribute or element text.

#### 6.9.1 Structure

- - <condition> ?
    Description of the condition under which the group of keywords applies.
  - <column> *
    A column that can be used multiple times with operators and in sorting.
    - <name>
      Name of the keyword as used in the filter.
    - <type>
      Type of the values the keyword can use.
    - <summary>
      Short description of the keyword.
  - <option> *
    An option only applied once which cannot be used with operators or in sorting.
    - <name>
      Name of the keyword as used in the filter.
    - <type>
      Type of the values the keyword can use.
    - <summary>
      Short description of the keyword.

#### 6.9.2 RNC

    filter_keywords
     = element filter_keywords
         {
           filter_keywords_condition?
           & filter_keywords_column*
           & filter_keywords_option*
         }

    filter_keywords_condition
     = element condition
         {
           text
         }

    filter_keywords_column
     = element column
         {
           filter_keywords_column_name
           & filter_keywords_column_type
           & filter_keywords_column_summary
         }

    filter_keywords_column_name
     = element name
         {
           name
         }

    filter_keywords_column_type
     = element type
         {
           type_name
         }

    filter_keywords_column_summary
     = element summary
         {
           text
         }

    filter_keywords_option
     = element option
         {
           filter_keywords_option_name
           & filter_keywords_option_type
           & filter_keywords_option_summary
         }

    filter_keywords_option_name
     = element name
         {
           name
         }

    filter_keywords_option_type
     = element type
         {
           type_name
         }

    filter_keywords_option_summary
     = element summary
         {
           text
         }

### 6.10 Element `certificate_info`

In short: Info about a certificate.

#### 6.10.1 Structure

- - <time_status>
    Whether the certificate is valid, expired or not active yet.
    One of:
    expired
    inactive
    unknown
    valid
  - <activation_time>
    Time before which the certificate is not valid.
  - <expiration_time>
    Time after which the certificate is no longer valid.
  - <issuer>
    DN of the issuer of the certificate.
  - <md5_fingerprint>
    MD5 fingerprint of the certificate.
  - <sha256_fingerprint> ?
    SHA-256 fingerprint of the certificate.
  - <subject> ?
    Name of the certificate.
  - <serial> ?
    Serial number of certificate.

#### 6.10.2 RNC

    certificate_info
     = element certificate_info
         {
           certificate_info_time_status
           & certificate_info_activation_time
           & certificate_info_expiration_time
           & certificate_info_issuer
           & certificate_info_md5_fingerprint
           & certificate_info_sha256_fingerprint?
           & certificate_info_subject?
           & certificate_info_serial?
         }

    certificate_info_time_status
     = element time_status
         {
           xsd:token { pattern = "expired|inactive|unknown|valid" }
         }

    certificate_info_activation_time
     = element activation_time
         {
           text
         }

    certificate_info_expiration_time
     = element expiration_time
         {
           text
         }

    certificate_info_issuer
     = element issuer
         {
           text
         }

    certificate_info_md5_fingerprint
     = element md5_fingerprint
         {
           text
         }

    certificate_info_sha256_fingerprint
     = element sha256_fingerprint
         {
           text
         }

    certificate_info_subject
     = element subject
         {
           text
         }

    certificate_info_serial
     = element serial
         {
           text
         }

### 6.11 Element `nvt`

In short: Meta information of a network vulnerability test.

#### 6.11.1 Structure

- - @id (oid)
  - <name>
    Name of the vulnerability test.
  - <creation_time>
    Date and time the vulnerability test was created.
  - <modification_time>
    Date and time the vulnerability test was last modified.
  - <category>
    Category of the vulnerability test.
  - <family>
    Family of the vulnerability test.
  - <cvss_base>
    CVSS base score of the vulnerability test.
  - <severities>
    (severities)
    Severity information of the NVT.
  - <qod>
    Quality of Detection.
    - <value>
      The value of the QoD.
    - <type>
      The type of the QoD.
  - <refs>
    List of references of the vulnerability test.
    - <ref> *
      .
  - <tags>
    Additional information about vulnerability test in pipe-separated syntax.
  - <preference_count>
    The number of preferences.
  - <timeout>
    The timeout of the vulnerability test.
  - <default_timeout>
    The default timeout of the vulnerability test.
  - <solution>
    The solution information for the vulnerability test.
    - @type (name) The solution type, for example "VendorFix".
    - @method (name) The solution method, for example "DebianAPTUpgrade".
  - <epss> ?
    Exploit Prediction Scoring System (EPSS) info if available.
    - <max_severity>
      EPSS info of the referenced CVE with the highest severity.
      - <score>
        EPSS score of the CVE.
      - <percentile>
        EPSS percentile of the CVE.
      - <cve>
        The representative CVE chosen.
        - @id (text) CVE-ID of the CVE.
        - <severity> ?
          Severity (CVSS) score of the CVE if available.
      More Details
      In case there are multiple CVEs referenced by the NVT tied for the highest severity, they are also sorted by EPSS score and modification time and the first one is chosen.
    - <max_epss>
      EPSS info of the referenced CVE with the highest EPSS score.
      - <score>
        EPSS score of the CVE.
      - <percentile>
        EPSS percentile of the CVE.
      - <cve>
        The representative CVE chosen.
        - @id (text) CVE-ID of the CVE.
        - <severity> ?
          Severity (CVSS) score of the CVE if available.
      More Details
      In case there are multiple CVEs referenced by the NVT tied for the highest EPSS score, they are also sorted by severity and modification time and the first one is chosen.
  - <preferences>
    The list of preferences.

#### 6.11.2 RNC

    nvt
     = element nvt
         {
           attribute id { oid }
           & nvt_name
           & nvt_creation_time
           & nvt_modification_time
           & nvt_category
           & nvt_family
           & nvt_cvss_base
           & nvt_severities
           & nvt_qod
           & nvt_refs
           & nvt_tags
           & nvt_preference_count
           & nvt_timeout
           & nvt_default_timeout
           & nvt_solution
           & nvt_epss?
           & nvt_preferences
         }

    nvt_name
     = element name
         {
           text
         }

    nvt_creation_time
     = element creation_time
         {
           iso_time
         }

    nvt_modification_time
     = element modification_time
         {
           iso_time
         }

    nvt_category
     = element category
         {
           integer
         }

    nvt_family
     = element family
         {
           text
         }

    nvt_cvss_base
     = element cvss_base
         {
           text
         }

    nvt_severities
     = element severities    # type severities
         {
           attribute score { severity }
           & severities_severity*
         }

    nvt_qod
     = element qod
         {
           nvt_qod_value
           & nvt_qod_type
         }

    nvt_qod_value
     = element value
         {
           integer
         }

    nvt_qod_type
     = element type
         {
           name
         }

    nvt_refs
     = element refs
         {
           ref*
         }

    nvt_tags
     = element tags
         {
           text
         }

    nvt_preference_count
     = element preference_count
         {
           integer
         }

    nvt_timeout
     = element timeout
         {
           integer
         }

    nvt_default_timeout
     = element default_timeout
         {
           integer
         }

    nvt_solution
     = element solution
         {
           attribute type { name }?
           & attribute method { name }?
         }

    nvt_epss
     = element epss
         {
           nvt_epss_max_severity
           & nvt_epss_max_epss
         }

    nvt_epss_max_severity
     = element max_severity
         {
           nvt_epss_max_severity_score
           & nvt_epss_max_severity_percentile
           & nvt_epss_max_severity_cve
         }

    nvt_epss_max_severity_score
     = element score
         {
           decimal
         }

    nvt_epss_max_severity_percentile
     = element percentile
         {
           decimal
         }

    nvt_epss_max_severity_cve
     = element cve
         {
           attribute id { text }?
           & nvt_epss_max_severity_cve_severity?
         }

    nvt_epss_max_severity_cve_severity
     = element severity
         {
           severity
         }

    nvt_epss_max_epss
     = element max_epss
         {
           nvt_epss_max_epss_score
           & nvt_epss_max_epss_percentile
           & nvt_epss_max_epss_cve
         }

    nvt_epss_max_epss_score
     = element score
         {
           decimal
         }

    nvt_epss_max_epss_percentile
     = element percentile
         {
           decimal
         }

    nvt_epss_max_epss_cve
     = element cve
         {
           attribute id { text }?
           & nvt_epss_max_epss_cve_severity?
         }

    nvt_epss_max_epss_cve_severity
     = element severity
         {
           severity
         }

    nvt_preferences
     = element preferences
         {
           text
         }

### 6.12 Element `note`

In short: A note.

#### 6.12.1 Structure

- - @id (uuid)
  - <permissions>
    Permissions that the current user has on the note.
    - <permission> *
      - <name>
        The name of the permission.
  - <owner>
    Owner of the note.
    - <name>
      The name of the owner.
  - <nvt>
    - @oid (oid)
    - <name>
    - <type>
      The type of the NVT: nvt, cve, ....
  - <text>
    The text of the note.
    - @excerpt (boolean) Whether the content is an excerpt of the full text.
  - <creation_time>
    Date and time the note was created.
  - <modification_time>
    Date and time the note was last modified.
  - <writable>
  - <in_use>
  - <active>
    Whether the note is active.
  - <orphan>
    Whether the note is an orphan.
  - <user_tags> ?
    Info on tags attached to the note.
    - <count>
      Number of attached tags.
    - <tag> *
      Short info on an individual tag (only if details were requested).
      - @id (uuid) UUID of the tag.
      - <name>
        Name of the tag (usually namespace:predicate).
      - <value>
        Value of the tag.
      - <comment>
        Comment for the tag.
  - The group?
    - <hosts>
      A comma-separated list of hosts.
    - <port>
      Port (location) to which note applies.
    - <severity>
      Severity to which note applies.
    - <task>
      Task to which note applies.
      - @id (uuid)
      - <name>
        Task name.
      - <trash>
        (boolean)
        Whether the task is in the trashcan.
    - <end_time>
      End time of the note in case of limit, else empty.
    - <result> ?
      (result)
      Result to which note applies.

#### 6.12.2 RNC

    note
     = element note
         {
           attribute id { uuid }
           & note_permissions
           & note_owner
           & note_nvt
           & note_text
           & note_creation_time
           & note_modification_time
           & note_writable
           & note_in_use
           & note_active
           & note_orphan
           & note_user_tags?
           & ( note_hosts
               & note_port
               & note_severity
               & note_task
               & note_end_time
               & note_result? )?
         }

    note_permissions
     = element permissions
         {
           note_permissions_permission*
         }

    note_permissions_permission
     = element permission
         {
           note_permissions_permission_name
         }

    note_permissions_permission_name
     = element name
         {
           name
         }

    note_owner
     = element owner
         {
           note_owner_name
         }

    note_owner_name
     = element name
         {
           name
         }

    note_nvt
     = element nvt
         {
           attribute oid { oid }
           & note_nvt_name
           & note_nvt_type
         }

    note_nvt_name
     = element name
         {
           name
         }

    note_nvt_type
     = element type
         {
           text
         }

    note_creation_time
     = element creation_time
         {
           iso_time
         }

    note_modification_time
     = element modification_time
         {
           iso_time
         }

    note_writable
     = element writable
         {
           boolean
         }

    note_in_use
     = element in_use
         {
           boolean
         }

    note_active
     = element active
         {
           boolean
         }

    note_text
     = element text
         {
           text
           & attribute excerpt { boolean }
         }

    note_orphan
     = element orphan
         {
           boolean
         }

    note_user_tags
     = element user_tags
         {
           note_user_tags_count
           & note_user_tags_tag*
         }

    note_user_tags_count
     = element count
         {
           integer
         }

    note_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & note_user_tags_tag_name
           & note_user_tags_tag_value
           & note_user_tags_tag_comment
         }

    note_user_tags_tag_name
     = element name
         {
           text
         }

    note_user_tags_tag_value
     = element value
         {
           text
         }

    note_user_tags_tag_comment
     = element comment
         {
           text
         }

    note_hosts
     = element hosts
         {
           text
         }

    note_port
     = element port
         {
           text
         }

    note_severity
     = element severity
         {
           severity
         }

    note_task
     = element task
         {
           attribute id { uuid }
           & note_task_name
           & note_task_trash
         }

    note_task_name
     = element name
         {
           text
         }

    note_task_trash
     = element trash    # type boolean
         {
         }

    note_active
     = element active
         {
           integer
         }

    note_end_time
     = element end_time
         {
           text
         }

    note_result
     = element result    # type result
         {
           attribute id { uuid }
           & result_name
           & result_owner
           & result_comment
           & result_creation_time
           & result_modification_time
           & result_user_tags?
           & result_report?
           & result_task?
           & result_host
           & result_port
           & result_path?
           & result_oci_image?
           & result_nvt
           & result_scan_nvt_version
           & result_threat
           & result_severity
           & result_qod
           & result_original_threat?
           & result_original_severity?
           & result_compliance
           & result_description
           & result_delta?
           & result_detection?
           & result_notes?
           & result_overrides?
           & result_tickets?
         }

### 6.13 Element `override`

In short: An override.

#### 6.13.1 Structure

- - @id (uuid)
  - <permissions>
    Permissions that the current user has on the override.
    - <permission> *
      - <name>
        The name of the permission.
  - <owner>
    Owner of the override.
    - <name>
  - <nvt>
    - @oid (oid)
    - <name>
    - <type>
      The type of the NVT: nvt, cve, ....
  - <creation_time>
    Date and time the override was created.
  - <modification_time>
    Date and time the override was last modified.
  - <writable>
  - <in_use>
  - <active>
    Whether the override is currently active.
  - <text>
    The text of the override.
    - @excerpt (boolean) Whether the contents is an excerpt of the full text.
  - <threat>
    Threat level to which override applies, derived from severity.
  - <severity>
    Severity score to which override applies.
  - <new_threat>
    New threat for result.
  - <new_severity>
    New severity score for result.
  - <orphan>
    Whether the override is an orphan.
  - <user_tags> ?
    Info on tags attached to the override.
    - <count>
      Number of attached tags.
    - <tag> *
      Short info on an individual tag (only if details were requested).
      - @id (uuid) UUID of the tag.
      - <name>
        Name of the tag (usually namespace:predicate).
      - <value>
        Value of the tag.
      - <comment>
        Comment for the tag.
  - The group?
    - <hosts>
      A comma-separated list of hosts.
    - <port>
      Port (location) to which override applies.
    - <task>
      Task to which override applies.
      - @id (uuid)
      - <name>
        Task name.
      - <trash>
        (boolean)
        Whether the task is in the trashcan.
    - <end_time>
      Override end time in case of limit, else empty.
    - <result> ?
      (result)
      Result to which override applies.

#### 6.13.2 RNC

    override
     = element override
         {
           attribute id { uuid }
           & override_permissions
           & override_owner
           & override_nvt
           & override_creation_time
           & override_modification_time
           & override_writable
           & override_in_use
           & override_active
           & override_text
           & override_threat
           & override_severity
           & override_new_threat
           & override_new_severity
           & override_orphan
           & override_user_tags?
           & ( override_hosts
               & override_port
               & override_task
               & override_end_time
               & override_result? )?
         }

    override_permissions
     = element permissions
         {
           override_permissions_permission*
         }

    override_permissions_permission
     = element permission
         {
           override_permissions_permission_name
         }

    override_permissions_permission_name
     = element name
         {
           name
         }

    override_owner
     = element owner
         {
           override_owner_name
         }

    override_owner_name
     = element name
         {
           name
         }

    override_nvt
     = element nvt
         {
           attribute oid { oid }
           & override_nvt_name
           & override_nvt_type
         }

    override_nvt_name
     = element name
         {
           name
         }

    override_nvt_type
     = element type
         {
           text
         }

    override_creation_time
     = element creation_time
         {
           iso_time
         }

    override_modification_time
     = element modification_time
         {
           iso_time
         }

    override_writable
     = element writable
         {
           boolean
         }

    override_in_use
     = element in_use
         {
           boolean
         }

    override_active
     = element active
         {
           boolean
         }

    override_text
     = element text
         {
           text
           & attribute excerpt { boolean }
         }

    override_threat
     = element threat
         {
           threat
         }

    override_severity
     = element severity
         {
           severity
         }

    override_new_threat
     = element new_threat
         {
           threat
         }

    override_new_severity
     = element new_severity
         {
           severity
         }

    override_orphan
     = element orphan
         {
           boolean
         }

    override_user_tags
     = element user_tags
         {
           override_user_tags_count
           & override_user_tags_tag*
         }

    override_user_tags_count
     = element count
         {
           integer
         }

    override_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & override_user_tags_tag_name
           & override_user_tags_tag_value
           & override_user_tags_tag_comment
         }

    override_user_tags_tag_name
     = element name
         {
           text
         }

    override_user_tags_tag_value
     = element value
         {
           text
         }

    override_user_tags_tag_comment
     = element comment
         {
           text
         }

    override_hosts
     = element hosts
         {
           text
         }

    override_port
     = element port
         {
           text
         }

    override_task
     = element task
         {
           attribute id { uuid }
           & override_task_name
           & override_task_trash
         }

    override_task_name
     = element name
         {
           text
         }

    override_task_trash
     = element trash    # type boolean
         {
         }

    override_active
     = element active
         {
           integer
         }

    override_end_time
     = element end_time
         {
           text
         }

    override_result
     = element result    # type result
         {
           attribute id { uuid }
           & result_name
           & result_owner
           & result_comment
           & result_creation_time
           & result_modification_time
           & result_user_tags?
           & result_report?
           & result_task?
           & result_host
           & result_port
           & result_path?
           & result_oci_image?
           & result_nvt
           & result_scan_nvt_version
           & result_threat
           & result_severity
           & result_qod
           & result_original_threat?
           & result_original_severity?
           & result_compliance
           & result_description
           & result_delta?
           & result_detection?
           & result_notes?
           & result_overrides?
           & result_tickets?
         }

### 6.14 Element `result`

In short: A result.

#### 6.14.1 Structure

- - @id (uuid)
  - <name>
    The name of the result.
  - <owner>
    Owner of the result.
    - <name>
      The name of the owner.
  - <comment>
    The comment on the result.
  - <creation_time>
    Date and time the result was created.
  - <modification_time>
    Date and time the result was last modified.
  - <user_tags> ?
    Info on tags attached to the result (not in delta results).
    - <count>
      Number of attached tags.
    - <tag> *
      Short info on an individual tag (only if details were requested).
      - @id (uuid) UUID of the tag.
      - <name>
        Name of the tag (usually namespace:predicate).
      - <value>
        Value of the tag.
      - <comment>
        Comment for the tag.
  - <report> ?
    Report the result belongs to (only when details were requested).
    - @id (uuid) UUID of the report the result belongs to.
  - <task> ?
    Task the result applies to (only when details were requested).
    - @id (uuid) UUID of the task the result applies to.
    - <name>
      Name of the task the result applies to.
  - <host>
    The host the result applies to.
    - <asset>
      Asset linked to host.
      - @asset_id (uuid)
    - <hostname>
      If available, the hostname the result was created for, else the one from host details.
  - <port>
    The port (location) on the host.
  - <path> ?
    The local path on the host, e.g. a file location.
  - <oci_image> ?
    OCI image information if available.
    - <name>
      The full name / URL of the image.
    - <digest>
      The digest of the image.
    - <registry>
      The registry hostname / address of the image.
    - <path>
      The path before the short name of the image.
    - <short_name>
      The last part including the tag of the image.
  - <nvt>
    NVT to which result applies.
    - @oid (oid)
    - <name>
      The name of the NVT.
    - <type>
      The type of the NVT: nvt, cve, ....
    - <family>
      The family the NVT is in.
    - <cvss_base>
      CVSS base value associated with the NVT.
    - <severities>
      (severities)
      Severity score information of the NVT.
    - <cpe>
      The CPE which produced the CVE (for "cve" results).
    - <tags>
      Tags associated with the NVT.
    - <epss> ?
      Exploit Prediction Scoring System (EPSS) info if available.
      - <max_severity>
        EPSS info of the referenced CVE with the highest severity.
        - <score>
          EPSS score of the CVE.
        - <percentile>
          EPSS percentile of the CVE.
        - <cve>
          The representative CVE chosen.
          - @id (text) CVE-ID of the CVE.
          - <severity> ?
            Severity (CVSS) score of the CVE if available.
        More Details
        In case there are multiple CVEs referenced by the NVT tied for the highest severity, they are also sorted by EPSS score and modification time and the first one is chosen.
      - <max_epss>
        EPSS info of the referenced CVE with the highest EPSS score.
        - <score>
          EPSS score of the CVE.
        - <percentile>
          EPSS percentile of the CVE.
        - <cve>
          The representative CVE chosen.
          - @id (text) CVE-ID of the CVE.
          - <severity> ?
            Severity (CVSS) score of the CVE if available.
        More Details
        In case there are multiple CVEs referenced by the NVT tied for the highest EPSS score, they are also sorted by severity and modification time and the first one is chosen.
    - <refs>
      List of references of various types for this vulnerability test.
      - <ref> *
        A reference.
        - @id (text) ID of the reference.
        - @type (text) Type of the reference, for example "cve", "dfn-cert", "cert-bund".
  - <scan_nvt_version>
    Version of the NVT used in the scan.
  - <threat>
  - <severity>
  - <qod>
    The quality of detection (QoD) of the result.
    - <value>
      The numeric QoD value.
    - <type>
      The QoD type.
  - <original_threat> ?
    Original threat when overridden.
  - <original_severity> ?
    Original severity when overridden.
  - <compliance>
    Result compliance ("yes", "no", "incomplete" or "undefined").
  - <description>
    Description of the result.
  - <delta> ?
    Delta state.
    - <result> ?
      (result)
      Delta result.
    - <diff> ?
      (text)
      Comparison between descriptions.
    - <notes> ?
      List of notes on the result.
      - <note> *
        (note)
    - <overrides> ?
      List of overrides on the result.
      - <override> *
        (override)
  - <detection> ?
    Detection details.
    - <result>
      Detection result.
      - @id (uuid) UUID of the detection result.
      - <details>
        - <detail> *
          A detail associated with the detection result.
          - <name>
            The name of the detail.
          - <value>
            The value of the detail.
  - <notes> ?
    List of notes on the result.
    - <note> *
      (note)
  - <overrides> ?
    List of overrides on the result.
    - <override> *
      (override)
  - <tickets> ?
    List of tickets on the result.
    - <ticket> *
      - @id (uuid)

#### 6.14.2 RNC

    result
     = element result
         {
           attribute id { uuid }
           & result_name
           & result_owner
           & result_comment
           & result_creation_time
           & result_modification_time
           & result_user_tags?
           & result_report?
           & result_task?
           & result_host
           & result_port
           & result_path?
           & result_oci_image?
           & result_nvt
           & result_scan_nvt_version
           & result_threat
           & result_severity
           & result_qod
           & result_original_threat?
           & result_original_severity?
           & result_compliance
           & result_description
           & result_delta?
           & result_detection?
           & result_notes?
           & result_overrides?
           & result_tickets?
         }

    result_name
     = element name
         {
           text
         }

    result_owner
     = element owner
         {
           result_owner_name
         }

    result_owner_name
     = element name
         {
           name
         }

    result_comment
     = element comment
         {
           text
         }

    result_creation_time
     = element creation_time
         {
           iso_time
         }

    result_modification_time
     = element modification_time
         {
           iso_time
         }

    result_user_tags
     = element user_tags
         {
           result_user_tags_count
           & result_user_tags_tag*
         }

    result_user_tags_count
     = element count
         {
           integer
         }

    result_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & result_user_tags_tag_name
           & result_user_tags_tag_value
           & result_user_tags_tag_comment
         }

    result_user_tags_tag_name
     = element name
         {
           text
         }

    result_user_tags_tag_value
     = element value
         {
           text
         }

    result_user_tags_tag_comment
     = element comment
         {
           text
         }

    result_report
     = element report
         {
           attribute id { uuid }
         }

    result_task
     = element task
         {
           attribute id { uuid }
           & result_task_name
         }

    result_task_name
     = element name
         {
           text
         }

    result_host
     = element host
         {
           text
           & result_host_asset
           & result_host_hostname
         }

    result_host_asset
     = element asset
         {
           attribute asset_id { uuid }
         }

    result_host_hostname
     = element hostname
         {
           text
         }

    result_port
     = element port
         {
           text
         }

    result_path
     = element path
         {
           text
         }

    result_oci_image
     = element oci_image
         {
           result_oci_image_name
           & result_oci_image_digest
           & result_oci_image_registry
           & result_oci_image_path
           & result_oci_image_short_name
         }

    result_oci_image_name
     = element name
         {
           text
         }

    result_oci_image_digest
     = element digest
         {
           text
         }

    result_oci_image_registry
     = element registry
         {
           text
         }

    result_oci_image_path
     = element path
         {
           text
         }

    result_oci_image_short_name
     = element short_name
         {
           text
         }

    result_nvt
     = element nvt
         {
           attribute oid { oid }
           & result_nvt_name
           & result_nvt_type
           & result_nvt_family
           & result_nvt_cvss_base
           & result_nvt_severities
           & result_nvt_cpe
           & result_nvt_tags
           & result_nvt_epss?
           & result_nvt_refs
         }

    result_nvt_name
     = element name
         {
           name
         }

    result_nvt_type
     = element type
         {
           text
         }

    result_nvt_family
     = element family
         {
           name
         }

    result_nvt_cvss_base
     = element cvss_base
         {
           integer
         }

    result_nvt_severities
     = element severities    # type severities
         {
           attribute score { severity }
           & severities_severity*
         }

    result_nvt_cpe
     = element cpe
         {
           text
         }

    result_nvt_tags
     = element tags
         {
           text
         }

    result_nvt_epss
     = element epss
         {
           result_nvt_epss_max_severity
           & result_nvt_epss_max_epss
         }

    result_nvt_epss_max_severity
     = element max_severity
         {
           result_nvt_epss_max_severity_score
           & result_nvt_epss_max_severity_percentile
           & result_nvt_epss_max_severity_cve
         }

    result_nvt_epss_max_severity_score
     = element score
         {
           decimal
         }

    result_nvt_epss_max_severity_percentile
     = element percentile
         {
           decimal
         }

    result_nvt_epss_max_severity_cve
     = element cve
         {
           attribute id { text }?
           & result_nvt_epss_max_severity_cve_severity?
         }

    result_nvt_epss_max_severity_cve_severity
     = element severity
         {
           severity
         }

    result_nvt_epss_max_epss
     = element max_epss
         {
           result_nvt_epss_max_epss_score
           & result_nvt_epss_max_epss_percentile
           & result_nvt_epss_max_epss_cve
         }

    result_nvt_epss_max_epss_score
     = element score
         {
           decimal
         }

    result_nvt_epss_max_epss_percentile
     = element percentile
         {
           decimal
         }

    result_nvt_epss_max_epss_cve
     = element cve
         {
           attribute id { text }?
           & result_nvt_epss_max_epss_cve_severity?
         }

    result_nvt_epss_max_epss_cve_severity
     = element severity
         {
           severity
         }

    result_nvt_refs
     = element refs
         {
           result_nvt_refs_ref*
         }

    result_nvt_refs_ref
     = element ref
         {
           attribute id { text }?
           & attribute type { text }?
         }

    result_scan_nvt_version
     = element scan_nvt_version
         {
           text
         }

    result_threat
     = element threat
         {
           threat
         }

    result_severity
     = element severity
         {
           severity
         }

    result_qod
     = element qod
         {
           result_qod_value
           & result_qod_type
         }

    result_qod_value
     = element value
         {
           integer
         }

    result_qod_type
     = element type
         {
           text
         }

    result_original_threat
     = element original_threat
         {
           threat
         }

    result_original_severity
     = element original_severity
         {
           severity
         }

    result_compliance
     = element compliance
         {
           compliance_status
         }

    result_description
     = element description
         {
           text
         }

    result_delta
     = element delta
         {
           text
           & result_delta_result?
           & result_delta_diff?
           & result_delta_notes?
           & result_delta_overrides?
         }

    result_delta_result
     = element result    # type result
         {
           attribute id { uuid }
           & result_name
           & result_owner
           & result_comment
           & result_creation_time
           & result_modification_time
           & result_user_tags?
           & result_report?
           & result_task?
           & result_host
           & result_port
           & result_path?
           & result_oci_image?
           & result_nvt
           & result_scan_nvt_version
           & result_threat
           & result_severity
           & result_qod
           & result_original_threat?
           & result_original_severity?
           & result_compliance
           & result_description
           & result_delta?
           & result_detection?
           & result_notes?
           & result_overrides?
           & result_tickets?
         }

    result_delta_diff
     = element diff    # type text
         {
         }

    result_delta_notes
     = element notes
         {
           result_delta_notes_note*
         }

    result_delta_notes_note
     = element note    # type note
         {
           attribute id { uuid }
           & note_permissions
           & note_owner
           & note_nvt
           & note_text
           & note_creation_time
           & note_modification_time
           & note_writable
           & note_in_use
           & note_active
           & note_orphan
           & note_user_tags?
           & ( note_hosts
               & note_port
               & note_severity
               & note_task
               & note_end_time
               & note_result? )?
         }

    result_delta_overrides
     = element overrides
         {
           result_delta_overrides_override*
         }

    result_delta_overrides_override
     = element override    # type override
         {
           attribute id { uuid }
           & override_permissions
           & override_owner
           & override_nvt
           & override_creation_time
           & override_modification_time
           & override_writable
           & override_in_use
           & override_active
           & override_text
           & override_threat
           & override_severity
           & override_new_threat
           & override_new_severity
           & override_orphan
           & override_user_tags?
           & ( override_hosts
               & override_port
               & override_task
               & override_end_time
               & override_result? )?
         }

    result_detection
     = element detection
         {
           result_detection_result
         }

    result_detection_result
     = element result
         {
           attribute id { uuid }
           & result_detection_result_details
         }

    result_detection_result_details
     = element details
         {
           result_detection_result_details_detail*
         }

    result_detection_result_details_detail
     = element detail
         {
           result_detection_result_details_detail_name
           & result_detection_result_details_detail_value
         }

    result_detection_result_details_detail_name
     = element name
         {
           text
         }

    result_detection_result_details_detail_value
     = element value
         {
           text
         }

    result_notes
     = element notes
         {
           result_notes_note*
         }

    result_notes_note
     = element note    # type note
         {
           attribute id { uuid }
           & note_permissions
           & note_owner
           & note_nvt
           & note_text
           & note_creation_time
           & note_modification_time
           & note_writable
           & note_in_use
           & note_active
           & note_orphan
           & note_user_tags?
           & ( note_hosts
               & note_port
               & note_severity
               & note_task
               & note_end_time
               & note_result? )?
         }

    result_overrides
     = element overrides
         {
           result_overrides_override*
         }

    result_overrides_override
     = element override    # type override
         {
           attribute id { uuid }
           & override_permissions
           & override_owner
           & override_nvt
           & override_creation_time
           & override_modification_time
           & override_writable
           & override_in_use
           & override_active
           & override_text
           & override_threat
           & override_severity
           & override_new_threat
           & override_new_severity
           & override_orphan
           & override_user_tags?
           & ( override_hosts
               & override_port
               & override_task
               & override_end_time
               & override_result? )?
         }

    result_tickets
     = element tickets
         {
           result_tickets_ticket*
         }

    result_tickets_ticket
     = element ticket
         {
           attribute id { uuid }
         }

### 6.15 Element `report`

In short: Actually attributes and either base64 or a report.

#### 6.15.1 Structure

- - @id (uuid)
  - @format_id (uuid) UUID of the report format used.
  - @config_id (uuid) UUID of the report config used.
  - @extension (text)
  - @content_type (text)
  - @type ("scan" or "assets")
  - <owner>
    Owner of the report.
    - <name>
      The name of the owner.
  - <name>
    Creation time as compatibility placeholder.
  - <comment>
    The comment on the report.
  - <creation_time>
    Date and time the report was created.
  - <modification_time>
    Date and time the report was last modified.
  - <writable>
    Whether the report is writable.
  - <in_use>
    Whether the report is in use.
  - <task>
    The task the report belongs to.
    - @id (uuid)
    - <name>
      The name of the task.
  - <report_format> ?
    The report format used.
    - @id (uuid)
    - <name>
      The name of the report format.
  - <report_config> ?
    The report config used.
    - @id (uuid)
    - <name>
      The name of the report config.
  - <report>
    - @id (uuid)
    - @type ("scan" or "assets")
    - <gmp>
      Information of the GMP server.
      - <version>
        The GMP version.
    - <report_format>
      - <param>
        Report format parameter.
        - <name>
          Parameter name.
        - <value>
          Parameter value.
    - <sort>
      Result sorting information.
      - <field>
        Sort field.
        - <order>
          Sort order of field.
          One of:
          ascending
          descending
    - <filters>
      Result filtering information.
      - @id (uuid) Filter used if any, else 0.
      - <term>
        Filter term.
      - <phrase>
        Search phrase.
      - <notes>
        Whether notes are included.
        One of:
        0
        1
      - <overrides>
        Whether overrides are included.
        One of:
        0
        1
      - <apply_overrides>
        Whether overrides are applied.
        One of:
        0
        1
      - <result_hosts_only>
        Whether only those hosts that have results are included.
        One of:
        0
        1
      - <min_qod>
        Minimum QoD if in effect, else empty string.
      - <filter> *
        Level filter.
        One of:
        Critical
        High
        Medium
        Low
        Log
      - <delta> ?
        Delta states.
        - <changed>
          Whether changed results are included.
        - <gone>
          Whether results that have vanished are included.
        - <new>
          Whether new results are included.
        - <same>
          Whether results that are equal are included.
    - <delta> ?
      - <report>
        Second report, for delta reports.
        - @id (uuid)
        - <scan_run_status>
          Run status of task scan at time of report.
        - <timestamp>
          The time the scan was requested.
        - <scan_start>
          Start time of scan.
        - <scan_end>
          End time of scan.
    - The group?
      - <timezone>
        Name of timezone used for dates.
      - <timezone_abbrev>
        Abbreviation used for timezone.
      - <permissions>
        Permissions that the current user has on the report.
        - <permission> *
          - <name>
            The name of the permission.
      - <user_tags> ?
        Info on tags attached to the report.
        - <count>
          Number of attached tags.
        - <tag> *
          Short info on an individual tag (only if details were requested).
          - @id (uuid) UUID of the tag.
          - <name>
            Name of the tag (usually namespace:predicate).
          - <value>
            Value of the tag.
          - <comment>
            Comment for the tag.
      - <scan_run_status>
        Run status of task scan at time of report.
      - <result_count> ?
        Counts of results produced by scan.
        - <full>
          Total number of results produced by scan.
        - <filtered>
          Number of results after filtering.
        - <critical>
          Number of "critical" results (threat level critical).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <hole>
          Number of "hole" results (threat level High) ,will be deprecated. Use high instead.
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <high>
          Number of "high" results (threat level High).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <info>
          Number of "info" results (threat level Low) ,will be deprecated. Use low instead.
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <low>
          Number of "low" results (threat level Low).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <log>
          Number of "log" results (threat level Log).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <warning>
          Number of "warning" results (threat level Medium) ,will be deprecated. Use medium instead.
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <medium>
          Number of "medium" results (threat level Medium).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        More Details
        The text contains the full count -- the total number of results produced by scan.
      - <severity> ?
        - <full>
          Maximum severity of the full report.
        - <filtered>
          Maximum severity of the report after filtering.
      - <compliance_count> ?
        Counts of compliance results. Only for reports of an audit task..
        - <full>
          Total number of compliance results.
        - <filtered>
          Number of compliance results after filtering.
        - <yes>
          Number of "yes" results (compliant).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <no>
          Number of "no" results (not compliant).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <incomplete>
          Number of "incomplete" results (incomplete compliance).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        - <undefined>
          Number of "undefined" results (undefined compliance).
          - <full>
            Total number of results.
          - <filtered>
            Number of results after filtering.
        More Details
        The text contains the full count. The total number of compliance results.
      - <compliance> ?
        - <full>
          Compliance of the full report ("yes", "no", "incomplete" or "undefined").
        - <filtered>
          Compliance of the report after filtering ("yes", "no", "incomplete" or "undefined").
      - <task>
        - @id (uuid)
        - <name>
          The name of the task.
        - <comment>
          Comment for the task.
        - <target>
          The target of the task.
          - @id (uuid) The UUID of the target.
          - <trash>
            (boolean)
            Whether the target is in the trashcan.
          - <name>
            The name of the target.
          - <comment>
            Comment for the target.
        - <progress>
          The percentage of the task that is complete.
        - <user_tags> ?
          Info on tags attached to the task.
          - <count>
            Number of attached tags.
          - <tag> *
            Short info on an individual tag.
            - @id (uuid) UUID of the tag.
            - <name>
              Name of the tag (usually namespace:predicate).
            - <value>
              Value of the tag.
            - <comment>
              Comment for the tag.
      - <ports>
        - @start (integer)
        - @max (integer)
        - <port> *
          - <host>
          - <severity>
          - <threat>
      - <results>
        - @start (integer)
        - @max (integer)
        - <result> *
          (result)
          A result.
      - <hosts>
        - One of
          - The group
            - @start (integer)
            - @max (integer)
          - <count>
            Number of hosts.
        More Details
        Analogous to the results element, but for hosts, in the "assets" report. However to keep backward compatibility the host elements are siblings of this element, instead of children.
        Contains only the count outside the "assets" report.
      - <closed_cves>
        .
        - <count>
          The number of closed CVEs.
      - <vulns>
        .
        - <count>
          The number of Vulnerabilities.
      - <os>
        .
        - <count>
          The number of operating systems.
      - <apps>
        .
        - <count>
          The number of Applications.
      - <ssl_certs>
        .
        - <count>
          The number of SSL certificates.
      - <host> *
        - <ip>
          IP of the host.
        - <asset>
          Asset linked to host.
          - @asset_id (uuid)
        - <start>
          Scan start time for this host.
        - <end>
          Scan end time for this host.
        - <port_count>
          .
          - <page>
            Number of ports of current host on current page.
        - <result_count> ?
          .
          - <page>
            Total number of results for current host on current page.
          - <critical>
            Number of "critical" results (level "Critical").
            - <page>
              Number of results on current page.
          - <hole>
            Number of "hole" results (level "High") ,will be deprecated. Use high instead.
            - <page>
              Number of results on current page.
          - <high>
            Number of "high" results (level "High").
            - <page>
              Number of results on current page.
          - <info>
            Number of "info" results (level "Low") ,will be deprecated. Use low instead.
            - <page>
              Number of results on current page.
          - <low>
            Number of "low" results (level "Low").
            - <page>
              Number of results on current page.
          - <log>
            Number of "log" results.
            - <page>
              Number of results on current page.
          - <warning>
            Number of "warning" results (level "Medium") ,will be deprecated. Use medium instead.
            - <page>
              Number of results on current page.
          - <medium>
            Number of "medium" results (level "Medium").
            - <page>
              Number of results on current page.
          - <false_positive>
            Number of "false positive" results.
            - <page>
              Number of results on current page.
        - <compliance_count> ?
          Only for audit reports.
          - <page>
            Total number of results for current host on current page.
          - <yes>
            Number of "yes" results (compliant).
            - <page>
              Number of results on current page.
          - <no>
            Number of "no" results (not compliant).
            - <page>
              Number of results on current page.
          - <incomplete>
            Number of "incomplete" results (incomplete compliance).
            - <page>
              Number of results on current page.
          - <undefined>
            Number of "undefined" results (undefined compliance).
            - <page>
              Number of results on current page.
        - <host_compliance> ?
          Only for audit reports. Host compliance.
        - <detail> *
          A detail associated with the host.
          - <name>
            The name of the detail.
          - <value>
            The value of the detail.
          - <source>
            Where the detail comes from.
            - <type>
              The type of the detail source.
            - <name>
              The name of the detail source.
            - <description>
              A description of the detail source.
          - <extra>
            Extra info (NVT CVSS for closed CVE results).
      - <tls_certificates>
        List of TLS certificates found with the scan.
        - <tls_certificate> *
          TLS certificate found with the scan.
          - <name>
            The name of the TLS certificate.
          - <certificate>
            The Base64 encoded certificate data.
            - @format ("DER", "PEM" or "unknown") The format of the certificate.
          - <sha256_fingerprint>
            The SHA256 fingerprint of the certificate.
          - <md5_fingerprint>
            The MD5 fingerprint of the certificate.
          - <valid>
            Whether the certificate is currently valid.
          - <activation_time>
            Time before which the certificate is not valid.
          - <expiration_time>
            Time after which the certificate is not valid.
          - <subject_dn>
            Distinguished name (DN) of the certificate subject.
          - <issuer_dn>
            Distinguished name (DN) of the certificate issuer.
          - <serial>
            Hexadecimal serial number of the certificate.
          - <host>
            Host where the certificate was found.
            - <ip>
              IP address of the host.
            - <hostname>
              If available, the hostname from host details.
          - <ports>
            List of ports where the certificate was found.
            - <port> *
              Port where the certificate was found.
      - <timestamp>
        The time the scan was requested.
      - <scan_start>
        Start time of scan.
      - <scan_end>
        End time of scan.
      - <errors>
        - <count>
          The number of error messages.
        - <error> *
          An error message.
          - <host>
            The host of the error message.
            - <asset>
              Asset linked to host.
              - @asset_id (uuid)
          - <port>
            The port (location) of the error message.
          - <description>
            The description of the error message.
          - <nvt>
            The NVT that generated the error message.
            - @oid ()
            - <name>
              The name of the NVT.
            - <type>
              The type of the NVT: nvt, cve, ....
            - <cvss_base>
              The base CVSS score of the NVT.
          - <scan_nvt_version>
            The NVT version that generated the error.
          - <severity>
            The severity score of the error message.

#### 6.15.2 RNC

    report
     = element report
         {
           text # RNC limitation: base64
           & attribute id { uuid }
           & attribute format_id { uuid }
           & attribute config_id { uuid }
           & attribute extension { text }
           & attribute content_type { text }
           & attribute type { xsd:token { pattern = "scan|assets" } }?
           & report_owner
           & report_name
           & report_comment
           & report_creation_time
           & report_modification_time
           & report_writable
           & report_in_use
           & report_task
           & report_report_format?
           & report_report_config?
           & report_report
         }

    report_owner
     = element owner
         {
           report_owner_name
         }

    report_owner_name
     = element name
         {
           name
         }

    report_name
     = element name
         {
           ""
         }

    report_comment
     = element comment
         {
           text
         }

    report_creation_time
     = element creation_time
         {
           iso_time
         }

    report_modification_time
     = element modification_time
         {
           iso_time
         }

    report_in_use
     = element in_use
         {
           boolean
         }

    report_writable
     = element writable
         {
           boolean
         }

    report_task
     = element task
         {
           attribute id { uuid }
           & report_task_name
         }

    report_task_name
     = element name
         {
           name
         }

    report_report_format
     = element report_format
         {
           attribute id { uuid }
           & report_report_format_name
         }

    report_report_format_name
     = element name
         {
           name
         }

    report_report_config
     = element report_config
         {
           attribute id { uuid }
           & report_report_config_name
         }

    report_report_config_name
     = element name
         {
           name
         }

    report_report
     = element report
         {
           attribute id { uuid }
           & attribute type { xsd:token { pattern = "scan|assets" } }?
           & report_report_gmp
           & report_report_report_format
           & report_report_sort
           & report_report_filters
           & report_report_delta?
           & ( report_report_timezone
               & report_report_timezone_abbrev
               & report_report_permissions
               & report_report_user_tags?
               & report_report_scan_run_status
               & report_report_result_countreport_report_severity?
               & report_report_compliance_count?
               & report_report_compliance?
               & report_report_task
               & report_report_ports
               & report_report_results
               & report_report_hosts
               & report_report_closed_cves
               & report_report_vulns
               & report_report_os
               & report_report_apps
               & report_report_ssl_certs
               & report_report_host*
               & report_report_tls_certificates
               & report_report_timestamp
               & report_report_scan_start
               & report_report_scan_end
               & report_report_errors )?
         }

    report_report_gmp
     = element gmp
         {
           report_report_gmp_version
         }

    report_report_gmp_version
     = element version
         {
           text
         }

    report_report_report_format
     = element report_format
         {
           report_report_report_format_param
         }

    report_report_report_format_param
     = element param
         {
           report_report_report_format_param_name
           & report_report_report_format_param_value
         }

    report_report_report_format_param_name
     = element name
         {
           text
         }

    report_report_report_format_param_value
     = element value
         {
           text
         }

    report_report_delta
     = element delta
         {
           report_report_delta_report
         }

    report_report_delta_report
     = element report
         {
           attribute id { uuid }
           & report_report_delta_report_scan_run_status
           & report_report_delta_report_timestamp
           & report_report_delta_report_scan_start
           & report_report_delta_report_scan_end
         }

    report_report_delta_report_scan_run_status
     = element scan_run_status
         {
           task_status
         }

    report_report_delta_report_timestamp
     = element timestamp
         {
           iso_time
         }

    report_report_delta_report_scan_start
     = element scan_start
         {
           iso_time
         }

    report_report_delta_report_scan_end
     = element scan_end
         {
           iso_time
         }

    report_report_sort
     = element sort
         {
           report_report_sort_field
         }

    report_report_sort_field
     = element field
         {
           text
           & report_report_sort_field_order
         }

    report_report_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    report_report_filters
     = element filters
         {
           text # RNC limitation: levels
           & attribute id { uuid }?
           & report_report_filters_term
           & report_report_filters_phrase
           & report_report_filters_notes
           & report_report_filters_overrides
           & report_report_filters_apply_overrides
           & report_report_filters_result_hosts_only
           & report_report_filters_min_qod
           & report_report_filters_filter*
           & report_report_filters_delta?
         }

    report_report_filters_term
     = element term
         {
           text
         }

    report_report_filters_phrase
     = element phrase
         {
           text
         }

    report_report_filters_notes
     = element notes
         {
           xsd:token { pattern = "0|1" }
         }

    report_report_filters_overrides
     = element overrides
         {
           xsd:token { pattern = "0|1" }
         }

    report_report_filters_apply_overrides
     = element apply_overrides
         {
           xsd:token { pattern = "0|1" }
         }

    report_report_filters_result_hosts_only
     = element result_hosts_only
         {
           xsd:token { pattern = "0|1" }
         }

    report_report_filters_min_qod
     = element min_qod
         {
           text
         }

    report_report_filters_filter
     = element filter
         {
           xsd:token { pattern = "Critical|High|Medium|Low|Log" }
         }

    report_report_filters_delta
     = element delta
         {
           text
           & report_report_filters_delta_changed
           & report_report_filters_delta_gone
           & report_report_filters_delta_new
           & report_report_filters_delta_same
         }

    report_report_filters_delta_changed
     = element changed
         {
           boolean
         }

    report_report_filters_delta_gone
     = element gone
         {
           boolean
         }

    report_report_filters_delta_new
     = element new
         {
           boolean
         }

    report_report_filters_delta_same
     = element same
         {
           boolean
         }

    report_report_timezone
     = element timezone
         {
           timezone
         }

    report_report_timezone_abbrev
     = element timezone_abbrev
         {
           text
         }

    report_report_permissions
     = element permissions
         {
           report_report_permissions_permission*
         }

    report_report_permissions_permission
     = element permission
         {
           report_report_permissions_permission_name
         }

    report_report_permissions_permission_name
     = element name
         {
           name
         }

    report_report_user_tags
     = element user_tags
         {
           report_report_user_tags_count
           & report_report_user_tags_tag*
         }

    report_report_user_tags_count
     = element count
         {
           integer
         }

    report_report_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & report_report_user_tags_tag_name
           & report_report_user_tags_tag_value
           & report_report_user_tags_tag_comment
         }

    report_report_user_tags_tag_name
     = element name
         {
           text
         }

    report_report_user_tags_tag_value
     = element value
         {
           text
         }

    report_report_user_tags_tag_comment
     = element comment
         {
           text
         }

    report_report_scan_run_status
     = element scan_run_status
         {
           task_status
         }

    report_report_result_count
     = element result_count
         {
           text
           & report_report_result_count_full
           & report_report_result_count_filtered
           & report_report_result_count_critical
           & report_report_result_count_hole
           & report_report_result_count_high
           & report_report_result_count_info
           & report_report_result_count_low
           & report_report_result_count_log
           & report_report_result_count_warning
           & report_report_result_count_medium
         }

    report_report_result_count_full
     = element full
         {
           integer
         }

    report_report_result_count_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_critical
     = element critical
         {
           report_report_result_count_critical_full
           & report_report_result_count_critical_filtered
         }

    report_report_result_count_critical_full
     = element full
         {
           integer
         }

    report_report_result_count_critical_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_hole
     = element hole
         {
           report_report_result_count_hole_full
           & report_report_result_count_hole_filtered
         }

    report_report_result_count_hole_full
     = element full
         {
           integer
         }

    report_report_result_count_hole_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_high
     = element high
         {
           report_report_result_count_high_full
           & report_report_result_count_high_filtered
         }

    report_report_result_count_high_full
     = element full
         {
           integer
         }

    report_report_result_count_high_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_info
     = element info
         {
           report_report_result_count_info_full
           & report_report_result_count_info_filtered
         }

    report_report_result_count_info_full
     = element full
         {
           integer
         }

    report_report_result_count_info_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_low
     = element low
         {
           report_report_result_count_low_full
           & report_report_result_count_low_filtered
         }

    report_report_result_count_low_full
     = element full
         {
           integer
         }

    report_report_result_count_low_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_log
     = element log
         {
           report_report_result_count_log_full
           & report_report_result_count_log_filtered
         }

    report_report_result_count_log_full
     = element full
         {
           integer
         }

    report_report_result_count_log_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_warning
     = element warning
         {
           report_report_result_count_warning_full
           & report_report_result_count_warning_filtered
         }

    report_report_result_count_warning_full
     = element full
         {
           integer
         }

    report_report_result_count_warning_filtered
     = element filtered
         {
           integer
         }

    report_report_result_count_medium
     = element medium
         {
           report_report_result_count_medium_full
           & report_report_result_count_medium_filtered
         }

    report_report_result_count_medium_full
     = element full
         {
           integer
         }

    report_report_result_count_medium_filtered
     = element filtered
         {
           integer
         }

    report_report_compliance_count
     = element compliance_count
         {
           text
           & report_report_compliance_count_full
           & report_report_compliance_count_filtered
           & report_report_compliance_count_yes
           & report_report_compliance_count_no
           & report_report_compliance_count_incomplete
           & report_report_compliance_count_undefined
         }

    report_report_compliance_count_full
     = element full
         {
           integer
         }

    report_report_compliance_count_filtered
     = element filtered
         {
           integer
         }

    report_report_compliance_count_yes
     = element yes
         {
           report_report_compliance_count_yes_full
           & report_report_compliance_count_yes_filtered
         }

    report_report_compliance_count_yes_full
     = element full
         {
           integer
         }

    report_report_compliance_count_yes_filtered
     = element filtered
         {
           integer
         }

    report_report_compliance_count_no
     = element no
         {
           report_report_compliance_count_no_full
           & report_report_compliance_count_no_filtered
         }

    report_report_compliance_count_no_full
     = element full
         {
           integer
         }

    report_report_compliance_count_no_filtered
     = element filtered
         {
           integer
         }

    report_report_compliance_count_incomplete
     = element incomplete
         {
           report_report_compliance_count_incomplete_full
           & report_report_compliance_count_incomplete_filtered
         }

    report_report_compliance_count_incomplete_full
     = element full
         {
           integer
         }

    report_report_compliance_count_incomplete_filtered
     = element filtered
         {
           integer
         }

    report_report_compliance_count_undefined
     = element undefined
         {
           report_report_compliance_count_undefined_full
           & report_report_compliance_count_undefined_filtered
         }

    report_report_compliance_count_undefined_full
     = element full
         {
           integer
         }

    report_report_compliance_count_undefined_filtered
     = element filtered
         {
           integer
         }

    report_report_severity
     = element severity
         {
           report_report_severity_full
           & report_report_severity_filtered
         }

    report_report_severity_full
     = element full
         {
           severity
         }

    report_report_severity_filtered
     = element filtered
         {
           severity
         }

    report_report_compliance
     = element compliance
         {
           report_report_compliance_full
           & report_report_compliance_filtered
         }

    report_report_compliance_full
     = element full
         {
           compliance_status
         }

    report_report_compliance_filtered
     = element filtered
         {
           compliance_status
         }

    report_report_task
     = element task
         {
           attribute id { uuid }
           & report_report_task_name
           & report_report_task_comment
           & report_report_task_target
           & report_report_task_progress
           & report_report_task_user_tags?
         }

    report_report_task_name
     = element name
         {
           name
         }

    report_report_task_comment
     = element comment
         {
           text
         }

    report_report_task_target
     = element target
         {
           attribute id { uuid }?
           & report_report_task_target_trash
           & report_report_task_target_name
           & report_report_task_target_comment
         }

    report_report_task_target_trash
     = element trash    # type boolean
         {
         }

    report_report_task_target_name
     = element name
         {
           name
         }

    report_report_task_target_comment
     = element comment
         {
           text
         }

    report_report_task_progress
     = element progress
         {
           integer
         }

    report_report_task_user_tags
     = element user_tags
         {
           report_report_task_user_tags_count
           & report_report_task_user_tags_tag*
         }

    report_report_task_user_tags_count
     = element count
         {
           integer
         }

    report_report_task_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & report_report_task_user_tags_tag_name
           & report_report_task_user_tags_tag_value
           & report_report_task_user_tags_tag_comment
         }

    report_report_task_user_tags_tag_name
     = element name
         {
           text
         }

    report_report_task_user_tags_tag_value
     = element value
         {
           text
         }

    report_report_task_user_tags_tag_comment
     = element comment
         {
           text
         }

    report_report_ports
     = element ports
         {
           attribute start { integer }
           & attribute max { integer }
           & report_report_ports_port*
         }

    report_report_ports_port
     = element port
         {
           text
           & report_report_ports_port_host
           & report_report_ports_port_severity
           & report_report_ports_port_threat
         }

    report_report_ports_port_host
     = element host
         {
           text
         }

    report_report_ports_port_severity
     = element severity
         {
           severity
         }

    report_report_ports_port_threat
     = element threat
         {
           threat
         }

    report_report_results
     = element results
         {
           attribute start { integer }
           & attribute max { integer }
           & report_report_results_result*
         }

    report_report_results_result
     = element result    # type result
         {
           attribute id { uuid }
           & result_name
           & result_owner
           & result_comment
           & result_creation_time
           & result_modification_time
           & result_user_tags?
           & result_report?
           & result_task?
           & result_host
           & result_port
           & result_path?
           & result_oci_image?
           & result_nvt
           & result_scan_nvt_version
           & result_threat
           & result_severity
           & result_qod
           & result_original_threat?
           & result_original_severity?
           & result_compliance
           & result_description
           & result_delta?
           & result_detection?
           & result_notes?
           & result_overrides?
           & result_tickets?
         }

    report_report_hosts
     = element hosts
         {
           ( ( attribute start { integer }
               & attribute max { integer } )
               | report_report_hosts_count )
         }

    report_report_hosts_count
     = element count
         {
         }

    report_report_closed_cves
     = element closed_cves
         {
           report_report_closed_cves_count
         }

    report_report_closed_cves_count
     = element count
         {
         }

    report_report_vulns
     = element vulns
         {
           report_report_vulns_count
         }

    report_report_vulns_count
     = element count
         {
         }

    report_report_os
     = element os
         {
           report_report_os_count
         }

    report_report_os_count
     = element count
         {
         }

    report_report_apps
     = element apps
         {
           report_report_apps_count
         }

    report_report_apps_count
     = element count
         {
         }

    report_report_ssl_certs
     = element ssl_certs
         {
           report_report_ssl_certs_count
         }

    report_report_ssl_certs_count
     = element count
         {
         }

    report_report_host
     = element host
         {
           report_report_host_ip
           & report_report_host_asset
           & report_report_host_start
           & report_report_host_end
           & report_report_host_port_count
           & report_report_host_result_count?
           & report_report_host_compliance_count?
           & report_report_host_host_compliance?
           & report_report_host_detail*
         }

    report_report_host_ip
     = element ip
         {
           text
         }

    report_report_host_asset
     = element asset
         {
           attribute asset_id { uuid }
         }

    report_report_host_start
     = element start
         {
           text
         }

    report_report_host_end
     = element end
         {
           text
         }

    report_report_host_port_count
     = element port_count
         {
           report_report_host_port_count_page
         }

    report_report_host_port_count_page
     = element page
         {
           integer
         }

    report_report_host_result_count
     = element result_count
         {
           report_report_host_result_count_page
           & report_report_host_result_count_critical
           & report_report_host_result_count_hole
           & report_report_host_result_count_high
           & report_report_host_result_count_info
           & report_report_host_result_count_low
           & report_report_host_result_count_log
           & report_report_host_result_count_warning
           & report_report_host_result_count_medium
           & report_report_host_result_count_false_positive
         }

    report_report_host_result_count_page
     = element page
         {
           integer
         }

    report_report_host_result_count_critical
     = element critical
         {
           report_report_host_result_count_critical_page
         }

    report_report_host_result_count_critical_page
     = element page
         {
           integer
         }

    report_report_host_result_count_hole
     = element hole
         {
           report_report_host_result_count_hole_page
         }

    report_report_host_result_count_hole_page
     = element page
         {
           integer
         }

    report_report_host_result_count_high
     = element high
         {
           report_report_host_result_count_high_page
         }

    report_report_host_result_count_high_page
     = element page
         {
           integer
         }

    report_report_host_result_count_warning
     = element warning
         {
           report_report_host_result_count_warning_page
         }

    report_report_host_result_count_warning_page
     = element page
         {
           integer
         }

    report_report_host_result_count_medium
     = element medium
         {
           report_report_host_result_count_medium_page
         }

    report_report_host_result_count_medium_page
     = element page
         {
           integer
         }

    report_report_host_result_count_info
     = element info
         {
           report_report_host_result_count_info_page
         }

    report_report_host_result_count_info_page
     = element page
         {
           integer
         }

    report_report_host_result_count_low
     = element low
         {
           report_report_host_result_count_low_page
         }

    report_report_host_result_count_low_page
     = element page
         {
           integer
         }

    report_report_host_result_count_log
     = element log
         {
           report_report_host_result_count_log_page
         }

    report_report_host_result_count_log_page
     = element page
         {
           integer
         }

    report_report_host_result_count_false_positive
     = element false_positive
         {
           report_report_host_result_count_false_positive_page
         }

    report_report_host_result_count_false_positive_page
     = element page
         {
           integer
         }

    report_report_host_compliance_count
     = element compliance_count
         {
           report_report_host_compliance_count_page
           & report_report_host_compliance_count_yes
           & report_report_host_compliance_count_no
           & report_report_host_compliance_count_incomplete
           & report_report_host_compliance_count_undefined
         }

    report_report_host_compliance_count_page
     = element page
         {
           integer
         }

    report_report_host_compliance_count_yes
     = element yes
         {
           report_report_host_compliance_count_yes_page
         }

    report_report_host_compliance_count_yes_page
     = element page
         {
           integer
         }

    report_report_host_compliance_count_no
     = element no
         {
           report_report_host_compliance_count_no_page
         }

    report_report_host_compliance_count_no_page
     = element page
         {
           integer
         }

    report_report_host_compliance_count_incomplete
     = element incomplete
         {
           report_report_host_compliance_count_incomplete_page
         }

    report_report_host_compliance_count_incomplete_page
     = element page
         {
           integer
         }

    report_report_host_compliance_count_undefined
     = element undefined
         {
           report_report_host_compliance_count_undefined_page
         }

    report_report_host_compliance_count_undefined_page
     = element page
         {
           integer
         }

    report_report_host_host_compliance
     = element host_compliance
         {
           compliance_status
         }

    report_report_host_detail
     = element detail
         {
           report_report_host_detail_name
           & report_report_host_detail_value
           & report_report_host_detail_source
           & report_report_host_detail_extra
         }

    report_report_host_detail_name
     = element name
         {
           text
         }

    report_report_host_detail_value
     = element value
         {
           text
         }

    report_report_host_detail_source
     = element source
         {
           report_report_host_detail_source_type
           & report_report_host_detail_source_name
           & report_report_host_detail_source_description
         }

    report_report_host_detail_source_type
     = element type
         {
           text
         }

    report_report_host_detail_source_name
     = element name
         {
           text
         }

    report_report_host_detail_source_description
     = element description
         {
           text
         }

    report_report_host_detail_extra
     = element extra
         {
           text
         }

    report_report_tls_certificates
     = element tls_certificates
         {
           report_report_tls_certificates_tls_certificate*
         }

    report_report_tls_certificates_tls_certificate
     = element tls_certificate
         {
           report_report_tls_certificates_tls_certificate_name
           & report_report_tls_certificates_tls_certificate_certificate
           & report_report_tls_certificates_tls_certificate_sha256_fingerprint
           & report_report_tls_certificates_tls_certificate_md5_fingerprint
           & report_report_tls_certificates_tls_certificate_valid
           & report_report_tls_certificates_tls_certificate_activation_time
           & report_report_tls_certificates_tls_certificate_expiration_time
           & report_report_tls_certificates_tls_certificate_subject_dn
           & report_report_tls_certificates_tls_certificate_issuer_dn
           & report_report_tls_certificates_tls_certificate_serial
           & report_report_tls_certificates_tls_certificate_host
           & report_report_tls_certificates_tls_certificate_ports
         }

    report_report_tls_certificates_tls_certificate_name
     = element name
         {
           text
         }

    report_report_tls_certificates_tls_certificate_certificate
     = element certificate
         {
           attribute format { xsd:token { pattern = "DER|PEM|unknown" } }
         }

    report_report_tls_certificates_tls_certificate_sha256_fingerprint
     = element sha256_fingerprint
         {
           text
         }

    report_report_tls_certificates_tls_certificate_md5_fingerprint
     = element md5_fingerprint
         {
           text
         }

    report_report_tls_certificates_tls_certificate_valid
     = element valid
         {
           boolean
         }

    report_report_tls_certificates_tls_certificate_activation_time
     = element activation_time
         {
           iso_time
         }

    report_report_tls_certificates_tls_certificate_expiration_time
     = element expiration_time
         {
           iso_time
         }

    report_report_tls_certificates_tls_certificate_subject_dn
     = element subject_dn
         {
           text
         }

    report_report_tls_certificates_tls_certificate_issuer_dn
     = element issuer_dn
         {
           text
         }

    report_report_tls_certificates_tls_certificate_serial
     = element serial
         {
           text
         }

    report_report_tls_certificates_tls_certificate_host
     = element host
         {
           report_report_tls_certificates_tls_certificate_host_ip
           & report_report_tls_certificates_tls_certificate_host_hostname
         }

    report_report_tls_certificates_tls_certificate_host_ip
     = element ip
         {
           text
         }

    report_report_tls_certificates_tls_certificate_host_hostname
     = element hostname
         {
           text
         }

    report_report_tls_certificates_tls_certificate_ports
     = element ports
         {
           report_report_tls_certificates_tls_certificate_ports_port*
         }

    report_report_tls_certificates_tls_certificate_ports_port
     = element port
         {
           integer
         }

    report_report_timestamp
     = element timestamp
         {
           iso_time
         }

    report_report_scan_start
     = element scan_start
         {
           iso_time
         }

    report_report_scan_end
     = element scan_end
         {
           iso_time
         }

    report_report_errors
     = element errors
         {
           report_report_errors_count
           & report_report_errors_error*
         }

    report_report_errors_count
     = element count
         {
         }

    report_report_errors_error
     = element error
         {
           report_report_errors_error_host
           & report_report_errors_error_port
           & report_report_errors_error_description
           & report_report_errors_error_nvt
           & report_report_errors_error_scan_nvt_version
           & report_report_errors_error_severity
         }

    report_report_errors_error_host
     = element host
         {
           text
           & report_report_errors_error_host_asset
         }

    report_report_errors_error_host_asset
     = element asset
         {
           attribute asset_id { uuid }
         }

    report_report_errors_error_port
     = element port
         {
           port
         }

    report_report_errors_error_description
     = element description
         {
           text
         }

    report_report_errors_error_nvt
     = element nvt
         {
           attribute oid {  }
           & report_report_errors_error_nvt_name
           & report_report_errors_error_nvt_type
           & report_report_errors_error_nvt_cvss_base
         }

    report_report_errors_error_nvt_name
     = element name
         {
           text
         }

    report_report_errors_error_nvt_type
     = element type
         {
           text
         }

    report_report_errors_error_nvt_cvss_base
     = element cvss_base
         {
           severity
         }

    report_report_errors_error_scan_nvt_version
     = element scan_nvt_version
         {
           text
         }

    report_report_errors_error_severity
     = element severity
         {
           severity
         }

### 6.16 Element `severities`

In short: A collection of severity scoring info.

#### 6.16.1 Structure

- - @score (severity) The maximum severity score.
  - <severity> *
    Individual severity ratings and info.
    - @type (text) Type of severity rating, e.g. cvss_base_v2.
    - <origin>
      Origin of severity rating.
    - <date>
      Date the severity was defined.
    - <score>
      Numeric score ranging from 0.0 to 10.0.
    - <value>
      Detailed rating value, e.g. a CVSS vector.

#### 6.16.2 RNC

    severities
     = element severities
         {
           attribute score { severity }
           & severities_severity*
         }

    severities_severity
     = element severity
         {
           attribute type { text }
           & severities_severity_origin
           & severities_severity_date
           & severities_severity_score
           & severities_severity_value
         }

    severities_severity_origin
     = element origin
         {
           text
         }

    severities_severity_date
     = element date
         {
           iso_time
         }

    severities_severity_score
     = element score
         {
           severity
         }

    severities_severity_value
     = element value
         {
           text
         }

## 7 Command Details

### 7.1 Command `authenticate`

In short: Authenticate with the manager.

The client uses the authenticate command to authenticate with the Manager.

The client normally executes this command at the beginning of each connection. The only command permitted before authentication is get_version.

#### 7.1.1 Structure

- Command
  - <credentials>
    - <username>
      The login name of the user.
    - <password>
      The user's password.
- Response
  - @status (status)
  - @status_text (text)
  - <role>
    ("User", "Admin", "Super Admin" or "Observer")
    The user's role.
  - <timezone>
    The user's timezone.

#### 7.1.2 RNC

Command

    authenticate
     = element authenticate
         {
           authenticate_credentials
         }

    authenticate_credentials
     = element credentials
         {
           authenticate_credentials_username
           & authenticate_credentials_password
         }

    authenticate_credentials_username
     = element username
         {
           text
         }

    authenticate_credentials_password
     = element password
         {
           text
         }

Response

    authenticate_response
     = element authenticate_response
         {
           attribute status { status }
           & attribute status_text { text }
           & authenticate_response_role
           & authenticate_response_timezone
         }

    authenticate_response_role
     = element role    # type UserAdminSuper AdminObserver
         {
         }

    authenticate_response_timezone
     = element timezone
         {
           timezone
         }

#### 7.1.3 Example: Authenticate with a good password

Client

     <authenticate>
       <credentials>
         <username>sally</username>
         <password>secret</password>
       </credentials>
     </authenticate>

Manager

     <authenticate_response status="200"
                            status_text="OK">
       <role>User</role>
       <timezone>UTC</timezone>
     </authenticate_response>

#### 7.1.3 Example: Authenticate with a bad password

Client

     <authenticate>
       <credentials>
         <username>sally</username>
         <password>secrte</password>
       </credentials>
     </authenticate>

Manager

     <authenticate_response status="400"
                            status_text="Authentication failed"/>

### 7.2 Command `create_alert`

In short: Create an alert.

The client uses the create_alert command to create a new alert.

#### 7.2.1 Structure

- Command
  - <name>
    A name for the alert.
  - <comment> ?
    A comment on the alert.
  - <copy> ?
    The UUID of an existing alert.
  - <condition>
    The condition that must be satisfied for the alert to occur.
    - <data> *
      Some data that defines the condition.
      - <name>
        The name of the condition data.
  - <event>
    The event that must happen for the alert to occur.
    - <data> *
      Some data that defines the event.
      - <name>
        The name of the event data.
  - <method>
    The method by which the user is alerted.
    - <data> *
      Some data that defines the method.
      - <name>
        The name of the method data.
  - <filter>
    Filter to apply when executing alert.
    - @id (uuid)
  - <active> ?
    Whether the alert is active.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.2.2 RNC

Command

    create_alert
     = element create_alert
         {
           create_alert_name
           & create_alert_comment?
           & create_alert_copy?
           & create_alert_condition
           & create_alert_event
           & create_alert_method
           & create_alert_filter
           & create_alert_active?
         }

    create_alert_name
     = element name
         {
           name
         }

    create_alert_comment
     = element comment
         {
           text
         }

    create_alert_copy
     = element copy
         {
           uuid
         }

    create_alert_condition
     = element condition
         {
           text
           & create_alert_condition_data*
         }

    create_alert_condition_data
     = element data
         {
           text
           & create_alert_condition_data_name
         }

    create_alert_condition_data_name
     = element name
         {
           text
         }

    create_alert_event
     = element event
         {
           text
           & create_alert_event_data*
         }

    create_alert_event_data
     = element data
         {
           text
           & create_alert_event_data_name
         }

    create_alert_event_data_name
     = element name
         {
           text
         }

    create_alert_method
     = element method
         {
           text
           & create_alert_method_data*
         }

    create_alert_method_data
     = element data
         {
           text
           & create_alert_method_data_name
         }

    create_alert_method_data_name
     = element name
         {
           text
         }

    create_alert_filter
     = element filter
         {
           attribute id { uuid }
         }

    create_alert_active
     = element active
         {
           boolean
         }

Response

    create_alert_response
     = element create_alert_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.2.3 Example: Create an email alert

Client

     <create_alert>
       <name>emergency</name>
       <condition>
         Severity at least
         <data>
           5.5
           <name>severity</name>
         </data>
       </condition>
       <event>
         Task run status changed
         <data>
           Done
           <name>status</name>
         </data>
       </event>
       <method>
         Email
         <data>
           sally@example.org
           <name>to_address</name>
         </data>
         <data>
           bob@example.org
           <name>from_address</name>
         </data>
       </method>
     </create_alert>

Manager

     <create_alert_response status="201"
                            status_text="OK, resource created"
                            id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

#### 7.2.3 Example: Create an Alemba vFire alert

Client

     <create_alert>
       <name>Alemba test</name>
       <method>
         Alemba vFire
         <data>
           https://alemba.example.com/vfire
           <name>vfire_base_url</name>
         </data>
         <data>
           9431b46f-8491-45d8-81c3-efea92abb47b
           <name>vfire_credential</name>
         </data>
         <data>
           5a52a4ff-6f5d-430d-b70a-d5329b6cbbd3
           <name>vfire_client_id</name>
         </data>
         <data>
           This an automatically created call for the GVM task %n.
           <name>vfire_call_description</name>
         </data>
         <data>
           IT
           <name>vfire_call_partition_name</name>
         </data>
         <data>
           GVM Report
           <name>vfire_call_type_name</name>
         </data>
         <data>
           GVM Scan Report
           <name>vfire_call_template_name</name>
         </data>
         <data>
           3 - Team (2-10)
           <name>vfire_call_impact_name</name>
         </data>
         <data>
           3 - Normal
           <name>vfire_call_urgency_name</name>
         </data>
         <data>
           a3810a62-1f62-11e1-9219-406186ea4fc5, c402cc3e-b531-11e1-9163-406186ea4fc5
           <name>report_formats</name>
         </data>
       </method>
       <condition>always</condition>
       <event>
         Task run status changed
         <data>
           Done
           <name>status</name>
         </data>
       </event>
     </create_alert>

Manager

     <create_alert_response status="201"
                            status_text="OK, resource created"
                            id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.3 Command `create_asset`

In short: Create an asset.

The client uses the create_asset command to create a new asset.

#### 7.3.1 Structure

- Command
  - One of
    - <asset>
      - <name>
        A name for the asset. Must be an IPv4 or IPv6 address for hosts.
      - <comment> ?
        A comment on the asset.
      - <type>
        The type of asset to create. Must be 'host'.
    - <report>
      Report from which to import assets.
      - @id (uuid)
      - <filter>
        Filter, for min_qod and apply_overrides.
        - <term>
          Filter term.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.3.2 RNC

Command

    create_asset
     = element create_asset
         {
           ( create_asset_asset
               | create_asset_report )
         }

    create_asset_asset
     = element asset
         {
           create_asset_asset_name
           & create_asset_asset_comment?
           & create_asset_asset_type
         }

    create_asset_asset_name
     = element name
         {
           name
         }

    create_asset_asset_comment
     = element comment
         {
           text
         }

    create_asset_asset_type
     = element type
         {
           text
         }

    create_asset_report
     = element report
         {
           attribute id { uuid }
           & create_asset_report_filter
         }

    create_asset_report_filter
     = element filter
         {
           create_asset_report_filter_term
         }

    create_asset_report_filter_term
     = element term
         {
           text
         }

Response

    create_asset_response
     = element create_asset_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.3.3 Example: Create an asset

Client

     <create_asset>
       <asset>
         <type>host</type>
         <name>Localhost</name>
       </asset>
     </create_asset>

Manager

     <create_asset_response status="201"
                            status_text="OK, resource created"
                            id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.4 Command `create_config`

In short: Create a config.

The client uses the create_config command to create a new config.

This command can be called in three ways:

- With a copy element. The new config is a copy of the existing config, with the given name.
- With an embedded get_configs response element. The config is created as defined by the get_configs response element. Name is actually optional in this case. The config is given the name of the config in the get_configs response. If there is already a config with this name, then a number is attached to the name to make it unique.
- With a scanner element referencing an OSP scanner. The config is then created by retrieving the expected preferences from the given scanner via OSP.

#### 7.4.1 Structure

- Command
  - <comment> ?
    A comment on the config.
  - One of
    - <copy>
      The UUID of an existing config.
    - <get_configs_response>
      Response to get_configs command.
  - <name>
    A name for the config.
  - <usage_type> ?
    Usage type (scan or policy) for the config. Can overwrite the one in get_configs_response.
    One of:
    scan
    policy
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.4.2 RNC

Command

    create_config
     = element create_config
         {
           create_config_comment?
           & ( create_config_copy
               | get_configs_response )
           & create_config_name
           & create_config_usage_type?
         }

    create_config_comment
     = element comment
         {
           text
         }

    create_config_copy
     = element copy
         {
           uuid
         }

    create_config_name
     = element name
         {
           name
         }

    create_config_usage_type
     = element usage_type
         {
           xsd:token { pattern = "scan|policy" }
         }

Response

    create_config_response
     = element create_config_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.4.3 Example: Copy a config

Client

     <create_config>
       <copy>daba56c8-73ec-11df-a475-002264764cea</copy>
       <name>Full</name>
     </create_config>

Manager

     <create_config_response status="201"
                             status_text="OK, resource created"
                             id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

#### 7.4.3 Example: Create a config from a GET_CONFIGS response

Client

     <create_config>
       <get_configs_response>
         <config id="daba56c8-73ec-11df-a475-002264764cea">
           <name>Full and fast</name>
           ...
         </config>
       </get_configs_response>
     </create_config>

Manager

     <create_config_response status="201"
                             status_text="OK, resource created"
                             id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.5 Command `create_credential`

In short: Create a credential.

The client uses the create_credential command to create a new credential for local security checks and other functions requiring authentication.

If the command includes a key, then the manager creates a key-based credential from the key. If the command includes a password, then the manager creates a password only credential. Otherwise the manager autogenerates a key-based credential.

#### 7.5.1 Structure

- Command
  - <name>
    A name for the credential.
  - <comment> ?
    A comment on the credential.
  - <copy> ?
    The UUID of an existing credential.
  - <allow_insecure> ?
    Whether to allow insecure use of the credential.
  - <certificate> ?
    The certificate of the credential.
  - <kdc> ?
    Deprecated: This element is deprecated. Use kdcs instead. The Kerberos KDC (key distribution center(s)).
  - <kdcs> ?
    Multiple Kerberos KDCs.
    - <kdc> *
      A single Kerberos Key Distribution Center.
    More Details
    List of one or more Kerberos Key Distribution Centers (KDCs).
  - <key> ?
    - <phrase> ?
      Key passphrase.
    - One of
      - <private>
        Private key.
      - <public>
        Public key.
  - <login> ?
    The user name of the credential.
  - <password> ?
    The password for the credential login.
  - <auth_algorithm> ?
    Authentication algorithm for SNMP, either md5 or sha1.
    One of:
    md5
    sha1
  - <community> ?
    The SNMP community.
  - <privacy> ?
    - <algorithm>
      The SNMP privacy algorithm, either aes or des.
      One of:
      aes
      des
    - <password>
      The SNMP privacy password.
  - <realm> ?
    The Kerberos realm.
  - <type> ?
    The type of credential to create.
    One of:
    cc
    krb5
    pgp
    pw
    smime
    snmp
    up
    usk
    More Details
    cc: Client certificate
    krb5: Kerberos 5
    pgp: PGP encryption key
    pw: Password only
    smime: S/MIME certificate
    snmp: SNMP
    up: User name + password
    usk: User name + SSH key
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.5.2 RNC

Command

    create_credential
     = element create_credential
         {
           create_credential_name
           & create_credential_comment?
           & create_credential_copy?
           & create_credential_allow_insecure?
           & create_credential_certificate?
           & create_credential_kdc?
           & create_credential_kdcs?
           & create_credential_key?
           & create_credential_login?
           & create_credential_password?
           & create_credential_auth_algorithm?
           & create_credential_community?
           & create_credential_privacy?
           & create_credential_realm?
           & create_credential_type?
         }

    create_credential_name
     = element name
         {
           name
         }

    create_credential_comment
     = element comment
         {
           text
         }

    create_credential_copy
     = element copy
         {
           uuid
         }

    create_credential_allow_insecure
     = element allow_insecure
         {
           boolean
         }

    create_credential_certificate
     = element certificate
         {
           text
         }

    create_credential_kdc
     = element kdc
         {
           text
         }

    create_credential_kdcs
     = element kdcs
         {
           create_credential_kdcs_kdc*
         }

    create_credential_kdcs_kdc
     = element kdc
         {
           text
         }

    create_credential_key
     = element key
         {
           create_credential_key_phrase?
           & ( create_credential_key_private
               | create_credential_key_public )
         }

    create_credential_key_phrase
     = element phrase
         {
           text
         }

    create_credential_key_private
     = element private
         {
           text
         }

    create_credential_key_public
     = element public
         {
           text
         }

    create_credential_login
     = element login
         {
           text
         }

    create_credential_password
     = element password
         {
           text
         }

    create_credential_community
     = element community
         {
           text
         }

    create_credential_auth_algorithm
     = element auth_algorithm
         {
           xsd:token { pattern = "md5|sha1" }
         }

    create_credential_privacy
     = element privacy
         {
           create_credential_privacy_algorithm
           & create_credential_privacy_password
         }

    create_credential_privacy_algorithm
     = element algorithm
         {
           xsd:token { pattern = "aes|des" }
         }

    create_credential_privacy_password
     = element password
         {
           text
         }

    create_credential_realm
     = element realm
         {
           text
         }

    create_credential_type
     = element type
         {
           xsd:token { pattern = "cc|krb5|pgp|pw|smime|snmp|up|usk" }
         }

Response

    create_credential_response
     = element create_credential_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.5.3 Example: Create an LSC credential

Client

     <create_credential>
       <name>cluster sally</name>
       <login>sally</login>
       <password>secret</password>
       <comment>Sally's login to the cluster.</comment>
     </create_credential>

Manager

     <create_credential_response status="201"
                                 status_text="OK, resource created"
                                 id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

#### 7.5.3 Example: Create a PGP public key credential

Client

     <create_credential>
       <name>Email public key</name>
       <type>pgp</type>
       <key>
         <public>
           -----BEGIN PGP PUBLIC KEY BLOCK----- [...]
         </public>
       </key>
     </create_credential>

Manager

     <create_credential_response status="201"
                                 status_text="OK, resource created"
                                 id="e81be3f4-a9a6-45a0-853f-980383a5d9eb"/>

#### 7.5.3 Example: Create an S/MIME credential

Client

     <create_credential>
       <name>Email certificate</name>
       <type>smime</type>
       <certificate>-----BEGIN PKCS7----- [...]</certificate>
     </create_credential>

Manager

     <create_credential_response status="201"
                                 status_text="OK, resource created"
                                 id="4aa5bf8a-502d-4023-96b0-352fe202a097"/>

#### 7.5.3 Example: Create a Kerberos credential with multiple KDCs

Client

     <create_credential>
       <name>Kerberos Cluster Auth</name>
       <type>krb5</type>
       <login>admin</login>
       <password>secret123</password>
       <realm>EXAMPLE.COM</realm>
       <kdc>kdc1.example.com,kdc2.example.com,192.168.1.10</kdc>
       <kdcs>
         <kdc>kdc1.example.com</kdc>
         <kdc>kdc2.example.com</kdc>
         <kdc>192.168.1.10</kdc>
       </kdcs>
     </create_credential>

Manager

     <create_credential_response status="201"
                                 status_text="OK, resource created"
                                 id="b2a4a8c3-9f44-4e7f-bd64-7c69b0ec100e"/>

### 7.6 Command `create_filter`

In short: Create a filter.

The client uses the create_filter command to create a new filter.

#### 7.6.1 Structure

- Command
  - <name>
    A name for the filter.
  - <comment> ?
    A comment on the filter.
  - <copy> ?
    The UUID of an existing filter.
  - <term> ?
    Filter term.
  - <type> ?
    Resource type.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.6.2 RNC

Command

    create_filter
     = element create_filter
         {
           create_filter_name
           & create_filter_comment?
           & create_filter_copy?
           & create_filter_term?
           & create_filter_type?
         }

    create_filter_name
     = element name
         {
           name
         }

    create_filter_comment
     = element comment
         {
           text
         }

    create_filter_copy
     = element copy
         {
           uuid
         }

    create_filter_term
     = element term
         {
           text
         }

    create_filter_type
     = element type
         {
           text
         }

Response

    create_filter_response
     = element create_filter_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.6.3 Example: Create a filter

Client

     <create_filter>
       <name>Single Targets</name>
       <comment>Targets with only one host</comment>
       <term>ips=1 first=1 rows=-2</term>
       <type>target</type>
     </create_filter>

Manager

     <create_filter_response status="201"
                             status_text="OK, resource created"
                             id="254cd3ef-bbe1-4d58-859d-21b8d0c046c7"/>

### 7.7 Command `create_group`

In short: Create a group.

The client uses the create_group command to create a new group.

#### 7.7.1 Structure

- Command
  - <name>
    A name for the group.
  - <comment> ?
    A comment on the group.
  - <copy> ?
    The UUID of an existing group.
  - <specials> ?
    - <full>
      Create permission giving members full access to each other's resources.
  - <users> ?
    Comma separated list of user names.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.7.2 RNC

Command

    create_group
     = element create_group
         {
           create_group_name
           & create_group_comment?
           & create_group_copy?
           & create_group_specials?
           & create_group_users?
         }

    create_group_name
     = element name
         {
           name
         }

    create_group_comment
     = element comment
         {
           text
         }

    create_group_copy
     = element copy
         {
           uuid
         }

    create_group_specials
     = element specials
         {
           create_group_specials_full
         }

    create_group_specials_full
     = element full
         {
           ""
         }

    create_group_users
     = element users
         {
           text
         }

Response

    create_group_response
     = element create_group_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.7.3 Example: Create a group

Client

     <create_group>
       <name>Managers</name>
       <users>sarah, bob</users>
     </create_group>

Manager

     <create_group_response status="201"
                            status_text="OK, resource created"
                            id="d94211b6-ba40-11e3-bcb1-406186ea4fc5"/>

### 7.8 Command `create_note`

In short: Create a note.

The client uses the create_note command to create a new note.

#### 7.8.1 Structure

- Command
  - <text>
    The text of the note.
  - <nvt>
    NVT to which note applies.
    - @oid (oid)
  - <active> ?
    Days note will be active. -1 on always, 0 off.
  - <copy> ?
    The UUID of an existing note.
  - <hosts> ?
    A comma-separated list of hosts.
  - <port> ?
    Port (location) to which note applies.
  - <result> ?
    Result to which note applies.
    - @id (uuid)
  - <severity> ?
    Severity to which note applies.
  - <task> ?
    Task to which note applies.
    - @id (uuid)
  - <threat> ?
    Threat level to which note applies. Will be converted to severity.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.8.2 RNC

Command

    create_note
     = element create_note
         {
           create_note_text
           & create_note_nvt
           & create_note_active?
           & create_note_copy?
           & create_note_hosts?
           & create_note_port?
           & create_note_result?
           & create_note_severity?
           & create_note_task?
           & create_note_threat?
         }

    create_note_text
     = element text
         {
           text
         }

    create_note_nvt
     = element nvt
         {
           attribute oid { oid }
         }

    create_note_active
     = element active
         {
           integer
         }

    create_note_copy
     = element copy
         {
           uuid
         }

    create_note_hosts
     = element hosts
         {
           text
         }

    create_note_port
     = element port
         {
           text
         }

    create_note_result
     = element result
         {
           attribute id { uuid }
         }

    create_note_severity
     = element severity
         {
           severity
         }

    create_note_task
     = element task
         {
           attribute id { uuid }
         }

    create_note_threat
     = element threat
         {
           threat
         }

Response

    create_note_response
     = element create_note_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.8.3 Example: Create a note

Client

     <create_note>
       <text>This issue should be resolved after the upgrade.</text>
       <nvt oid="1.3.6.1.4.1.25623.1.0.10330"/>
       <result>254cd3ef-bbe1-4d58-859d-21b8d0c046c6</result>
     </create_note>

Manager

     <create_note_response status="202"
                           status_text="OK, resource created"
                           id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.9 Command `create_override`

In short: Create an override.

The client uses the create_override command to create a new override.

#### 7.9.1 Structure

- Command
  - <text>
    The text of the override.
  - <nvt>
    NVT to which override applies.
    - @oid (oid)
  - One of
    - <new_severity>
      New severity for result.
    - <new_threat>
      New threat level for result, will be converted to a new_severity.
  - <active> ?
    Days override will be active. -1 on always, 0 off.
  - <copy> ?
    The UUID of an existing override.
  - <hosts> ?
    A comma-separated list of hosts.
  - <port> ?
    Port (location) to which override applies.
  - <result> ?
    Result to which override applies.
    - @id (uuid)
  - <severity> ?
    Severity score to which override applies.
  - <task> ?
    Task to which override applies.
    - @id (uuid)
  - <threat> ?
    Threat level to which override applies, will be converted to severity.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.9.2 RNC

Command

    create_override
     = element create_override
         {
           create_override_text
           & create_override_nvt
           & ( create_override_new_severity
               | create_override_new_threat )
           & create_override_active?
           & create_override_copy?
           & create_override_hosts?
           & create_override_port?
           & create_override_result?
           & create_override_severity?
           & create_override_task?
           & create_override_threat?
         }

    create_override_text
     = element text
         {
           text
         }

    create_override_active
     = element active
         {
           integer
         }

    create_override_nvt
     = element nvt
         {
           attribute oid { oid }
         }

    create_override_copy
     = element copy
         {
           uuid
         }

    create_override_hosts
     = element hosts
         {
           text
         }

    create_override_new_severity
     = element new_severity
         {
           severity
         }

    create_override_new_threat
     = element new_threat
         {
           threat
         }

    create_override_port
     = element port
         {
           text
         }

    create_override_result
     = element result
         {
           attribute id { uuid }
         }

    create_override_severity
     = element severity
         {
           severity
         }

    create_override_task
     = element task
         {
           attribute id { uuid }
         }

    create_override_threat
     = element threat
         {
           threat
         }

Response

    create_override_response
     = element create_override_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.9.3 Example: Create an override

Client

     <create_override>
       <text>This is actually of little concern.</text>
       <nvt oid="1.3.6.1.4.1.25623.1.0.10330"/>
       <new_threat>Low</new_threat>
       <result id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>
     </create_override>

Manager

     <create_override_response status="201"
                               status_text="OK, resource created"
                               id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.10 Command `create_permission`

In short: Create a permission.

The client uses the create_permission command to create a new permission.

#### 7.10.1 Structure

- Command
  - <name>
    A permission name, currently the name of a command.
  - <subject>
    A subject to whom the permission is granted.
    - @id (uuid)
    - <type>
      GMP type of the subject: user, group or role.
  - <resource> ?
    A resource to which the permission applies.
    - @id (uuid)
    - <type>
      GMP type, for Super permissions: user, group or role.
  - <copy> ?
    UUID of an existing permission to copy.
  - <comment> ?
    Comment on the permission.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.10.2 RNC

Command

    create_permission
     = element create_permission
         {
           create_permission_name
           & create_permission_subject
           & create_permission_resource?
           & create_permission_copy?
           & create_permission_comment?
         }

    create_permission_name
     = element name
         {
           text
         }

    create_permission_subject
     = element subject
         {
           attribute id { uuid }?
           & create_permission_subject_type
         }

    create_permission_subject_type
     = element type
         {
           text
         }

    create_permission_resource
     = element resource
         {
           attribute id { uuid }?
           & create_permission_resource_type
         }

    create_permission_resource_type
     = element type
         {
           text
         }

    create_permission_copy
     = element copy
         {
           uuid
         }

    create_permission_comment
     = element comment
         {
           text
         }

Response

    create_permission_response
     = element create_permission_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.10.3 Example: Grant a user permission to view a target

Client

     <create_permission>
       <name>get_targets</name>
       <resource id="b493b7a8-7489-11df-a3ec-002264764cea"/>
       <subject id="66abe5ce-c011-11e3-b96e-406186ea4fc5">
         <type>user</type>
       </subject>
     </create_permission>

Manager

     <create_permission_response status="201"
                                 status_text="OK, resource created"
                                 id="7ee79232-c011-11e3-b560-406186ea4fc5"/>

#### 7.10.3 Example: Grant a role permission to create users

Client

     <create_permission>
       <name>create_user</name>
       <subject id="9b0cbd98-c011-11e3-a26e-406186ea4fc5">
         <type>role</type>
       </subject>
     </create_permission>

Manager

     <create_permission_response status="201"
                                 status_text="OK, resource created"
                                 id="b98ad69c-c011-11e3-b001-406186ea4fc5"/>

### 7.11 Command `create_port_list`

In short: Create a port list.

The client uses the create_port_list command to create a new port list.

The get_port_lists_response element overrides the port_range element.

#### 7.11.1 Structure

- Command
  - <name>
    The name of the port list.
  - <comment> ?
    A comment on the port list.
  - <copy> ?
    The UUID of an existing port list.
  - <port_range>
    Comma separated list of port ranges (allowing whitespace).
  - <get_port_lists_response>
    Response to get_port_lists command.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.11.2 RNC

Command

    create_port_list
     = element create_port_list
         {
           create_port_list_name
           & create_port_list_comment?
           & create_port_list_copy?
           & create_port_list_port_range
           & get_port_lists_response
         }

    create_port_list_name
     = element name
         {
           name
         }

    create_port_list_comment
     = element comment
         {
           text
         }

    create_port_list_copy
     = element copy
         {
           uuid
         }

    create_port_list_port_range
     = element port_range
         {
           port_range
         }

Response

    create_port_list_response
     = element create_port_list_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.11.3 Example: Create a port list

Client

     <create_port_list>
       <name>All TCP</name>
       <comment>All possible TCP ports</comment>
       <port_range>T:1-65535</port_range>
     </create_port_list>

Manager

     <create_port_list_response status="201"
                                status_text="OK, resource created"
                                id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.12 Command `create_port_range`

In short: Create a port range.

The client uses the create_port_range command to create a new port range.

#### 7.12.1 Structure

- Command
  - <comment> ?
    A comment on the port range.
  - <port_list>
    The port list to which to add the range.
    - @id (uuid)
  - <start>
    The first port in the range.
  - <end>
    The last port in the range.
  - <type>
    The type of the ports: TCP, UDP, ....
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.12.2 RNC

Command

    create_port_range
     = element create_port_range
         {
           create_port_range_comment?
           & create_port_range_port_list
           & create_port_range_start
           & create_port_range_end
           & create_port_range_type
         }

    create_port_range_comment
     = element comment
         {
           text
         }

    create_port_range_port_list
     = element port_list
         {
           attribute id { uuid }
         }

    create_port_range_start
     = element start
         {
           port
         }

    create_port_range_end
     = element end
         {
           port
         }

    create_port_range_type
     = element type
         {
           text
         }

Response

    create_port_range_response
     = element create_port_range_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.12.3 Example: Add a port range to a port list

Client

     <create_port_range>
       <port_list id="354cd3ef-bbe1-4d58-859d-21b8d0c046c4"/>
       <start>777</start>
       <end>779</end>
       <type>TCP</type>
     </create_port_range>

Manager

     <create_port_range_response status="201"
                                 status_text="OK, resource created"
                                 id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.13 Command `create_report`

In short: Create a report.

The client uses the create_report command to import a report.

#### 7.13.1 Structure

- Command
  - <report>
    (report)
    A report wrapper, as in the GET_REPORTS response.
  - <task>
    Existing task for report.
    - @id (uuid)
  - <in_assets> ?
    (boolean)
    Whether to create or update assets using the report.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.13.2 RNC

Command

    create_report
     = element create_report
         {
           create_report_report
           & create_report_task
           & create_report_in_assets?
         }

    create_report_report
     = element report    # type report
         {
           text # RNC limitation: base64
           & attribute id { uuid }
           & attribute format_id { uuid }
           & attribute config_id { uuid }
           & attribute extension { text }
           & attribute content_type { text }
           & attribute type { xsd:token { pattern = "scan|assets" } }?
           & report_owner
           & report_name
           & report_comment
           & report_creation_time
           & report_modification_time
           & report_writable
           & report_in_use
           & report_task
           & report_report_format?
           & report_report_config?
           & report_report
         }

    create_report_task
     = element task
         {
           attribute id { uuid }?
         }

    create_report_in_assets
     = element in_assets    # type boolean
         {
         }

Response

    create_report_response
     = element create_report_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.13.3 Example: Create a report in an existing task

Client

     <create_report>
       <report id="f0fdf522-276d-4893-9274-fb8699dc2270"
               format_id="d5da9f67-8551-4e51-807b-b6a873d70e34"
               extension="xml"
               content_type="text/xml">
         <report id="f0fdf522-276d-4893-9274-fb8699dc2270">
           <gmp>
             <version>22.7</version>
           </gmp>
           ...
           <results start="1"
                    max="-1">
             <result id="634f7a2e-8ca1-43b7-b6d7-0d4841449508">
               ...
             </result>
             ...
           </results>
           <scan_end>2010-02-02T19:11:52+00:00</scan_end>
           <errors>
             <count>0</count>
           </errors>
         </report>
       </report>
       <task id="76a4f237-9984-4345-a1f4-71fbcbf0611c"/>
     </create_report>

Manager

     <create_report_response status="201"
                             status_text="OK, resource created"
                             id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.14 Command `create_report_config`

In short: Create a report config.

The client uses the create_report_config command to create a new report config.

#### 7.14.1 Structure

- Command
  - <name>
    A name for the report config.
  - <comment> ?
    A comment on the report config.
  - <copy> ?
    The UUID of an existing report config.
  - <report_format>
    The report format the config applies to. Must be configurable.
    - @id (uuid)
  - <param> *
    A parameter to pass to the report format.
    - <name>
      Name of the parameter.
    - <value>
      Value of the parameter.
      - @use_default (boolean) Whether to use the default instead of the given value.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.14.2 RNC

Command

    create_report_config
     = element create_report_config
         {
           create_report_config_name
           & create_report_config_comment?
           & create_report_config_copy?
           & create_report_config_report_format
           & create_report_config_param*
         }

    create_report_config_name
     = element name
         {
           name
         }

    create_report_config_comment
     = element comment
         {
           text
         }

    create_report_config_copy
     = element copy
         {
           uuid
         }

    create_report_config_report_format
     = element report_format
         {
           attribute id { uuid }
         }

    create_report_config_param
     = element param
         {
           create_report_config_param_name
           & create_report_config_param_value
         }

    create_report_config_param_name
     = element name
         {
           text
         }

    create_report_config_param_value
     = element value
         {
           text
           & attribute use_default { boolean }?
         }

Response

    create_report_config_response
     = element create_report_config_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.14.3 Example: Create a report config

Client

     <create_report_config>
       <name>Test config</name>
       <report_format id="9e5e5deb-879e-4ecc-8be6-a71cd0875cdd"/>
       <param>
         <name>Node Distance</name>
         <value>10</value>
       </param>
       <comment>Test comment</comment>
     </create_report_config>

Manager

     <create_report_config_response status="201"
                                    status_text="OK, resource created"
                                    id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.15 Command `create_report_format`

In short: Create a report format.

The client uses the create_report_format command to create a new report format.

Element "name" only applies when "copy" is given.

#### 7.15.1 Structure

- Command
  - <name> ?
    A name for the report format.
  - One of
    - <copy>
      The UUID of an existing report format.
    - <get_report_formats_response>
      Response to get_report_formats command.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.15.2 RNC

Command

    create_report_format
     = element create_report_format
         {
           create_report_format_name?
           & ( create_report_format_copy
               | get_report_formats_response )
         }

    create_report_format_name
     = element name
         {
           name
         }

    create_report_format_copy
     = element copy
         {
           uuid
         }

Response

    create_report_format_response
     = element create_report_format_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.15.3 Example: Create a report format

Client

     <create_report_format>
       <get_report_formats_response>
         <report_format id="a0704abb-2120-489f-959f-251c9f4ffebd">
           <name>CPE</name>
           <extension>csv</extension>
           <content_type>text/csv</content_type>
           <summary>Common Platform Enumeration CSV table.</summary>
           <description>
             CPE stands for Common Platform Enumeration. It is a
             ...
           </description>
           <trust>
             yes
             <time>Thu Dec 2 13:22:26 2010</time>
           </trust>
           <active>1</active>
         </report_format>
       </get_report_formats_response>
     </create_report_format>

Manager

     <create_report_format_response status="201"
                                    status_text="OK, resource created"
                                    id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.16 Command `create_role`

In short: Create a role.

The client uses the create_role command to create a new role.

#### 7.16.1 Structure

- Command
  - <name>
    A name for the role.
  - <comment> ?
    A comment on the role.
  - <copy> ?
    The UUID of an existing role.
  - <users> ?
    Comma separated list of user names.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.16.2 RNC

Command

    create_role
     = element create_role
         {
           create_role_name
           & create_role_comment?
           & create_role_copy?
           & create_role_users?
         }

    create_role_name
     = element name
         {
           name
         }

    create_role_comment
     = element comment
         {
           text
         }

    create_role_copy
     = element copy
         {
           uuid
         }

    create_role_users
     = element users
         {
           text
         }

Response

    create_role_response
     = element create_role_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.16.3 Example: Create a role

Client

     <create_role>
       <name>SCAP Observer</name>
       <users>sarah, bob</users>
     </create_role>

Manager

     <create_role_response status="201"
                           status_text="OK, resource created"
                           id="b64c81b2-b9de-11e3-a2e9-406186ea4fc5"/>

### 7.17 Command `create_scanner`

In short: Create a scanner.

The client uses the create_scanner command to create a new scanner.

#### 7.17.1 Structure

- Command
  - <name>
    A name for the scanner.
  - <comment> ?
    A comment on the scanner.
  - <copy> ?
    The UUID of an existing scanner.
  - <host>
    The host of the scanner.
  - <port>
    The port of the scanner.
  - <type>
    The type of the scanner.
    More Details
    Type value of '1' for OSP, '2' for OpenVAS (classic) Scanner.
  - <ca_pub>
    Certificate of CA to verify scanner certificate.
  - <credential>
    Client certificate credential for the Scanner.
    - @id (uuid) UUID of the credential.
  - <relay_host> ?
    Optional relay host of the scanner.
  - <relay_port> ?
    Optional relay port of the scanner.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.17.2 RNC

Command

    create_scanner
     = element create_scanner
         {
           create_scanner_name
           & create_scanner_comment?
           & create_scanner_copy?
           & create_scanner_host
           & create_scanner_port
           & create_scanner_type
           & create_scanner_ca_pub
           & create_scanner_credential
           & create_scanner_relay_host?
           & create_scanner_relay_port?
         }

    create_scanner_name
     = element name
         {
           name
         }

    create_scanner_comment
     = element comment
         {
           text
         }

    create_scanner_copy
     = element copy
         {
           uuid
         }

    create_scanner_host
     = element host
         {
           text
         }

    create_scanner_port
     = element port
         {
           text
         }

    create_scanner_type
     = element type
         {
           text
         }

    create_scanner_ca_pub
     = element ca_pub
         {
           text
         }

    create_scanner_credential
     = element credential
         {
           attribute id { uuid }
         }

    create_scanner_relay_host
     = element relay_host
         {
           text
         }

    create_scanner_relay_port
     = element relay_port
         {
           text
         }

Response

    create_scanner_response
     = element create_scanner_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.17.3 Example: Create a scanner

Client

     <create_scanner>
       <name>Default Scanner</name>
       <host>localhost</host>
       <port>9391</port>
       <type>2</type>
       <ca_pub>...</ca_pub>
       <credential id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>
     </create_scanner>

Manager

     <create_scanner_response status="201"
                              status_text="OK, resource created"
                              id="814cd30f-dee1-4d58-851d-21b8d0c048e3"/>

### 7.18 Command `create_schedule`

In short: Create a schedule.

The client uses the create_schedule command to create a new schedule.

#### 7.18.1 Structure

- Command
  - <name>
    A name for the schedule.
  - <comment> ?
    A comment on the schedule.
  - <copy> ?
    The UUID of an existing schedule.
  - <icalendar> ?
    iCalendar text containing the time data. Replaces first_time, duration and period.
  - <timezone> ?
    The timezone the schedule will follow.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.18.2 RNC

Command

    create_schedule
     = element create_schedule
         {
           create_schedule_name
           & create_schedule_comment?
           & create_schedule_copy?
           & create_schedule_icalendar?
           & create_schedule_timezone?
         }

    create_schedule_name
     = element name
         {
           name
         }

    create_schedule_comment
     = element comment
         {
           text
         }

    create_schedule_copy
     = element copy
         {
           uuid
         }

    create_schedule_icalendar
     = element icalendar
         {
           text
         }

    create_schedule_timezone
     = element timezone
         {
           timezone
         }

Response

    create_schedule_response
     = element create_schedule_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.18.3 Example: Create a schedule

Client

     <create_schedule>
       <name>On the third Wednesday of every month</name>
       <timezone>America/New_York</timezone>
       <icalendar>
    BEGIN:VCALENDAR
    VERSION:2.0
    PRODID:-//XXX//NONSGML//EN
    BEGIN:VEVENT
    DTSTART;TZID="America/New_York":20221214T000100
    RRULE:FREQ=MONTHLY;BYDAY=3WE;
    END:VEVENT
    END:VCALENDAR
       </icalendar>
     </create_schedule>

Manager

     <create_schedule_response status="201"
                               status_text="OK, resource created"
                               id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.19 Command `create_tag`

In short: Create a tag.

The client uses the create_tag command to create a new tag. A name and the resource type must be provided. If a resource ID is also given, it must refer to an existing resource.

#### 7.19.1 Structure

- Command
  - <name>
    A full tag name consisting of namespace and predicate.
  - <resources>
    Identifies the resources the tag is to be attached to.
    - @filter (text) Filter term to select resources the tag is to be attached to.
    - <resource> *
      - @id (uuid) ID of a resource the tag is to be attached to.
    - <type>
      GMP type of the resources the tag is to be attached to.
  - <copy> ?
    UUID of an existing tag to copy.
  - <value> ?
    Value associated with the tag.
  - <comment> ?
    Comment to add to the tag.
  - <active> ?
    Whether the tag is active.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.19.2 RNC

Command

    create_tag
     = element create_tag
         {
           create_tag_name
           & create_tag_resources
           & create_tag_copy?
           & create_tag_value?
           & create_tag_comment?
           & create_tag_active?
         }

    create_tag_name
     = element name
         {
           text
         }

    create_tag_resources
     = element resources
         {
           attribute filter { text }?
           & create_tag_resources_resource*
           & create_tag_resources_type
         }

    create_tag_resources_resource
     = element resource
         {
           attribute id { uuid }?
         }

    create_tag_resources_type
     = element type
         {
           text
         }

    create_tag_copy
     = element copy
         {
           uuid
         }

    create_tag_value
     = element value
         {
           text
         }

    create_tag_comment
     = element comment
         {
           text
         }

    create_tag_active
     = element active
         {
           boolean
         }

Response

    create_tag_response
     = element create_tag_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.19.3 Example: Create a tag attached to a target

Client

     <create_tag>
       <name>geo:long</name>
       <resource id="b493b7a8-7489-11df-a3ec-002264764cea">
         <type>target</type>
       </resource>
       <value>52.2788</value>
     </create_tag>

Manager

     <create_tag_response status="201"
                          status_text="OK, resource created"
                          id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.20 Command `create_target`

In short: Create a target.

The client uses the create_target command to create a new target.

If the list of hosts is empty, the command must also include a target locator.

If the SSH elevate credential is set, the SSH credential must also be set. The SSH elevate credential and the SSH credential must differ.

#### 7.20.1 Structure

- Command
  - <name>
    A name for the target.
  - <comment> ?
    A comment on the target.
  - <copy> ?
    The UUID of an existing target.
  - One of
    - <asset_hosts>
      Hosts from which to create the target.
      - @filter (text) Filter term that defines the list of hosts.
    - <hosts>
      A comma-separated list of hosts, which may be empty.
  - <exclude_hosts> ?
    A list of hosts to exclude.
  - <ssh_credential> ?
    SSH login credentials for target.
    - @id (uuid)
    - <port> ?
      The port the LSCs will use.
  - <ssh_elevate_credential> ?
    SSH elevate credentials for target.
    - @id (uuid)
  - One of?
    - <krb5_credential>
      Kerberos 5 login credentials for target.
      - @id (uuid)
    - <smb_credential>
      SMB login credentials for target.
      - @id (uuid)
  - <esxi_credential> ?
    ESXi credential to use on target.
    - @id (uuid)
  - <snmp_credential> ?
    SNMP credentials to use on target.
    - @id (uuid)
  - <ssh_lsc_credential> ?
    Deprecated: use ssh_credential. SSH credential.
    - @id (uuid)
    - <port> ?
      The port the LSCs will use.
  - <smb_lsc_credential> ?
    Deprecated: use ssh_credential. SMB credential.
    - @id (uuid)
  - <esxi_lsc_credential> ?
    Deprecated: use esxi_credential. ESXi credential.
    - @id (uuid)
  - <alive_tests> ?
    Which alive tests to use.
    - <alive_test> *
      A single alive test to use. "Scan Config Default" and "Consider Alive" can only be used alone.
    More Details
    Instead of the sub-elements a string representation of the old predefined alive test selections can be used, but this is deprecated.
  - <allow_simultaneous_ips> ?
    Whether to scan multiple IPs of the same host simultaneously.
  - <reverse_lookup_only> ?
    Whether to scan only hosts that have names.
  - <reverse_lookup_unify> ?
    Whether to scan only one IP when multiple IPs have the same name.
  - One of
    - <port_range>
      Comma separated list of port ranges for the target (allowing whitespace).
    - <port_list>
      Port list for the target.
      - @id (uuid)
      More Details
      Overrides port_range.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.20.2 RNC

Command

    create_target
     = element create_target
         {
           create_target_name
           & create_target_comment?
           & create_target_copy?
           & ( create_target_asset_hosts
               | create_target_hosts )
           & create_target_exclude_hosts?
           & create_target_ssh_credential?
           & create_target_ssh_elevate_credential?
           & ( create_target_krb5_credential
               | create_target_smb_credential )?
           & create_target_esxi_credential?
           & create_target_snmp_credential?
           & create_target_ssh_lsc_credential?
           & create_target_smb_lsc_credential?
           & create_target_esxi_lsc_credential?
           & create_target_alive_tests?
           & create_target_allow_simultaneous_ips?
           & create_target_reverse_lookup_only?
           & create_target_reverse_lookup_unify?
           & ( create_target_port_range
               | create_target_port_list )
         }

    create_target_name
     = element name
         {
           name
         }

    create_target_comment
     = element comment
         {
           text
         }

    create_target_copy
     = element copy
         {
           uuid
         }

    create_target_asset_hosts
     = element asset_hosts
         {
           attribute filter { text }
         }

    create_target_hosts
     = element hosts
         {
           text
         }

    create_target_exclude_hosts
     = element exclude_hosts
         {
           text
         }

    create_target_ssh_credential
     = element ssh_credential
         {
           attribute id { uuid }
           & create_target_ssh_credential_port?
         }

    create_target_ssh_credential_port
     = element port
         {
           text
         }

    create_target_ssh_elevate_credential
     = element ssh_elevate_credential
         {
           attribute id { uuid }
         }

    create_target_krb5_credential
     = element krb5_credential
         {
           attribute id { uuid }
         }

    create_target_smb_credential
     = element smb_credential
         {
           attribute id { uuid }
         }

    create_target_esxi_credential
     = element esxi_credential
         {
           attribute id { uuid }
         }

    create_target_snmp_credential
     = element snmp_credential
         {
           attribute id { uuid }
         }

    create_target_ssh_lsc_credential
     = element ssh_lsc_credential
         {
           attribute id { uuid }
           & create_target_ssh_lsc_credential_port?
         }

    create_target_ssh_lsc_credential_port
     = element port
         {
           text
         }

    create_target_smb_lsc_credential
     = element smb_lsc_credential
         {
           attribute id { uuid }
         }

    create_target_esxi_lsc_credential
     = element esxi_lsc_credential
         {
           attribute id { uuid }
         }

    create_target_alive_tests
     = element alive_tests
         {
           create_target_alive_tests_alive_test*
         }

    create_target_alive_tests_alive_test
     = element alive_test
         {
           alive_test
         }

    create_target_allow_simultaneous_ips
     = element allow_simultaneous_ips
         {
           boolean
         }

    create_target_reverse_lookup_only
     = element reverse_lookup_only
         {
           boolean
         }

    create_target_reverse_lookup_unify
     = element reverse_lookup_unify
         {
           boolean
         }

    create_target_port_range
     = element port_range
         {
           port_range
         }

    create_target_port_list
     = element port_list
         {
           attribute id { uuid }
         }

Response

    create_target_response
     = element create_target_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.20.3 Example: Create a target, giving a host list

Client

     <create_target>
       <name>All GNU/Linux machines</name>
       <hosts>192.168.1.0/24</hosts>
       <port_list id="33d0cd82-57c6-11e1-8ed1-406186ea4fc5"/>
     </create_target>

Manager

     <create_target_response status="201"
                             status_text="OK, resource created"
                             id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.21 Command `create_task`

In short: Create a task.

The client uses the create_task command to create a new task.

When given a target with an id of 0, the command creates an "import" task. This kind of task can not be run, but it is possible to import reports into the task. Importing is done using the create_report command. The report being imported must be in the XML format.

When creating an import task, the elements config, scanner, alert, schedule, schedule_periods, observers and preferences are ignored.

#### 7.21.1 Structure

- Command
  - <name>
    A name for the task.
  - <comment> ?
    A comment on the task.
  - <copy> ?
    The UUID of an existing task.
  - <alterable> ?
    Whether the task is alterable.
  - <usage_type> ?
    Usage type for the task (scan or audit), defaulting to scan.
    One of:
    scan
    audit
  - <config>
    The scan configuration used by the task.
    - @id (uuid)
  - <target>
    The hosts scanned by the task.
    - @id (uuid)
  - <scanner>
    The scanner to use for scanning the target.
    - @id (uuid)
  - <alert> *
    An alert that applies to the task.
    - @id (uuid)
  - <schedule> ?
    When the task will run.
    - @id (uuid)
  - <schedule_periods> ?
    A limit to the number of times the task will be scheduled, or 0 for no limit.
  - <observers> ?
    Users and/or groups allowed to observe this task.
    - <group> *
      - @id (uuid)
    More Details
    The optional text of element observers is a space separated list of users.
  - <preferences> ?
    - <preference> *
      - <scanner_name>
        Compact name of preference, from scanner.
      - <value>
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.21.2 RNC

Command

    create_task
     = element create_task
         {
           create_task_name
           & create_task_comment?
           & create_task_copy?
           & create_task_alterable?
           & create_task_usage_type?
           & create_task_config
           & create_task_target
           & create_task_scanner
           & create_task_alert*
           & create_task_schedule?
           & create_task_schedule_periods?
           & create_task_observers?
           & create_task_preferences?
         }

    create_task_name
     = element name
         {
           name
         }

    create_task_comment
     = element comment
         {
           text
         }

    create_task_copy
     = element copy
         {
           uuid
         }

    create_task_alterable
     = element alterable
         {
           boolean
         }

    create_task_usage_type
     = element usage_type
         {
           xsd:token { pattern = "scan|audit" }
         }

    create_task_config
     = element config
         {
           attribute id { uuid }
         }

    create_task_target
     = element target
         {
           attribute id { uuid }
         }

    create_task_scanner
     = element scanner
         {
           attribute id { uuid }
         }

    create_task_alert
     = element alert
         {
           attribute id { uuid }
         }

    create_task_schedule
     = element schedule
         {
           attribute id { uuid }
         }

    create_task_schedule_periods
     = element schedule_periods
         {
           integer
         }

    create_task_observers
     = element observers
         {
           text # RNC limitation: user_list
           & create_task_observers_group*
         }

    create_task_observers_group
     = element group
         {
           attribute id { uuid }
         }

    create_task_preferences
     = element preferences
         {
           create_task_preferences_preference*
         }

    create_task_preferences_preference
     = element preference
         {
           create_task_preferences_preference_scanner_name
           & create_task_preferences_preference_value
         }

    create_task_preferences_preference_scanner_name
     = element scanner_name
         {
           text
         }

    create_task_preferences_preference_value
     = element value
         {
           text
         }

Response

    create_task_response
     = element create_task_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.21.3 Example: Create a task, giving a host list

Client

     <create_task>
       <name>Scan Webserver</name>
       <comment>Hourly scan of the webserver</comment>
       <config id="daba56c8-73ec-11df-a475-002264764cea"/>
       <target id="b493b7a8-7489-11df-a3ec-002264764cea"/>
       <scanner id="15348381-3180-213f-4eec-123591912388"/>
     </create_task>

Manager

     <create_task_response status="201"
                           status_text="OK, resource created"
                           id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

#### 7.21.3 Example: Create an import task, for importing reports

Client

     <create_task>
       <name>Import Example</name>
       <comment>This task provides for importing reports</comment>
       <target id="0"/>
     </create_task>

Manager

     <create_task_response status="201"
                           status_text="OK, resource created"
                           id="b7f0afbe-bdb3-11e9-9847-28d24461215b"/>

### 7.22 Command `create_ticket`

In short: Create a ticket.

The client uses the create_ticket command to create a new ticket.

#### 7.22.1 Structure

- Command
  - <comment> ?
    A comment on the ticket.
  - <copy> ?
    The UUID of an existing ticket.
  - <result>
    The result the ticket applies to.
    - @id (uuid)
  - <assigned_to>
    - <user>
      The user the ticket is assigned to.
      - @id (uuid)
  - <open_note>
    A note about opening the ticket.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.22.2 RNC

Command

    create_ticket
     = element create_ticket
         {
           create_ticket_comment?
           & create_ticket_copy?
           & create_ticket_result
           & create_ticket_assigned_to
           & create_ticket_open_note
         }

    create_ticket_comment
     = element comment
         {
           text
         }

    create_ticket_copy
     = element copy
         {
           uuid
         }

    create_ticket_result
     = element result
         {
           attribute id { uuid }
         }

    create_ticket_assigned_to
     = element assigned_to
         {
           create_ticket_assigned_to_user
         }

    create_ticket_assigned_to_user
     = element user
         {
           attribute id { uuid }
         }

    create_ticket_open_note
     = element open_note
         {
           text
         }

Response

    create_ticket_response
     = element create_ticket_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.22.3 Example: Create a ticket

Client

     <create_ticket>
       <result id="138c1216-4acb-4ded-bef3-7fab80eac8c7"/>
       <assigned_to>
         <user id="33e92d3e-a379-4c46-a4cf-88c8201ab710"/>
       </assigned_to>
       <open_note>Please fix today.</open_note>
     </create_ticket>

Manager

     <create_ticket_response status="201"
                             status_text="OK, resource created"
                             id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"/>

### 7.23 Command `create_tls_certificate`

In short: Create a TLS certificate.

The client uses the create_tls_certificate command to create a new TLS certificate.

TLS certificates owned by the current user must have unique fingerprints, so copying will only work with fingerprints owned by another user.

#### 7.23.1 Structure

- Command
  - <comment> ?
    A comment on the TLS certificate.
  - <copy> ?
    The UUID of an existing TLS certificate.
  - <name> ?
    The name of the certificate, defaulting to the MD5 fingerprint.
  - <trust> ?
    Whether the certificate is trusted.
  - <certificate>
    The Base64 encoded certificate data (x.509 DER or PEM).
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.23.2 RNC

Command

    create_tls_certificate
     = element create_tls_certificate
         {
           create_tls_certificate_comment?
           & create_tls_certificate_copy?
           & create_tls_certificate_name?
           & create_tls_certificate_trust?
           & create_tls_certificate_certificate
         }

    create_tls_certificate_comment
     = element comment
         {
           text
         }

    create_tls_certificate_copy
     = element copy
         {
           uuid
         }

    create_tls_certificate_name
     = element name
         {
           text
         }

    create_tls_certificate_trust
     = element trust
         {
           boolean
         }

    create_tls_certificate_certificate
     = element certificate
         {
           text
         }

Response

    create_tls_certificate_response
     = element create_tls_certificate_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.23.3 Example: Create a TLS certificate

Client

     <create_tls_certificate>
       <name>Example Certificate</name>
       <certificate>MIIDNjCCAp+gAwIBAgIBATANBgkqhkiG9w0BAQQFADCBqTELM[...]</certificate>
     </create_tls_certificate>

Manager

     <create_tls_certificate_response status="201"
                                      status_text="OK, resource created"
                                      id="8a925978-59d0-494b-a837-40b271569727"/>

### 7.24 Command `create_user`

In short: Create a user.

The client uses the create_user command to create a new user.

#### 7.24.1 Structure

- Command
  - <name>
    The name of the user to be created.
  - <copy> ?
    The UUID of an existing user.
  - <comment> ?
    Comment for the user.
  - <hosts> ?
    User access rules: a comma-separated list of hosts.
    - @allow (boolean) If 1, allow only listed, otherwise forbid listed.
  - <password> ?
    The password for the user.
  - <role> *
    A role of the user.
    - @id (uuid)
  - <groups> ?
    Groups the user will be added to.
    - <group> *
      - @id (uuid)
  - <sources> ?
    Authentication source for this user (if omitted then 'file').
    - <source> ?
      Authentication source.
      One of:
      file
      ldap_connect
      radius_connect
    More Details
    'file' means to store the user in the database.
    The element is called SOURCES for historic reasons. Only one SOURCE is allowed.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.24.2 RNC

Command

    create_user
     = element create_user
         {
           create_user_name
           & create_user_copy?
           & create_user_comment?
           & create_user_hosts?
           & create_user_password?
           & create_user_role*
           & create_user_groups?
           & create_user_sources?
         }

    create_user_name
     = element name
         {
           text
         }

    create_user_copy
     = element copy
         {
           uuid
         }

    create_user_comment
     = element comment
         {
           text
         }

    create_user_hosts
     = element hosts
         {
           text
           & attribute allow { boolean }?
         }

    create_user_password
     = element password
         {
           text
         }

    create_user_role
     = element role
         {
           attribute id { uuid }
         }

    create_user_groups
     = element groups
         {
           create_user_groups_group*
         }

    create_user_groups_group
     = element group
         {
           attribute id { uuid }
         }

    create_user_sources
     = element sources
         {
           create_user_sources_source?
         }

    create_user_sources_source
     = element source
         {
           xsd:token { pattern = "file|ldap_connect|radius_connect" }
         }

Response

    create_user_response
     = element create_user_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.24.3 Example: Create a user

Client

     <create_user>
       <name>foobar</name>
       <password>f00bar</password>
       <role id="8d453140-b74d-11e2-b0be-406186ea4fc5"/>
     </create_user>

Manager

     <create_user_response status="201"
                           status_text="OK, resource created"/>

### 7.25 Command `delete_alert`

In short: Delete an alert.

The client uses the delete_alert command to delete an existing alert.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.25.1 Structure

- Command
  - @alert_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.25.2 RNC

Command

    delete_alert
     = element delete_alert
         {
           attribute alert_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_alert_response
     = element delete_alert_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.25.3 Example: Delete an alert

Client

     <delete_alert alert_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_alert_response status="200"
                            status_text="OK"/>

### 7.26 Command `delete_asset`

In short: Delete an asset.

The client uses the delete_asset command to delete an existing asset.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.26.1 Structure

- Command
  - One of
    - @asset_id (uuid) Single asset to delete.
      More Details
      Overrides report_id.
    - @report_id (uuid) Report from which to get all assets to delete.
- Response
  - @status (status)
  - @status_text (text)

#### 7.26.2 RNC

Command

    delete_asset
     = element delete_asset
         {
           ( attribute asset_id { uuid }
               | attribute report_id { uuid } )
         }

Response

    delete_asset_response
     = element delete_asset_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.26.3 Example: Delete an asset

Client

     <delete_asset asset_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_asset_response status="200"
                            status_text="OK"/>

### 7.27 Command `delete_config`

In short: Delete a config.

The client uses the delete_config command to delete an existing config.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.27.1 Structure

- Command
  - @config_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.27.2 RNC

Command

    delete_config
     = element delete_config
         {
           attribute config_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_config_response
     = element delete_config_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.27.3 Example: Delete a config

Client

     <delete_config config_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_config_response status="200"
                             status_text="OK"/>

### 7.28 Command `delete_credential`

In short: Delete a credential.

The client uses the delete_credential command to delete an existing credential.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.28.1 Structure

- Command
  - @credential_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.28.2 RNC

Command

    delete_credential
     = element delete_credential
         {
           attribute credential_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_credential_response
     = element delete_credential_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.28.3 Example: Delete a credential

Client

     <delete_credential credential_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_credential_response status="200"
                                 status_text="OK"/>

### 7.29 Command `delete_filter`

In short: Delete a filter.

The client uses the delete_filter command to delete an existing filter.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.29.1 Structure

- Command
  - @filter_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.29.2 RNC

Command

    delete_filter
     = element delete_filter
         {
           attribute filter_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_filter_response
     = element delete_filter_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.29.3 Example: Delete a filter

Client

     <delete_filter filter_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_filter_response status="200"
                             status_text="OK"/>

### 7.30 Command `delete_group`

In short: Delete a group.

The client uses the delete_group command to delete an existing group.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.30.1 Structure

- Command
  - @group_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.30.2 RNC

Command

    delete_group
     = element delete_group
         {
           attribute group_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_group_response
     = element delete_group_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.30.3 Example: Delete a group

Client

     <delete_group group_id="d94211b6-ba40-11e3-bcb1-406186ea4fc5"/>

Manager

     <delete_group_response status="200"
                            status_text="OK"/>

### 7.31 Command `delete_note`

In short: Delete a note.

The client uses the delete_note command to delete an existing note.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.31.1 Structure

- Command
  - @note_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.31.2 RNC

Command

    delete_note
     = element delete_note
         {
           attribute note_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_note_response
     = element delete_note_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.31.3 Example: Delete a note

Client

     <delete_note note_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_note_response status="200"
                           status_text="OK"/>

### 7.32 Command `delete_override`

In short: Delete an override.

The client uses the delete_override command to delete an existing override.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.32.1 Structure

- Command
  - @override_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.32.2 RNC

Command

    delete_override
     = element delete_override
         {
           attribute override_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_override_response
     = element delete_override_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.32.3 Example: Delete an override

Client

     <delete_override override_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_override_response status="200"
                               status_text="OK"/>

### 7.33 Command `delete_permission`

In short: Delete a permission.

The client uses the delete_permission command to delete an existing permission.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.33.1 Structure

- Command
  - @permission_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.33.2 RNC

Command

    delete_permission
     = element delete_permission
         {
           attribute permission_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_permission_response
     = element delete_permission_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.33.3 Example: Delete a permission

Client

     <delete_permission permission_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_permission_response status="200"
                                 status_text="OK"/>

### 7.34 Command `delete_port_list`

In short: Delete a port list.

The client uses the delete_port_list command to delete an existing port list.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.34.1 Structure

- Command
  - @port_list_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.34.2 RNC

Command

    delete_port_list
     = element delete_port_list
         {
           attribute port_list_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_port_list_response
     = element delete_port_list_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.34.3 Example: Delete a port list

Client

     <delete_port_list port_list_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_port_list_response status="200"
                                status_text="OK"/>

### 7.35 Command `delete_port_range`

In short: Delete a port range.

The client uses the delete_port_range command to delete an existing port range.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.35.1 Structure

- Command
  - @port_range_id (uuid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.35.2 RNC

Command

    delete_port_range
     = element delete_port_range
         {
           attribute port_range_id { uuid }
         }

Response

    delete_port_range_response
     = element delete_port_range_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.35.3 Example: Delete a port range

Client

     <delete_port_range port_range_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_port_range_response status="200"
                                 status_text="OK"/>

### 7.36 Command `delete_report`

In short: Delete a report.

The client uses the delete_report command to delete an existing report.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.36.1 Structure

- Command
  - @report_id (uuid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.36.2 RNC

Command

    delete_report
     = element delete_report
         {
           attribute report_id { uuid }
         }

Response

    delete_report_response
     = element delete_report_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.36.3 Example: Delete a report

Client

     <delete_report report_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_report_response status="200"
                             status_text="OK"/>

### 7.37 Command `delete_report_config`

In short: Delete a report config.

The client uses the delete_report_config command to delete an existing report config.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.37.1 Structure

- Command
  - @report_config_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.37.2 RNC

Command

    delete_report_config
     = element delete_report_config
         {
           attribute report_config_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_report_config_response
     = element delete_report_config_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.37.3 Example: Delete a report config

Client

     <delete_report_config report_config_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_report_config_response status="200"
                                    status_text="OK"/>

### 7.38 Command `delete_report_format`

In short: Delete a report format.

The client uses the delete_report_format command to delete an existing report format.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.38.1 Structure

- Command
  - @report_format_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.38.2 RNC

Command

    delete_report_format
     = element delete_report_format
         {
           attribute report_format_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_report_format_response
     = element delete_report_format_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.38.3 Example: Delete a report format

Client

     <delete_report_format report_format_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_report_format_response status="200"
                                    status_text="OK"/>

### 7.39 Command `delete_role`

In short: Delete a role.

The client uses the delete_role command to delete an existing role.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.39.1 Structure

- Command
  - @role_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.39.2 RNC

Command

    delete_role
     = element delete_role
         {
           attribute role_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_role_response
     = element delete_role_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.39.3 Example: Delete a role

Client

     <delete_role role_id="b64c81b2-b9de-11e3-a2e9-406186ea4fc5"/>

Manager

     <delete_role_response status="200"
                           status_text="OK"/>

### 7.40 Command `delete_scanner`

In short: Delete a scanner.

The client uses the delete_scanner command to delete an existing scanner.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.40.1 Structure

- Command
  - @scanner_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.40.2 RNC

Command

    delete_scanner
     = element delete_scanner
         {
           attribute scanner_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_scanner_response
     = element delete_scanner_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.40.3 Example: Delete a scanner

Client

     <delete_scanner scanner_id="817a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_scanner_response status="200"
                              status_text="OK"/>

### 7.41 Command `delete_schedule`

In short: Delete a schedule.

The client uses the delete_schedule command to delete an existing schedule.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.41.1 Structure

- Command
  - @schedule_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.41.2 RNC

Command

    delete_schedule
     = element delete_schedule
         {
           attribute schedule_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_schedule_response
     = element delete_schedule_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.41.3 Example: Delete a schedule

Client

     <delete_schedule schedule_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_schedule_response status="200"
                               status_text="OK"/>

### 7.42 Command `delete_tag`

In short: Delete a tag.

The client uses the delete_tag command to delete an existing tag.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.42.1 Structure

- Command
  - @tag_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.42.2 RNC

Command

    delete_tag
     = element delete_tag
         {
           attribute tag_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_tag_response
     = element delete_tag_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.42.3 Example: Delete a tag

Client

     <delete_tag target_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_tag_response status="200"
                          status_text="OK"/>

### 7.43 Command `delete_target`

In short: Delete a target.

The client uses the delete_target command to delete an existing target.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.43.1 Structure

- Command
  - @target_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.43.2 RNC

Command

    delete_target
     = element delete_target
         {
           attribute target_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_target_response
     = element delete_target_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.43.3 Example: Delete a target

Client

     <delete_target target_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_target_response status="200"
                             status_text="OK"/>

### 7.44 Command `delete_task`

In short: Delete a task.

The client uses the delete_task command to delete an existing task, including all reports associated with the task.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.44.1 Structure

- Command
  - @task_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.44.2 RNC

Command

    delete_task
     = element delete_task
         {
           attribute task_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_task_response
     = element delete_task_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.44.3 Example: Delete a task

Client

     <delete_task task_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_task_response status="200"
                           status_text="OK"/>

### 7.45 Command `delete_ticket`

In short: Delete a ticket.

The client uses the delete_ticket command to delete an existing ticket.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.45.1 Structure

- Command
  - @ticket_id (uuid)
  - @ultimate (boolean) Whether to remove entirely, or to the trashcan.
- Response
  - @status (status)
  - @status_text (text)

#### 7.45.2 RNC

Command

    delete_ticket
     = element delete_ticket
         {
           attribute ticket_id { uuid }
           & attribute ultimate { boolean }
         }

Response

    delete_ticket_response
     = element delete_ticket_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.45.3 Example: Delete a ticket

Client

     <delete_ticket ticket_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <delete_ticket_response status="200"
                             status_text="OK"/>

### 7.46 Command `delete_user`

In short: Delete a user.

The client uses the delete_user command to delete an existing user.

Since this is a destructive command, the client is advised to ask for confirmation from the user before sending this command to the Manager.

#### 7.46.1 Structure

- Command
  - One of
    - @user_id (uuid) The ID of the user to be deleted. Overrides name.
    - @name (text) The name of the user to be deleted.
  - One of?
    - @inheritor_id (text) The ID of the inheriting user or "self". Overrides inheritor_name.
    - @inheritor_name (text) The name of the inheriting user.
- Response
  - @status (status)
  - @status_text (text)

#### 7.46.2 RNC

Command

    delete_user
     = element delete_user
         {
           ( attribute user_id { uuid }
               | attribute name { text } )
           & ( attribute inheritor_id { text }
               | attribute inheritor_name { text } )?
         }

Response

    delete_user_response
     = element delete_user_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.46.3 Example: Delete a user

Client

     <delete_user name="foobar"/>

Manager

     <delete_user_response status="200"
                           status_text="OK"/>

### 7.47 Command `describe_auth`

In short: Describe authentication methods.

The client uses the "describe_auth" command to get details about the used authentication methods.

The Manager will reply with a list of all used authentication methods if such a list is available.

#### 7.47.1 Structure

- Command
  Empty single element.
- Response
  - @status (status)
  - @status_text (text)
  - <group>
    Config group.
    - @name (text)
    - <auth_conf_setting> *
      - <key>
        Setting name.
      - <value>
        Setting value.
      - <certificate_info> ?
        (certificate_info)
        Info about the certificate.

#### 7.47.2 RNC

Command

    describe_auth
     = element describe_auth
         {
           ""
         }

Response

    describe_auth_response
     = element describe_auth_response
         {
           attribute status { status }
           & attribute status_text { text }
           & describe_auth_response_group
         }

    describe_auth_response_group
     = element group
         {
           attribute name { text }
           & describe_auth_response_group_auth_conf_setting*
         }

    describe_auth_response_group_auth_conf_setting
     = element auth_conf_setting
         {
           describe_auth_response_group_auth_conf_setting_key
           & describe_auth_response_group_auth_conf_setting_value
           & describe_auth_response_group_auth_conf_setting_certificate_info?
         }

    describe_auth_response_group_auth_conf_setting_key
     = element key
         {
           text
         }

    describe_auth_response_group_auth_conf_setting_value
     = element value
         {
           text
         }

    describe_auth_response_group_auth_conf_setting_certificate_info
     = element certificate_info    # type certificate_info
         {
           certificate_info_time_status
           & certificate_info_activation_time
           & certificate_info_expiration_time
           & certificate_info_issuer
           & certificate_info_md5_fingerprint
           & certificate_info_sha256_fingerprint?
           & certificate_info_subject?
           & certificate_info_serial?
         }

#### 7.47.3 Example: Describe the authentication methods

Client

     <describe_auth/>

Manager

     <describe_auth_response status="200"
                             status_text="OK">
       <group name="method:file">
         <auth_conf_setting>
           <key>enable</key>
           <value>true</value>
         </auth_conf_setting>
         <auth_conf_setting>
           <key>order</key>
           <value>1</value>
         </auth_conf_setting>
       </group>
     </describe_auth_response>

### 7.48 Command `empty_trashcan`

In short: Empty the trashcan.

The client uses the empty_trashcan command to empty the trashcan.

#### 7.48.1 Structure

- Command
  Empty single element.
- Response
  - @status (status)
  - @status_text (text)

#### 7.48.2 RNC

Command

    empty_trashcan
     = element empty_trashcan
         {
           ""
         }

Response

    empty_trashcan_response
     = element empty_trashcan_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.48.3 Example: Empty the trashcan

Client

     <empty_trashcan/>

Manager

     <empty_trashcan_response status="200"
                              status_text="OK"/>

### 7.49 Command `get_aggregates`

In short: Get aggregates of various resources.

The client uses the get_aggregate command to get aggregated data like counts or averages of various resources.

Unlike other get_... commands, get_aggregates ignores the filter keywords "first" and "rows". It also does not support selecting single items by id or getting items from the trashcan.

#### 7.49.1 Structure

- Command
  - @filter (text) Filter term to use to filter query of the resources to aggregate (see get_... commands of selected type for keywords).
  - @filt_id (uuid) ID of filter to use to filter query of the resources to aggregate.
  - @type (text) The GMP resource type to gather data from.
  - @data_column (text) A single column to get the data to aggregate from.
  - @group_column (text) The field to group the resources by.
  - @subgroup_column (text) The field to further group the resources inside groups by.
  - @sort_field (text) The column to sort the aggregated rows by.
    More Details
    With a subgroup column, groups will be sorted by the group_column first.
  - @sort_order ("ascending" or "descending") The order to sort by.
  - @sort_stat ("min", "max", "mean", "sum", "count" or "value") The statistic to sort the aggregated rows by.
  - @first_group (integer) The index of the first aggregate group to return.
  - @max_groups (integer) The maximum number of aggregate groups to return, -1 for all.
  - @mode ("" or "word_counts") Special mode for aggregation.
  - @usage_type ("audit", "policy", "scan" or "") Optional usage type to limit configs and tasks to.
  - <sort> *
    Optional tuples of sort criteria.
    - @field (text) The column to sort the aggregated rows by.
      More Details
      With a subgroup column, groups will be sorted by the group_column first.
    - @order ("ascending" or "descending") The order to sort by.
    - @stat ("min", "max", "mean", "sum", "count" or "value") The statistic to sort the aggregated rows by.
  - <data_column> *
    (text)
    A column to get the data to aggregate from.
  - <text_column> *
    (text)
    A simple text column which no statistics are calculated for.
- Response
  - @status (status)
  - @status_text (text)
  - <aggregate> *
    A collection of aggregated data of the selected type.
    - <data_type>
      The resource type the data is aggregated from.
    - <data_column> *
      A column the data is aggregated from.
    - <group_column> ?
      The column the data is grouped by.
    - <subgroup_column> ?
      The column to further group the resources by.
    - <text_column> *
      A simple text column.
    - One of
      - <group> *
        Aggregate data for a group of resources.
        - <value>
          Value of the group column.
        - <subgroup> *
          Aggregate data for a subgroup of resources.
          - <value>
            Value of the subgroup column.
          - <count>
            Number of resources in the subgroup.
          - <c_count>
            Cumulative number of resources in the current subgroup.
          - <stats> *
            Statistics of a data column for the current subgroup.
            - @column (text) Name of the column the stats apply to.
            - <min>
              Minimum value of the data column.
            - <max>
              Maximum value of the data column.
            - <mean>
              Arithmetic mean of the numeric values of the data.
            - <sum>
              Sum of the numeric values of the data column.
            - <c_sum>
              Cumulative sum of the data column.
        - <count>
          Number of resources in the group.
        - <c_count>
          Cumulative number of resources in all groups up to and including the current one.
        - <stats> *
          Statistics of a data column.
          - @column (text) Name of the column the stats apply to.
          - <min>
            Minimum value of the data column.
          - <max>
            Maximum value of the data column.
          - <mean>
            Arithmetic mean of the numeric values of the data.
          - <sum>
            Sum of the numeric values of the data column.
          - <c_sum>
            Cumulative sum of the numeric values of the data column for all groups up to and including the current one.
        - <text> *
          The value of a simple text column.
          - @name (text) Name of the text column.
      - <overall>
        Aggregate data for all resources of the selected type.
        - <count>
          Overall number of resources.
        - <c_count>
          Cumulative number of resources.
          More Details
          For overall this is always the same as count.
        - <stats> *
          Statistics of a data column.
          - @column (text) Name of the column the stats apply to.
          - <min>
            Overall minimum value of the data column.
          - <max>
            Overall maximum value of the data column.
          - <mean>
            Overall arithmetic mean of the numeric values of the data.
          - <sum>
            Overall sum of the numeric values of the data column.
          - <c_sum>
            Cumulative sum of the numeric values of the data column.
            More Details
            For overall this is always the same as sum.
        - <text> *
          The value of a simple text column.
          - @name (text) Name of the text column.
    - <subgroups> ?
      Overview of all subgroup values.
      - <value> *
        Value of the subgroup column.
    - <column_info>
      Info on the aggregate columns.
      - <aggregate_column> *
        Info on one column of the aggregate.
        - <name>
          Name of the column as it appears in the group or overall element.
        - <stat>
          The type of statistic in the column, e.g. min, max, mean.
        - <type>
          The resource type.
        - <column>
          Name of the column in the non-aggregated table.
        - <data_type>
          The data type of the column, e.g. integer, text, cvss.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.

#### 7.49.2 RNC

Command

    get_aggregates
     = element get_aggregates
         {
           attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute type { text }
           & attribute data_column { text }?
           & attribute group_column { text }?
           & attribute subgroup_column { text }?
           & attribute sort_field { text }?
           & attribute sort_order { xsd:token { pattern = "ascending|descending" } }?
           & attribute sort_stat { xsd:token { pattern = "min|max|mean|sum|count|value" } }?
           & attribute first_group { integer }?
           & attribute max_groups { integer }?
           & attribute mode { xsd:token { pattern = "|word_counts" } }?
           & attribute usage_type { xsd:token { pattern = "audit|policy|scan|" } }?
           & get_aggregates_sort*
           & get_aggregates_data_column*
           & get_aggregates_text_column*
         }

    get_aggregates_sort
     = element sort
         {
           attribute field { text }?
           & attribute order { xsd:token { pattern = "ascending|descending" } }?
           & attribute stat { xsd:token { pattern = "min|max|mean|sum|count|value" } }?
         }

    get_aggregates_data_column
     = element data_column    # type text
         {
         }

    get_aggregates_text_column
     = element text_column    # type text
         {
         }

Response

    get_aggregates_response
     = element get_aggregates_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_aggregates_response_aggregate*
           & get_aggregates_response_filters
         }

    get_aggregates_response_aggregate
     = element aggregate
         {
           get_aggregates_response_aggregate_data_type
           & get_aggregates_response_aggregate_data_column*
           & get_aggregates_response_aggregate_group_column?
           & get_aggregates_response_aggregate_subgroup_column?
           & get_aggregates_response_aggregate_text_column*
           & ( get_aggregates_response_aggregate_group*
               | get_aggregates_response_aggregate_overall )
           & get_aggregates_response_aggregate_subgroups?
           & get_aggregates_response_aggregate_column_info
         }

    get_aggregates_response_aggregate_data_type
     = element data_type
         {
           text
         }

    get_aggregates_response_aggregate_data_column
     = element data_column
         {
           text
         }

    get_aggregates_response_aggregate_group_column
     = element group_column
         {
           text
         }

    get_aggregates_response_aggregate_subgroup_column
     = element subgroup_column
         {
           text
         }

    get_aggregates_response_aggregate_text_column
     = element text_column
         {
           text
         }

    get_aggregates_response_aggregate_group
     = element group
         {
           get_aggregates_response_aggregate_group_value
           & get_aggregates_response_aggregate_group_subgroup*
           & get_aggregates_response_aggregate_group_count
           & get_aggregates_response_aggregate_group_c_count
           & get_aggregates_response_aggregate_group_stats*
           & get_aggregates_response_aggregate_group_text*
         }

    get_aggregates_response_aggregate_group_value
     = element value
         {
           text
         }

    get_aggregates_response_aggregate_group_subgroup
     = element subgroup
         {
           get_aggregates_response_aggregate_group_subgroup_value
           & get_aggregates_response_aggregate_group_subgroup_count
           & get_aggregates_response_aggregate_group_subgroup_c_count
           & get_aggregates_response_aggregate_group_subgroup_stats*
         }

    get_aggregates_response_aggregate_group_subgroup_value
     = element value
         {
           text
         }

    get_aggregates_response_aggregate_group_subgroup_count
     = element count
         {
           integer
         }

    get_aggregates_response_aggregate_group_subgroup_c_count
     = element c_count
         {
           integer
         }

    get_aggregates_response_aggregate_group_subgroup_stats
     = element stats
         {
           attribute column { text }?
           & get_aggregates_response_aggregate_group_subgroup_stats_min
           & get_aggregates_response_aggregate_group_subgroup_stats_max
           & get_aggregates_response_aggregate_group_subgroup_stats_mean
           & get_aggregates_response_aggregate_group_subgroup_stats_sum
           & get_aggregates_response_aggregate_group_subgroup_stats_c_sum
         }

    get_aggregates_response_aggregate_group_subgroup_stats_min
     = element min
         {
           text
         }

    get_aggregates_response_aggregate_group_subgroup_stats_max
     = element max
         {
           text
         }

    get_aggregates_response_aggregate_group_subgroup_stats_mean
     = element mean
         {
           text
         }

    get_aggregates_response_aggregate_group_subgroup_stats_sum
     = element sum
         {
           text
         }

    get_aggregates_response_aggregate_group_subgroup_stats_c_sum
     = element c_sum
         {
           text
         }

    get_aggregates_response_aggregate_group_count
     = element count
         {
           integer
         }

    get_aggregates_response_aggregate_group_c_count
     = element c_count
         {
           integer
         }

    get_aggregates_response_aggregate_group_text
     = element text
         {
           text
           & attribute name { text }?
         }

    get_aggregates_response_aggregate_group_stats
     = element stats
         {
           attribute column { text }?
           & get_aggregates_response_aggregate_group_stats_min
           & get_aggregates_response_aggregate_group_stats_max
           & get_aggregates_response_aggregate_group_stats_mean
           & get_aggregates_response_aggregate_group_stats_sum
           & get_aggregates_response_aggregate_group_stats_c_sum
         }

    get_aggregates_response_aggregate_group_stats_min
     = element min
         {
           text
         }

    get_aggregates_response_aggregate_group_stats_max
     = element max
         {
           text
         }

    get_aggregates_response_aggregate_group_stats_mean
     = element mean
         {
           text
         }

    get_aggregates_response_aggregate_group_stats_sum
     = element sum
         {
           text
         }

    get_aggregates_response_aggregate_group_stats_c_sum
     = element c_sum
         {
           text
         }

    get_aggregates_response_aggregate_overall
     = element overall
         {
           get_aggregates_response_aggregate_overall_count
           & get_aggregates_response_aggregate_overall_c_count
           & get_aggregates_response_aggregate_overall_stats*
           & get_aggregates_response_aggregate_overall_text*
         }

    get_aggregates_response_aggregate_overall_count
     = element count
         {
           integer
         }

    get_aggregates_response_aggregate_overall_c_count
     = element c_count
         {
           integer
         }

    get_aggregates_response_aggregate_overall_stats
     = element stats
         {
           attribute column { text }?
           & get_aggregates_response_aggregate_overall_stats_min
           & get_aggregates_response_aggregate_overall_stats_max
           & get_aggregates_response_aggregate_overall_stats_mean
           & get_aggregates_response_aggregate_overall_stats_sum
           & get_aggregates_response_aggregate_overall_stats_c_sum
         }

    get_aggregates_response_aggregate_overall_stats_min
     = element min
         {
           text
         }

    get_aggregates_response_aggregate_overall_stats_max
     = element max
         {
           text
         }

    get_aggregates_response_aggregate_overall_stats_mean
     = element mean
         {
           text
         }

    get_aggregates_response_aggregate_overall_stats_sum
     = element sum
         {
           text
         }

    get_aggregates_response_aggregate_overall_stats_c_sum
     = element c_sum
         {
           text
         }

    get_aggregates_response_aggregate_overall_text
     = element text
         {
           text
           & attribute name { text }?
         }

    get_aggregates_response_aggregate_subgroups
     = element subgroups
         {
           get_aggregates_response_aggregate_subgroups_value*
         }

    get_aggregates_response_aggregate_subgroups_value
     = element value
         {
           text
         }

    get_aggregates_response_aggregate_column_info
     = element column_info
         {
           get_aggregates_response_aggregate_column_info_aggregate_column*
         }

    get_aggregates_response_aggregate_column_info_aggregate_column
     = element aggregate_column
         {
           get_aggregates_response_aggregate_column_info_aggregate_column_name
           & get_aggregates_response_aggregate_column_info_aggregate_column_stat
           & get_aggregates_response_aggregate_column_info_aggregate_column_type
           & get_aggregates_response_aggregate_column_info_aggregate_column_column
           & get_aggregates_response_aggregate_column_info_aggregate_column_data_type
         }

    get_aggregates_response_aggregate_column_info_aggregate_column_name
     = element name
         {
           text
         }

    get_aggregates_response_aggregate_column_info_aggregate_column_stat
     = element stat
         {
           text
         }

    get_aggregates_response_aggregate_column_info_aggregate_column_type
     = element type
         {
           text
         }

    get_aggregates_response_aggregate_column_info_aggregate_column_column
     = element column
         {
           text
         }

    get_aggregates_response_aggregate_column_info_aggregate_column_data_type
     = element data_type
         {
           text
         }

    get_aggregates_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_aggregates_response_filters_term
           & get_aggregates_response_filters_name?
           & get_aggregates_response_filters_keywords
         }

    get_aggregates_response_filters_term
     = element term
         {
           text
         }

    get_aggregates_response_filters_name
     = element name
         {
           text
         }

    get_aggregates_response_filters_keywords
     = element keywords
         {
           get_aggregates_response_filters_keywords_keyword*
         }

    get_aggregates_response_filters_keywords_keyword
     = element keyword
         {
           get_aggregates_response_filters_keywords_keyword_column
           & get_aggregates_response_filters_keywords_keyword_relation
           & get_aggregates_response_filters_keywords_keyword_value
         }

    get_aggregates_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_aggregates_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_aggregates_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

#### 7.49.3 Example: Get severity statistics of NVTs by family

Client

     <get_aggregates type="nvt"
                     group_column="family"
                     data_column="severity"/>

Manager

     <get_aggregates_response status_text="OK"
                              status="200">
       <aggregate>
         <data_type>nvt</data_type>
         <data_column>severity</data_column>
         <group_column>family</group_column>
         <group>
           <value>AIX Local Security Checks</value>
           <count>1</count>
           <c_count>1</c_count>
           <min>3.3</min>
           <max>3.3</max>
           <mean>3.3</mean>
           <sum>3.3</sum>
           <c_sum>3.3</c_sum>
         </group>
         <group>
           <value>Brute force attacks</value>
           <count>8</count>
           <c_count>9</c_count>
           <min>0</min>
           <max>7.8</max>
           <mean>6.275</mean>
           <sum>50.2</sum>
           <c_sum>53.5</c_sum>
         </group>
         <group>
           <value>Buffer overflow</value>
           <count>519</count>
           <c_count>528</c_count>
           <min>10</min>
           <max>9.7</max>
           <mean>8.63083</mean>
           <sum>4479.4</sum>
           <c_sum>4532.9</c_sum>
         </group>
         ...
         <column_info>
           <aggregate_column>
             <name>value</name>
             <stat>value</stat>
             <type>nvt</type>
             <column>family</column>
             <data_type>text</data_type>
           </aggregate_column>
           <aggregate_column>
             <name>count</name>
             <stat>count</stat>
             <type>nvt</type>
             <column/>
             <data_type>integer</data_type>
           </aggregate_column>
           <aggregate_column>
             <name>c_count</name>
             <stat>c_count</stat>
             <type>nvt</type>
             <column/>
             <data_type>integer</data_type>
           </aggregate_column>
           <aggregate_column>
             <name>min</name>
             <stat>min</stat>
             <type>nvt</type>
             <column>severity</column>
             <data_type>cvss</data_type>
           </aggregate_column>
           ...
         </column_info>
       </aggregate>
       <filters id="">
         <term>first=1 rows=-1 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>-1</value>
           </keyword>
           <keyword>
             <column>sort</column>
             <relation>=</relation>
             <value>name</value>
           </keyword>
         </keywords>
       </filters>
     </get_aggregates_response>

### 7.50 Command `get_alerts`

In short: Get one or many alerts.

The client uses the get_alerts command to get alert information. If the command sent by the client was valid, the manager will reply with a list of alerts to the client.

#### 7.50.1 Structure

- Command
  - @alert_id (uuid) ID of single alert to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column event (integer) The event that triggers the alert
    - column condition (integer) The condition for the alert
    - column method (integer) The method of the alert
    - column filter (uuid) UUID of the filter applied to the report
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan alerts instead.
  - @tasks (boolean) Whether to get the tasks using the alerts.
- Response
  - @status (status)
  - @status_text (text)
  - <alert> *
    - @id (uuid)
    - <owner>
      Owner of the alert.
      - <name>
        The name of the owner.
    - <name>
      The name of the alert.
    - <comment>
      The comment on the alert.
    - <creation_time>
      Creation time of the alert.
    - <modification_time>
      Last time the alert was modified.
    - <in_use>
      Whether any tasks are using the alert.
    - <writable>
      Whether the alert is writable or not.
    - <permissions>
      Permissions that the current user has on the alert.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the alert.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <condition>
      The condition that must be satisfied for the alert to occur.
      - <data> *
        Some data that defines the condition.
        - <name>
          The name of the condition data.
    - <event>
      The event that must happen for the alert to occur.
      - <data> *
        Some data that defines the event.
        - <name>
          The name of the event data.
    - <method>
      The method by which the alert must occur.
      - <data> *
        Some data that defines the method.
        - <name>
          The name of the method data.
        - <credential> ?
          Credential information if the data is a credential ID.
          - @id (uuid) UUID of the credential.
          - <name>
            The name of the credential.
          - <login>
            The username of the credential.
        - <certificate_info> ?
          (certificate_info)
          Certificate info if the data is a TLS certificate.
    - <filter>
      - @id (uuid)
      - <name>
        The name of the filter.
      - <permissions> ?
        Permissions the user has on the filter.
      - <trash>
        Whether the filter is in the trashcan.
    - <tasks> ?
      Tasks using the alert.
      - <task> *
        - @id (uuid)
        - <name>
          The name of the task.
        - <permissions> ?
          Permissions the user has on the task.
    - <active>
      Whether the alert is active.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <alerts>
    - @start (integer) First alert.
    - @max (integer) Maximum number of alerts.
  - <alert_count>
    - <filtered>
      Number of alerts after filtering.
    - <page>
      Number of alerts on current page.

#### 7.50.2 RNC

Command

    get_alerts
     = element get_alerts
         {
           attribute alert_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute tasks { boolean }?
         }

Response

    get_alerts_response
     = element get_alerts_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_alerts_response_alert*
           & get_alerts_response_filters
           & get_alerts_response_sort
           & get_alerts_response_alerts
           & get_alerts_response_alert_count
         }

    get_alerts_response_alert
     = element alert
         {
           attribute id { uuid }
           & get_alerts_response_alert_owner
           & get_alerts_response_alert_name
           & get_alerts_response_alert_comment
           & get_alerts_response_alert_creation_time
           & get_alerts_response_alert_modification_time
           & get_alerts_response_alert_in_use
           & get_alerts_response_alert_writable
           & get_alerts_response_alert_permissions
           & get_alerts_response_alert_user_tags?
           & get_alerts_response_alert_condition
           & get_alerts_response_alert_event
           & get_alerts_response_alert_method
           & get_alerts_response_alert_filter
           & get_alerts_response_alert_tasks?
           & get_alerts_response_alert_active
         }

    get_alerts_response_alert_owner
     = element owner
         {
           get_alerts_response_alert_owner_name
         }

    get_alerts_response_alert_owner_name
     = element name
         {
           name
         }

    get_alerts_response_alert_name
     = element name
         {
           name
         }

    get_alerts_response_alert_comment
     = element comment
         {
           text
         }

    get_alerts_response_alert_in_use
     = element in_use
         {
           boolean
         }

    get_alerts_response_alert_writable
     = element writable
         {
           boolean
         }

    get_alerts_response_alert_creation_time
     = element creation_time
         {
           iso_time
         }

    get_alerts_response_alert_modification_time
     = element modification_time
         {
           iso_time
         }

    get_alerts_response_alert_permissions
     = element permissions
         {
           get_alerts_response_alert_permissions_permission*
         }

    get_alerts_response_alert_permissions_permission
     = element permission
         {
           get_alerts_response_alert_permissions_permission_name
         }

    get_alerts_response_alert_permissions_permission_name
     = element name
         {
           name
         }

    get_alerts_response_alert_user_tags
     = element user_tags
         {
           get_alerts_response_alert_user_tags_count
           & get_alerts_response_alert_user_tags_tag*
         }

    get_alerts_response_alert_user_tags_count
     = element count
         {
           integer
         }

    get_alerts_response_alert_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_alerts_response_alert_user_tags_tag_name
           & get_alerts_response_alert_user_tags_tag_value
           & get_alerts_response_alert_user_tags_tag_comment
         }

    get_alerts_response_alert_user_tags_tag_name
     = element name
         {
           text
         }

    get_alerts_response_alert_user_tags_tag_value
     = element value
         {
           text
         }

    get_alerts_response_alert_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_alerts_response_alert_condition
     = element condition
         {
           text
           & get_alerts_response_alert_condition_data*
         }

    get_alerts_response_alert_condition_data
     = element data
         {
           text
           & get_alerts_response_alert_condition_data_name
         }

    get_alerts_response_alert_condition_data_name
     = element name
         {
           text
         }

    get_alerts_response_alert_event
     = element event
         {
           text
           & get_alerts_response_alert_event_data*
         }

    get_alerts_response_alert_event_data
     = element data
         {
           text
           & get_alerts_response_alert_event_data_name
         }

    get_alerts_response_alert_event_data_name
     = element name
         {
           text
         }

    get_alerts_response_alert_method
     = element method
         {
           text
           & get_alerts_response_alert_method_data*
         }

    get_alerts_response_alert_method_data
     = element data
         {
           text
           & get_alerts_response_alert_method_data_name
           & get_alerts_response_alert_method_data_credential?
           & get_alerts_response_alert_method_data_certificate_info?
         }

    get_alerts_response_alert_method_data_name
     = element name
         {
           text
         }

    get_alerts_response_alert_method_data_credential
     = element credential
         {
           attribute id { uuid }?
           & get_alerts_response_alert_method_data_credential_name
           & get_alerts_response_alert_method_data_credential_login
         }

    get_alerts_response_alert_method_data_credential_name
     = element name
         {
           name
         }

    get_alerts_response_alert_method_data_credential_login
     = element login
         {
           name
         }

    get_alerts_response_alert_method_data_certificate_info
     = element certificate_info    # type certificate_info
         {
           certificate_info_time_status
           & certificate_info_activation_time
           & certificate_info_expiration_time
           & certificate_info_issuer
           & certificate_info_md5_fingerprint
           & certificate_info_sha256_fingerprint?
           & certificate_info_subject?
           & certificate_info_serial?
         }

    get_alerts_response_alert_filter
     = element filter
         {
           attribute id { uuid }?
           & get_alerts_response_alert_filter_name
           & get_alerts_response_alert_filter_permissions?
           & get_alerts_response_alert_filter_trash
         }

    get_alerts_response_alert_filter_name
     = element name
         {
           name
         }

    get_alerts_response_alert_filter_permissions
     = element permissions
         {
           ""
         }

    get_alerts_response_alert_filter_trash
     = element trash
         {
           boolean
         }

    get_alerts_response_alert_tasks
     = element tasks
         {
           get_alerts_response_alert_tasks_task*
         }

    get_alerts_response_alert_tasks_task
     = element task
         {
           attribute id { uuid }
           & get_alerts_response_alert_tasks_task_name
           & get_alerts_response_alert_tasks_task_permissions?
         }

    get_alerts_response_alert_tasks_task_name
     = element name
         {
           name
         }

    get_alerts_response_alert_tasks_task_permissions
     = element permissions
         {
           ""
         }

    get_alerts_response_alert_active
     = element active
         {
           boolean
         }

    get_alerts_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_alerts_response_filters_term
           & get_alerts_response_filters_name?
           & get_alerts_response_filters_keywords
         }

    get_alerts_response_filters_term
     = element term
         {
           text
         }

    get_alerts_response_filters_name
     = element name
         {
           text
         }

    get_alerts_response_filters_keywords
     = element keywords
         {
           get_alerts_response_filters_keywords_keyword*
         }

    get_alerts_response_filters_keywords_keyword
     = element keyword
         {
           get_alerts_response_filters_keywords_keyword_column
           & get_alerts_response_filters_keywords_keyword_relation
           & get_alerts_response_filters_keywords_keyword_value
         }

    get_alerts_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_alerts_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_alerts_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_alerts_response_sort
     = element sort
         {
           text
           & get_alerts_response_sort_field
         }

    get_alerts_response_sort_field
     = element field
         {
           get_alerts_response_sort_field_order
         }

    get_alerts_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_alerts_response_alerts
     = element alerts
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_alerts_response_alert_count
     = element alert_count
         {
           get_alerts_response_alert_count_filtered
           & get_alerts_response_alert_count_page
         }

    get_alerts_response_alert_count_filtered
     = element filtered
         {
           integer
         }

    get_alerts_response_alert_count_page
     = element page
         {
           integer
         }

#### 7.50.3 Example: Get the alerts

Client

     <get_alerts/>

Manager

     <get_alerts_response status="200"
                          status_text="OK">
       <alert id="6181e65d-8ba0-4937-9c44-8f2b10b0def7">
         <name>Team alert</name>
         <comment/>
         <creation_time>2012-04-27T12:44:00+01:00</creation_time>
         <modification_time>2012-08-28T12:14:00+01:00</modification_time>
         <writable>1</writable>
         <in_use>1</in_use>
         <condition>
           Threat level at least
           <data>
             High
             <name>level</name>
           </data>
         </condition>
         <event>
           Task run status changed
           <data>
             Done
             <name>status</name>
           </data>
         </event>
         <method>
           Email
           <data>
             team@example.org
             <name>to_address</name>
           </data>
           <data>
             admin@example.org
             <name>from_address</name>
           </data>
           <data>
             0
             <name>notice</name>
           </data>
         </method>
       </alert>
       ...
     </get_alerts_response>

### 7.51 Command `get_assets`

In short: Get one or many assets.

The client uses the get_assets command to get asset information.

#### 7.51.1 Structure

- Command
  - @asset_id (uuid) ID of single asset to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    Keywords if type is "host"
    - option os_id (UUID) UUID of an OS asset that was detected on the hosts but does not have to be the best match
    - column best_os_cpe (text) CPE-ID of best matching OS
    - column severity (severity) Highest severity of the asset from latest report
    - column severity_level (threat) Highest severity level of the asset from latest report, e.g. "High" or "Low"
    - column os (text) Best matching OS, either name or CPE-ID
    - column oss (text) Comma-separated list of all OSs of the host
    - column hostname (text) Hostname
    - column ip (text) IP address
    - column updated (iso_time) Time of last update (alias of modified)
    Keywords if type is "os"
    - column all_hosts (integer) Number of all hosts using the asset, even if the OS is not the best match
    - column title (text) CPE title of the asset
    - column hosts (integer) Number of hosts using the asset as best OS match
    - column latest_severity (severity) Latest severity of the asset
    - column highest_severity (severity) Latest severity of the asset
    - column average_severity (severity) Average severity of the asset
    - column severity (severity) Average severity of the asset (alias of average_severity)
    - column average_severity_score (decimal) Average severity times the number of hosts the asset was found on
  - @filt_id (uuid) ID of filter to use to filter query.
  - @ignore_pagination (boolean) Whether to ignore info used to split the report into pages like the filter terms "first" and "rows".
  - @type ("host" or "os") Type of assets to get.
  - @details (boolean) Whether to include additional information (e.g. tags).
- Response
  - @status (status)
  - @status_text (text)
  - <asset> *
    - @id (uuid)
    - <owner>
      Owner of the asset.
      - <name>
        The name of the owner.
    - <name>
      The name of the asset.
    - <comment>
      The comment on the asset.
    - <creation_time>
      Date and time the asset was created.
    - <modification_time>
      Date and time the asset was last modified.
    - <writable>
      Whether the asset is writable.
    - <in_use>
      Whether the asset is in use.
    - <permissions>
      Permissions that the current user has on the asset.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the asset.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <identifiers> ?
      Host identifiers.
      - <identifier>
        A single identifier.
        - <name>
          The name of the identifier.
        - <value>
          The value of the identifier.
        - <creation_time>
          Date and time the identifier was created.
        - <modification_time>
          Date and time the identifier was last modified.
        - <source>
          The source of the identifier.
          - @id (uuid)
          - <type>
            Type of source.
          - <data>
            Extra data, depends on type of source.
          - <deleted>
            Whether the source has been deleted.
          - <name>
            User name when source type is User, else empty.
        - <os> ?
          - @id (uuid)
          - <title>
            Title of OS.
    - <type>
      Either "host" or "os".
    - One of
      - <host>
        A host.
        - <severity>
          Severity of the host.
          - <value>
        - <detail> *
          A host detail.
          - <name>
            The name of the detail.
          - <value>
            The value of the detail.
          - <source>
            The source of the detail.
            - @id (uuid)
            - <type>
              Type of source.
        - <routes> ?
          List of routes to the host, with most recent ones first.
          - <route> *
            List of hosts on the route to the host.
            - <host> *
              A host on the route.
              - @id (uuid) UUID if the host is in the asset management.
              - @distance (number) Distance from the scanner.
              - @same_source (boolean) Whether the current host asset has the same source as the target host.
              - <ip>
                IP address of the host.
      - <os>
        An OS.
        - <title>
          Title of the OS.
        - <installs>
          Number of hosts on which OS has been detected as the best match.
        - <all_installs>
          Number of hosts on which OS has been detected, not necessarily as the best match.
        - <latest_severity>
          Latest severity.
          - <value>
        - <highest_severity>
          Highest severity.
          - <value>
        - <average_severity>
          Average severity.
          - <value>
        - <hosts>
          Hosts on which this OS has been detected as the best match.
          - <asset> *
            The host.
            - @id (uuid)
            - <name>
              The name of the host.
            - <severity>
              Severity of the host.
              - <value>
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <assets>
    - @start (integer) First asset.
    - @max (integer) Maximum number of assets.
  - <asset_count>
    - <filtered>
      Number of assets after filtering.
    - <page>
      Number of assets on current page.

#### 7.51.2 RNC

Command

    get_assets
     = element get_assets
         {
           attribute asset_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute ignore_pagination { boolean }?
           & attribute type { xsd:token { pattern = "host|os" } }?
           & attribute details { boolean }?
         }

Response

    get_assets_response
     = element get_assets_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_assets_response_asset*
           & get_assets_response_filters
           & get_assets_response_sort
           & get_assets_response_assets
           & get_assets_response_asset_count
         }

    get_assets_response_asset
     = element asset
         {
           attribute id { uuid }
           & get_assets_response_asset_owner
           & get_assets_response_asset_name
           & get_assets_response_asset_comment
           & get_assets_response_asset_creation_time
           & get_assets_response_asset_modification_time
           & get_assets_response_asset_writable
           & get_assets_response_asset_in_use
           & get_assets_response_asset_permissions
           & get_assets_response_asset_user_tags?
           & get_assets_response_asset_identifiers?
           & get_assets_response_asset_type
           & ( get_assets_response_asset_host
               | get_assets_response_asset_os )
         }

    get_assets_response_asset_owner
     = element owner
         {
           get_assets_response_asset_owner_name
         }

    get_assets_response_asset_owner_name
     = element name
         {
           name
         }

    get_assets_response_asset_name
     = element name
         {
           name
         }

    get_assets_response_asset_comment
     = element comment
         {
           text
         }

    get_assets_response_asset_creation_time
     = element creation_time
         {
           iso_time
         }

    get_assets_response_asset_modification_time
     = element modification_time
         {
           iso_time
         }

    get_assets_response_asset_identifiers
     = element identifiers
         {
           get_assets_response_asset_identifiers_identifier
         }

    get_assets_response_asset_identifiers_identifier
     = element identifier
         {
           get_assets_response_asset_identifiers_identifier_name
           & get_assets_response_asset_identifiers_identifier_value
           & get_assets_response_asset_identifiers_identifier_creation_time
           & get_assets_response_asset_identifiers_identifier_modification_time
           & get_assets_response_asset_identifiers_identifier_source
           & get_assets_response_asset_identifiers_identifier_os?
         }

    get_assets_response_asset_identifiers_identifier_name
     = element name
         {
           name
         }

    get_assets_response_asset_identifiers_identifier_value
     = element value
         {
           text
         }

    get_assets_response_asset_identifiers_identifier_creation_time
     = element creation_time
         {
           iso_time
         }

    get_assets_response_asset_identifiers_identifier_modification_time
     = element modification_time
         {
           iso_time
         }

    get_assets_response_asset_identifiers_identifier_source
     = element source
         {
           attribute id { uuid }
           & get_assets_response_asset_identifiers_identifier_source_type
           & get_assets_response_asset_identifiers_identifier_source_data
           & get_assets_response_asset_identifiers_identifier_source_deleted
           & get_assets_response_asset_identifiers_identifier_source_name
         }

    get_assets_response_asset_identifiers_identifier_source_type
     = element type
         {
           text
         }

    get_assets_response_asset_identifiers_identifier_source_data
     = element data
         {
           text
         }

    get_assets_response_asset_identifiers_identifier_source_deleted
     = element deleted
         {
           boolean
         }

    get_assets_response_asset_identifiers_identifier_source_name
     = element name
         {
           boolean
         }

    get_assets_response_asset_identifiers_identifier_os
     = element os
         {
           attribute id { uuid }
           & get_assets_response_asset_identifiers_identifier_os_title
         }

    get_assets_response_asset_identifiers_identifier_os_title
     = element title
         {
           text
         }

    get_assets_response_asset_type
     = element type
         {
           xsd:token { pattern = "host|os" }
         }

    get_assets_response_asset_host
     = element host
         {
           get_assets_response_asset_host_severity
           & get_assets_response_asset_host_detail*
           & get_assets_response_asset_host_routes?
         }

    get_assets_response_asset_host_severity
     = element severity
         {
           get_assets_response_asset_host_severity_value
         }

    get_assets_response_asset_host_severity_value
     = element value
         {
           severity
         }

    get_assets_response_asset_host_detail
     = element detail
         {
           get_assets_response_asset_host_detail_name
           & get_assets_response_asset_host_detail_value
           & get_assets_response_asset_host_detail_source
         }

    get_assets_response_asset_host_detail_name
     = element name
         {
           name
         }

    get_assets_response_asset_host_detail_value
     = element value
         {
           text
         }

    get_assets_response_asset_host_detail_source
     = element source
         {
           attribute id { uuid }
           & get_assets_response_asset_host_detail_source_type
         }

    get_assets_response_asset_host_detail_source_type
     = element type
         {
           text
         }

    get_assets_response_asset_host_routes
     = element routes
         {
           get_assets_response_asset_host_routes_route*
         }

    get_assets_response_asset_host_routes_route
     = element route
         {
           get_assets_response_asset_host_routes_route_host*
         }

    get_assets_response_asset_host_routes_route_host
     = element host
         {
           attribute id { uuid }?
           & attribute distance { number }?
           & attribute same_source { boolean }?
           & get_assets_response_asset_host_routes_route_host_ip
         }

    get_assets_response_asset_host_routes_route_host_ip
     = element ip
         {
           text
         }

    get_assets_response_asset_os
     = element os
         {
           get_assets_response_asset_os_title
           & get_assets_response_asset_os_installs
           & get_assets_response_asset_os_all_installs
           & get_assets_response_asset_os_latest_severity
           & get_assets_response_asset_os_highest_severity
           & get_assets_response_asset_os_average_severity
           & get_assets_response_asset_os_hosts
         }

    get_assets_response_asset_os_title
     = element title
         {
           text
         }

    get_assets_response_asset_os_installs
     = element installs
         {
           integer
         }

    get_assets_response_asset_os_all_installs
     = element all_installs
         {
           integer
         }

    get_assets_response_asset_os_latest_severity
     = element latest_severity
         {
           get_assets_response_asset_os_latest_severity_value
         }

    get_assets_response_asset_os_latest_severity_value
     = element value
         {
           text
         }

    get_assets_response_asset_os_highest_severity
     = element highest_severity
         {
           get_assets_response_asset_os_highest_severity_value
         }

    get_assets_response_asset_os_highest_severity_value
     = element value
         {
           text
         }

    get_assets_response_asset_os_average_severity
     = element average_severity
         {
           get_assets_response_asset_os_average_severity_value
         }

    get_assets_response_asset_os_average_severity_value
     = element value
         {
           text
         }

    get_assets_response_asset_os_hosts
     = element hosts
         {
           get_assets_response_asset_os_hosts_asset*
         }

    get_assets_response_asset_os_hosts_asset
     = element asset
         {
           attribute id { uuid }
           & get_assets_response_asset_os_hosts_asset_name
           & get_assets_response_asset_os_hosts_asset_severity
         }

    get_assets_response_asset_os_hosts_asset_name
     = element name
         {
           name
         }

    get_assets_response_asset_os_hosts_asset_severity
     = element severity
         {
           get_assets_response_asset_os_hosts_asset_severity_value
         }

    get_assets_response_asset_os_hosts_asset_severity_value
     = element value
         {
           text
         }

    get_assets_response_asset_in_use
     = element in_use
         {
           boolean
         }

    get_assets_response_asset_writable
     = element writable
         {
           boolean
         }

    get_assets_response_asset_permissions
     = element permissions
         {
           get_assets_response_asset_permissions_permission*
         }

    get_assets_response_asset_permissions_permission
     = element permission
         {
           get_assets_response_asset_permissions_permission_name
         }

    get_assets_response_asset_permissions_permission_name
     = element name
         {
           name
         }

    get_assets_response_asset_user_tags
     = element user_tags
         {
           get_assets_response_asset_user_tags_count
           & get_assets_response_asset_user_tags_tag*
         }

    get_assets_response_asset_user_tags_count
     = element count
         {
           integer
         }

    get_assets_response_asset_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_assets_response_asset_user_tags_tag_name
           & get_assets_response_asset_user_tags_tag_value
           & get_assets_response_asset_user_tags_tag_comment
         }

    get_assets_response_asset_user_tags_tag_name
     = element name
         {
           text
         }

    get_assets_response_asset_user_tags_tag_value
     = element value
         {
           text
         }

    get_assets_response_asset_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_assets_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_assets_response_filters_term
           & get_assets_response_filters_name?
           & get_assets_response_filters_keywords
         }

    get_assets_response_filters_term
     = element term
         {
           text
         }

    get_assets_response_filters_name
     = element name
         {
           text
         }

    get_assets_response_filters_keywords
     = element keywords
         {
           get_assets_response_filters_keywords_keyword*
         }

    get_assets_response_filters_keywords_keyword
     = element keyword
         {
           get_assets_response_filters_keywords_keyword_column
           & get_assets_response_filters_keywords_keyword_relation
           & get_assets_response_filters_keywords_keyword_value
         }

    get_assets_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_assets_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_assets_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_assets_response_sort
     = element sort
         {
           text
           & get_assets_response_sort_field
         }

    get_assets_response_sort_field
     = element field
         {
           get_assets_response_sort_field_order
         }

    get_assets_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_assets_response_assets
     = element assets
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_assets_response_asset_count
     = element asset_count
         {
           get_assets_response_asset_count_filtered
           & get_assets_response_asset_count_page
         }

    get_assets_response_asset_count_filtered
     = element filtered
         {
           integer
         }

    get_assets_response_asset_count_page
     = element page
         {
           integer
         }

#### 7.51.3 Example: Get one or many assets

Client

     <get_assets/>

Manager

     <get_assets_response status="200"
                          status_text="OK">
       <asset id="b493b7a8-7489-11df-a3ec-002264764cea">
         <name>Localhost</name>
         <comment/>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <writable>0</writable>
         <in_use>7</in_use>
         <hosts>localhost</hosts>
         <max_hosts>1</max_hosts>
         <ssh_credential id="">
           <name/>
         </ssh_credential>
         <smb_credential id="">
           <name/>
         </smb_credential>
         <esxi_credential id="">
           <name/>
         </esxi_credential>
       </asset>
       ...
     </get_assets_response>

#### 7.51.3 Example: Get a single asset, including tasks using the asset

Client

     <get_assets asset_id="1f28d970-17ef-4c69-ba8a-13827059f2b9"
                 tasks="1"/>

Manager

     <get_assets_response status="200"
                          status_text="OK">
       <asset id="1f28d970-17ef-4c69-ba8a-13827059f2b9">
         <name>dik</name>
         <comment>dik mm</comment>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <writable>0</writable>
         <in_use>4</in_use>
         <hosts>dik.example.org</hosts>
         <max_hosts>1</max_hosts>
         <ssh_credential id="58ff2793-2dc7-43fe-85f9-20bfac5a87e4">
           <name>mm</name>
         </ssh_credential>
         <smb_credential id="">
           <name/>
         </smb_credential>
         <esxi_credential id="">
           <name/>
         </esxi_credential>
         <tasks>
           <task id="13bb418a-4220-4575-b35b-ec398bff7417">
             <name>dik mm</name>
           </task>
           ...
         </tasks>
       </asset>
     </get_assets_response>

### 7.52 Command `get_configs`

In short: Get one or many configs.

The client uses the get_configs command to get config information. If the command sent by the client was valid, the manager will reply with a list of configs to the client.

#### 7.52.1 Structure

- Command
  - @config_id (uuid) ID of single config to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column nvt_selector (uuid) NVT selector UUID
    - column families_total (integer) Total number of selected NVT families
    - column nvts_total (integer) Total number of selected NVTs
    - column families_trend (boolean) Whether new NVT families will be added
    - column nvts_trend (boolean) Whether new NVTs will be added
    - column usage_type ("scan" or "policy") Usage type
    - column predefined (boolean) Whether the config was created from the feed
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan configs instead.
  - @details (boolean) Whether to get config families, preferences and nvt selectors.
  - @families (boolean) Whether to include the families if no details are requested.
  - @preferences (boolean) Whether to include the preferences if no details are requested.
  - @tasks (boolean) Whether to get tasks using this config.
  - @usage_type ("policy", "scan" or "") Optional usage type to limit the configs to. Affects total count unlike filter.
- Response
  - @status (status)
  - @status_text (text)
  - <config> *
    - @id (uuid)
    - <owner>
      Owner of the config.
      - <name>
        The name of the owner.
    - <name>
      The name of the config.
    - <comment>
      The comment on the config.
    - <creation_time>
      Creation time of the config.
    - <modification_time>
      Last time the config was modified.
    - <family_count>
      The number of families selected by the config.
      - <growing>
        Whether new families are automatically added to the config.
    - <nvt_count>
      The number of NVTs selected by the config.
      - <growing>
        Whether new NVTs are automatically added to the config.
    - <type>
      The type of the config (0 = OpenVAS, 1 OSP).
      One of:
      0
      1
    - <usage_type>
      The usage type of the config (scan or policy).
      One of:
      scan
      policy
    - <max_nvt_count>
      Total number of NVTs in the families selected by the config.
    - <known_nvt_count>
      Total number of known NVTs selected by the config.
    - <scanner> ?
      The scanner used by the config if it is an OSP one.
      - @id (uuid) UUID of the scanner.
      - <trash>
        Whether the scanner is in the trashcan.
    - <in_use>
      Whether any tasks are using the config.
    - <writable>
      Whether the config may be modified.
    - <permissions>
      Permissions that the current user has on the target.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the config.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <tasks>
      All tasks using the config.
      - <task> *
        - @id (uuid)
        - <name>
          The name of the task.
        - <permissions> ?
          Permissions the user has on the task.
    - <families> ?
      All families selected by the config.
      - <family> *
        - <name>
          The name of the family.
        - <nvt_count>
          The number of NVTs selected in the family.
        - <max_nvt_count>
          The total number of NVTs in the family.
        - <growing>
          Whether new NVTs in the family are automatically added to the selection.
    - <preferences> ?
      Preferences for all NVTs selected by the config.
      - <preference> *
        - <nvt>
          NVT to which preference applies.
          - @oid (oid)
          - <name>
            The name of the NVT.
        - <name>
          The compact name of the preference as used by the scanner.
        - <hr_name> ?
          The human readable name of the preference.
        - <id>
          The ID of the preference.
        - <type>
          The type of the preference.
        - <value>
          The value of the preference.
        - <default> ?
          The default value of the preference.
        - <alt> *
          An alternate value for the preference.
    - <nvt_selectors> ?
      All NVT selectors of the config.
      - <nvt_selector> *
        An NVT selector.
        - <name>
          Name of the selector.
        - <include>
          Whether the selector is an include selector.
        - <type>
          Selector type: 0 = all, 1 = family, 2 = NVT.
        - <family_or_nvt>
          Name of the family or OID of the NVT.
    - <predefined>
      Whether the config was predefined by the feed.
    - <deprecated> ?
      Whether the config is deprecated.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <configs>
    - @start (integer) First config.
    - @max (integer) Maximum number of configs.
  - <config_count>
    - <filtered>
      Number of configs after filtering.
    - <page>
      Number of configs on current page.

#### 7.52.2 RNC

Command

    get_configs
     = element get_configs
         {
           attribute config_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute details { boolean }?
           & attribute families { boolean }?
           & attribute preferences { boolean }?
           & attribute tasks { boolean }?
           & attribute usage_type { xsd:token { pattern = "policy|scan|" } }?
         }

Response

    get_configs_response
     = element get_configs_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_configs_response_config*
           & get_configs_response_filters
           & get_configs_response_sort
           & get_configs_response_configs
           & get_configs_response_config_count
         }

    get_configs_response_config
     = element config
         {
           attribute id { uuid }
           & get_configs_response_config_owner
           & get_configs_response_config_name
           & get_configs_response_config_comment
           & get_configs_response_config_creation_time
           & get_configs_response_config_modification_time
           & get_configs_response_config_family_count
           & get_configs_response_config_nvt_count
           & get_configs_response_config_type
           & get_configs_response_config_usage_type
           & get_configs_response_config_max_nvt_count
           & get_configs_response_config_known_nvt_count
           & get_configs_response_config_scanner?
           & get_configs_response_config_in_use
           & get_configs_response_config_writable
           & get_configs_response_config_permissions
           & get_configs_response_config_user_tags?
           & get_configs_response_config_tasks
           & get_configs_response_config_families?
           & get_configs_response_config_preferences?
           & get_configs_response_config_nvt_selectors?
           & get_configs_response_config_predefined
           & get_configs_response_config_deprecated?
         }

    get_configs_response_config_owner
     = element owner
         {
           get_configs_response_config_owner_name
         }

    get_configs_response_config_owner_name
     = element name
         {
           name
         }

    get_configs_response_config_name
     = element name
         {
           name
         }

    get_configs_response_config_comment
     = element comment
         {
           text
         }

    get_configs_response_config_creation_time
     = element creation_time
         {
           iso_time
         }

    get_configs_response_config_modification_time
     = element modification_time
         {
           iso_time
         }

    get_configs_response_config_family_count
     = element family_count
         {
           text # RNC limitation: integer
           & get_configs_response_config_family_count_growing
         }

    get_configs_response_config_family_count_growing
     = element growing
         {
           boolean
         }

    get_configs_response_config_nvt_count
     = element nvt_count
         {
           text # RNC limitation: integer
           & get_configs_response_config_nvt_count_growing
         }

    get_configs_response_config_nvt_count_growing
     = element growing
         {
           boolean
         }

    get_configs_response_config_type
     = element type
         {
           xsd:token { pattern = "0|1" }
         }

    get_configs_response_config_usage_type
     = element usage_type
         {
           xsd:token { pattern = "scan|policy" }
         }

    get_configs_response_config_max_nvt_count
     = element max_nvt_count
         {
           integer
         }

    get_configs_response_config_known_nvt_count
     = element known_nvt_count
         {
           integer
         }

    get_configs_response_config_scanner
     = element scanner
         {
           text # RNC limitation: text
           & attribute id { uuid }
           & get_configs_response_config_scanner_trash
         }

    get_configs_response_config_scanner_trash
     = element trash
         {
           boolean
         }

    get_configs_response_config_in_use
     = element in_use
         {
           boolean
         }

    get_configs_response_config_writable
     = element writable
         {
           boolean
         }

    get_configs_response_config_permissions
     = element permissions
         {
           get_configs_response_config_permissions_permission*
         }

    get_configs_response_config_permissions_permission
     = element permission
         {
           get_configs_response_config_permissions_permission_name
         }

    get_configs_response_config_permissions_permission_name
     = element name
         {
           name
         }

    get_configs_response_config_user_tags
     = element user_tags
         {
           get_configs_response_config_user_tags_count
           & get_configs_response_config_user_tags_tag*
         }

    get_configs_response_config_user_tags_count
     = element count
         {
           integer
         }

    get_configs_response_config_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_configs_response_config_user_tags_tag_name
           & get_configs_response_config_user_tags_tag_value
           & get_configs_response_config_user_tags_tag_comment
         }

    get_configs_response_config_user_tags_tag_name
     = element name
         {
           text
         }

    get_configs_response_config_user_tags_tag_value
     = element value
         {
           text
         }

    get_configs_response_config_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_configs_response_config_tasks
     = element tasks
         {
           get_configs_response_config_tasks_task*
         }

    get_configs_response_config_tasks_task
     = element task
         {
           attribute id { uuid }
           & get_configs_response_config_tasks_task_name
           & get_configs_response_config_tasks_task_permissions?
         }

    get_configs_response_config_tasks_task_name
     = element name
         {
           name
         }

    get_configs_response_config_tasks_task_permissions
     = element permissions
         {
           ""
         }

    get_configs_response_config_families
     = element families
         {
           get_configs_response_config_families_family*
         }

    get_configs_response_config_families_family
     = element family
         {
           get_configs_response_config_families_family_name
           & get_configs_response_config_families_family_nvt_count
           & get_configs_response_config_families_family_max_nvt_count
           & get_configs_response_config_families_family_growing
         }

    get_configs_response_config_families_family_name
     = element name
         {
           name
         }

    get_configs_response_config_families_family_type
     = element type
         {
           integer
         }

    get_configs_response_config_families_family_nvt_count
     = element nvt_count
         {
           integer
         }

    get_configs_response_config_families_family_max_nvt_count
     = element max_nvt_count
         {
           integer
         }

    get_configs_response_config_families_family_growing
     = element growing
         {
           boolean
         }

    get_configs_response_config_preferences
     = element preferences
         {
           get_configs_response_config_preferences_preference*
         }

    get_configs_response_config_preferences_preference
     = element preference
         {
           get_configs_response_config_preferences_preference_nvt
           & get_configs_response_config_preferences_preference_name
           & get_configs_response_config_preferences_preference_hr_name?
           & get_configs_response_config_preferences_preference_id
           & get_configs_response_config_preferences_preference_type
           & get_configs_response_config_preferences_preference_value
           & get_configs_response_config_preferences_preference_default?
           & get_configs_response_config_preferences_preference_alt*
         }

    get_configs_response_config_preferences_preference_nvt
     = element nvt
         {
           attribute oid { oid }
           & get_configs_response_config_preferences_preference_nvt_name
         }

    get_configs_response_config_preferences_preference_nvt_name
     = element name
         {
           name
         }

    get_configs_response_config_preferences_preference_name
     = element name
         {
           name
         }

    get_configs_response_config_preferences_preference_hr_name
     = element hr_name
         {
           name
         }

    get_configs_response_config_preferences_preference_id
     = element id
         {
           text
         }

    get_configs_response_config_preferences_preference_type
     = element type
         {
           text
         }

    get_configs_response_config_preferences_preference_value
     = element value
         {
           text
         }

    get_configs_response_config_preferences_preference_default
     = element default
         {
           text
         }

    get_configs_response_config_preferences_preference_alt
     = element alt
         {
           text
         }

    get_configs_response_config_nvt_selectors
     = element nvt_selectors
         {
           get_configs_response_config_nvt_selectors_nvt_selector*
         }

    get_configs_response_config_nvt_selectors_nvt_selector
     = element nvt_selector
         {
           get_configs_response_config_nvt_selectors_nvt_selector_name
           & get_configs_response_config_nvt_selectors_nvt_selector_include
           & get_configs_response_config_nvt_selectors_nvt_selector_type
           & get_configs_response_config_nvt_selectors_nvt_selector_family_or_nvt
         }

    get_configs_response_config_nvt_selectors_nvt_selector_name
     = element name
         {
           text
         }

    get_configs_response_config_nvt_selectors_nvt_selector_include
     = element include
         {
           boolean
         }

    get_configs_response_config_nvt_selectors_nvt_selector_type
     = element type
         {
           integer
         }

    get_configs_response_config_nvt_selectors_nvt_selector_family_or_nvt
     = element family_or_nvt
         {
           text
         }

    get_configs_response_config_predefined
     = element predefined
         {
           boolean
         }

    get_configs_response_config_deprecated
     = element deprecated
         {
           boolean
         }

    get_configs_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_configs_response_filters_term
           & get_configs_response_filters_name?
           & get_configs_response_filters_keywords
         }

    get_configs_response_filters_term
     = element term
         {
           text
         }

    get_configs_response_filters_name
     = element name
         {
           text
         }

    get_configs_response_filters_keywords
     = element keywords
         {
           get_configs_response_filters_keywords_keyword*
         }

    get_configs_response_filters_keywords_keyword
     = element keyword
         {
           get_configs_response_filters_keywords_keyword_column
           & get_configs_response_filters_keywords_keyword_relation
           & get_configs_response_filters_keywords_keyword_value
         }

    get_configs_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_configs_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_configs_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_configs_response_sort
     = element sort
         {
           text
           & get_configs_response_sort_field
         }

    get_configs_response_sort_field
     = element field
         {
           get_configs_response_sort_field_order
         }

    get_configs_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_configs_response_configs
     = element configs
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_configs_response_config_count
     = element config_count
         {
           get_configs_response_config_count_filtered
           & get_configs_response_config_count_page
         }

    get_configs_response_config_count_filtered
     = element filtered
         {
           integer
         }

    get_configs_response_config_count_page
     = element page
         {
           integer
         }

#### 7.52.3 Example: Get one or many configs

Client

     <get_configs/>

Manager

     <get_configs_response status="200"
                           status_text="OK">
       <config id="daba56c8-73ec-11df-a475-002264764cea">
         <owner>
           <name>mabel</name>
         </owner>
         <name>Full and fast</name>
         <comment>
           Most NVT's; optimized by using previously collected information. Version 20201215.
         </comment>
         <creation_time>2023-03-06T11:26:30-05:00</creation_time>
         <modification_time>2024-01-23T10:02:26-05:00</modification_time>
         <writable>0</writable>
         <in_use>1</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <family_count>
           56
           <growing>1</growing>
         </family_count>
         <nvt_count>
           88005
           <growing>1</growing>
         </nvt_count>
         <type>0</type>
         <usage_type>scan</usage_type>
         <predefined>0</predefined>
       </config>
       ...
     </get_configs_response>

#### 7.52.3 Example: Get a single config, including preference, family lists and tasks using this config

Client

     <get_configs config_id="daba56c8-73ec-11df-a475-002264764cea"
                  preferences="1"
                  families="1"
                  tasks="1"/>

Manager

     <get_configs_response status="200"
                           status_text="OK">
       <config id="daba56c8-73ec-11df-a475-002264764cea">
         <owner>
           <name>mabel</name>
         </owner>
         <name>Full and fast</name>
         <comment>
           Most NVT's; optimized by using previously collected information. Version 20201215.
         </comment>
         <creation_time>2023-03-06T11:26:30-05:00</creation_time>
         <modification_time>2024-01-23T10:02:26-05:00</modification_time>
         <writable>0</writable>
         <in_use>1</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <family_count>
           56
           <growing>1</growing>
         </family_count>
         <nvt_count>
           88005
           <growing>1</growing>
         </nvt_count>
         <type>0</type>
         <usage_type>scan</usage_type>
         <predefined>0</predefined>
         <families>
           <family>
             <name>AIX Local Security Checks</name>
             <nvt_count>1</nvt_count>
             <max_nvt_count>1</max_nvt_count>
             <growing>1</growing>
           </family>
           ...
         </families>
         <max_nvt_count>88014</max_nvt_count>
         <known_nvt_count>88005</known_nvt_count>
         <preferences>
           <preference>
             <nvt oid="1.3.6.1.4.1.25623.1.0.100151">
               <name>PostgreSQL Detection (TCP)</name>
             </nvt>
             <id>1</id>
             <hr_name>Postgres Username:</hr_name>
             <name>Postgres Username:</name>
             <type>entry</type>
             <value>postgres</value>
             <default>postgres</default>
           </preference>
           ...
         </preferences>
         <tasks>
           <task id="1d5c5fc8-937e-41f1-b52f-49887c386b12">
             <name>Web Servers</name>
           </task>
           ...
         </tasks>
       </config>
       ...
     </get_configs_response>

### 7.53 Command `get_credentials`

In short: Get one or many credentials.

The client uses the get_credentials command to get credentials information. If the command sent by the client was valid, the manager will reply with a list of credentials to the client.

#### 7.53.1 Structure

- Command
  - @credential_id (uuid) ID of single credential to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column login (text) The login username
    - column type (text) The type abbreviation
    - column allow_insecure (boolean) Whether insecure use is allowed
  - @filt_id (uuid) ID of filter to use to filter query.
  - @details (boolean) Whether to include certificate info.
  - @scanners (boolean) Whether to include a list of scanners using the credentials.
  - @trash (boolean) Whether to get the trashcan credentials instead.
  - @targets (boolean) Whether to include a list of targets using the credentials.
  - @format ("key", "rpm", "deb", "exe" or "pem")
- Response
  - @status (status)
  - @status_text (text)
  - <credential> *
    - @id (uuid)
    - <owner>
      Owner of the credential.
      - <name>
        The name of the owner.
    - <name>
      The name of the credential.
    - <allow_insecure>
      Whether insecure use of the credential is allowed.
    - <login>
      The username of the credential.
    - <comment>
      The comment on the credential.
    - <creation_time>
      Date and time the credential was created.
    - <modification_time>
      Date and time the credential was last modified.
    - <writable>
      Whether this credential is writable.
    - <in_use>
      Whether any targets are using the credential.
    - <permissions>
      Permissions that the current user has on the credential.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the credential.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <type>
      The type of the credential.
      One of:
      cc
      krb5
      pgp
      pw
      smime
      snmp
      up
      usk
      More Details
      cc: Client certificate
      krb5: Kerberos 5
      pgp: PGP encryption key
      pw: Password only
      smime: S/MIME certificate
      snmp: SNMP
      up: User name + password
      usk: User name + SSH key
    - <full_type>
      The type of the credential written out.
    - <formats>
      The export formats available for the credential.
      - <format> *
        Format as used in the command.
        One of:
        key
        rpm
        deb
        exe
        pem
    - <auth_algorithm> ?
      The SNMP authentication algorithm.
      One of:
      md5
      sha1
    - <privacy> ?
      - <algorithm>
        The SNMP privacy algorithm.
        One of:
        aes
        des
    - <certificate_info> ?
      (certificate_info)
      Info about the certificate.
    - <private_key_info> ?
      Info about the private key if one is set..
      - <type> ?
        The key type / algorithm if the key is valid.
      - <sha256_hash> ?
        SHA-256 hash of the key if it is valid.
    - <public_key_info> ?
      Info about the public key if one is set..
      - <fingerprint> ?
        The key fingerprint if the key is valid.
    - <scanners> ?
      All scanners using this credential.
      - <scanner> *
        - @id (uuid)
        - <name>
          The name of the scanner.
        - <permissions> ?
          Permissions the user has on the scanner.
    - <targets> ?
      All targets using this credential.
      - <target> *
        - @id (uuid)
        - <name>
          The name of the target.
        - <permissions> ?
          Permissions the user has on the target.
    - One of?
      - <public_key>
      - <package>
        - @format ("rpm", "deb" or "exe")
      - <certificate>
    - <kdc> ?
      Deprecated: This element is deprecated. Use kdcs instead. The Kerberos KDC (key distribution center(s)).
    - <kdcs> ?
      Multiple Kerberos KDCs.
      - <kdc> *
        A single Kerberos Key Distribution Center.
      More Details
      List of one or more Kerberos Key Distribution Centers (KDCs).
    - <realm> ?
      The Kerberos realm.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <credentials>
    - @start (integer) First credential.
    - @max (integer) Maximum number of credentials.
  - <credential_count>
    - <filtered>
      Number of credentials after filtering.
    - <page>
      Number of credentials on current page.

#### 7.53.2 RNC

Command

    get_credentials
     = element get_credentials
         {
           attribute credential_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
           & attribute scanners { boolean }?
           & attribute trash { boolean }?
           & attribute targets { boolean }?
           & attribute format { xsd:token { pattern = "key|rpm|deb|exe|pem" } }?
         }

Response

    get_credentials_response
     = element get_credentials_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_credentials_response_credential*
           & get_credentials_response_filters
           & get_credentials_response_sort
           & get_credentials_response_credentials
           & get_credentials_response_credential_count
         }

    get_credentials_response_credential
     = element credential
         {
           attribute id { uuid }
           & get_credentials_response_credential_owner
           & get_credentials_response_credential_name
           & get_credentials_response_credential_allow_insecure
           & get_credentials_response_credential_login
           & get_credentials_response_credential_comment
           & get_credentials_response_credential_creation_time
           & get_credentials_response_credential_modification_time
           & get_credentials_response_credential_writable
           & get_credentials_response_credential_in_use
           & get_credentials_response_credential_permissions
           & get_credentials_response_credential_user_tags?
           & get_credentials_response_credential_type
           & get_credentials_response_credential_full_type
           & get_credentials_response_credential_formats
           & get_credentials_response_credential_auth_algorithm?
           & get_credentials_response_credential_privacy?
           & get_credentials_response_credential_certificate_info?
           & get_credentials_response_credential_private_key_info?
           & get_credentials_response_credential_public_key_info?
           & get_credentials_response_credential_scanners?
           & get_credentials_response_credential_targets?
           & ( get_credentials_response_credential_public_key
               | get_credentials_response_credential_package
               | get_credentials_response_credential_certificate )?
           & get_credentials_response_credential_kdc?
           & get_credentials_response_credential_kdcs?
           & get_credentials_response_credential_realm?
         }

    get_credentials_response_credential_owner
     = element owner
         {
           get_credentials_response_credential_owner_name
         }

    get_credentials_response_credential_owner_name
     = element name
         {
           name
         }

    get_credentials_response_credential_name
     = element name
         {
           name
         }

    get_credentials_response_credential_allow_insecure
     = element allow_insecure
         {
           boolean
         }

    get_credentials_response_credential_login
     = element login
         {
           name
         }

    get_credentials_response_credential_comment
     = element comment
         {
           text
         }

    get_credentials_response_credential_creation_time
     = element creation_time
         {
           iso_time
         }

    get_credentials_response_credential_modification_time
     = element modification_time
         {
           iso_time
         }

    get_credentials_response_credential_writable
     = element writable
         {
           boolean
         }

    get_credentials_response_credential_in_use
     = element in_use
         {
           boolean
         }

    get_credentials_response_credential_permissions
     = element permissions
         {
           get_credentials_response_credential_permissions_permission*
         }

    get_credentials_response_credential_permissions_permission
     = element permission
         {
           get_credentials_response_credential_permissions_permission_name
         }

    get_credentials_response_credential_permissions_permission_name
     = element name
         {
           name
         }

    get_credentials_response_credential_user_tags
     = element user_tags
         {
           get_credentials_response_credential_user_tags_count
           & get_credentials_response_credential_user_tags_tag*
         }

    get_credentials_response_credential_user_tags_count
     = element count
         {
           integer
         }

    get_credentials_response_credential_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_credentials_response_credential_user_tags_tag_name
           & get_credentials_response_credential_user_tags_tag_value
           & get_credentials_response_credential_user_tags_tag_comment
         }

    get_credentials_response_credential_user_tags_tag_name
     = element name
         {
           text
         }

    get_credentials_response_credential_user_tags_tag_value
     = element value
         {
           text
         }

    get_credentials_response_credential_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_credentials_response_credential_type
     = element type
         {
           xsd:token { pattern = "cc|krb5|pgp|pw|smime|snmp|up|usk" }
         }

    get_credentials_response_credential_full_type
     = element full_type
         {
           text
         }

    get_credentials_response_credential_formats
     = element formats
         {
           get_credentials_response_credential_formats_format*
         }

    get_credentials_response_credential_formats_format
     = element format
         {
           xsd:token { pattern = "key|rpm|deb|exe|pem" }
         }

    get_credentials_response_credential_auth_algorithm
     = element auth_algorithm
         {
           xsd:token { pattern = "md5|sha1" }
         }

    get_credentials_response_credential_privacy
     = element privacy
         {
           get_credentials_response_credential_privacy_algorithm
         }

    get_credentials_response_credential_privacy_algorithm
     = element algorithm
         {
           xsd:token { pattern = "aes|des" }
         }

    get_credentials_response_credential_certificate_info
     = element certificate_info    # type certificate_info
         {
           certificate_info_time_status
           & certificate_info_activation_time
           & certificate_info_expiration_time
           & certificate_info_issuer
           & certificate_info_md5_fingerprint
           & certificate_info_sha256_fingerprint?
           & certificate_info_subject?
           & certificate_info_serial?
         }

    get_credentials_response_credential_private_key_info
     = element private_key_info
         {
           get_credentials_response_credential_private_key_info_type?
           & get_credentials_response_credential_private_key_info_sha256_hash?
         }

    get_credentials_response_credential_private_key_info_type
     = element type
         {
           text
         }

    get_credentials_response_credential_private_key_info_sha256_hash
     = element sha256_hash
         {
           text
         }

    get_credentials_response_credential_public_key_info
     = element public_key_info
         {
           get_credentials_response_credential_public_key_info_fingerprint?
         }

    get_credentials_response_credential_public_key_info_fingerprint
     = element fingerprint
         {
           text
         }

    get_credentials_response_credential_scanners
     = element scanners
         {
           get_credentials_response_credential_scanners_scanner*
         }

    get_credentials_response_credential_scanners_scanner
     = element scanner
         {
           attribute id { uuid }
           & get_credentials_response_credential_scanners_scanner_name
           & get_credentials_response_credential_scanners_scanner_permissions?
         }

    get_credentials_response_credential_scanners_scanner_name
     = element name
         {
           name
         }

    get_credentials_response_credential_scanners_scanner_permissions
     = element permissions
         {
           ""
         }

    get_credentials_response_credential_targets
     = element targets
         {
           get_credentials_response_credential_targets_target*
         }

    get_credentials_response_credential_targets_target
     = element target
         {
           attribute id { uuid }
           & get_credentials_response_credential_targets_target_name
           & get_credentials_response_credential_targets_target_permissions?
         }

    get_credentials_response_credential_targets_target_name
     = element name
         {
           name
         }

    get_credentials_response_credential_targets_target_permissions
     = element permissions
         {
           ""
         }

    get_credentials_response_credential_public_key
     = element public_key
         {
           text
         }

    get_credentials_response_credential_package
     = element package
         {
           base64
           & attribute format { xsd:token { pattern = "rpm|deb|exe" } }
         }

    get_credentials_response_credential_certificate
     = element certificate
         {
           text
         }

    get_credentials_response_credential_kdc
     = element kdc
         {
           text
         }

    get_credentials_response_credential_kdcs
     = element kdcs
         {
           get_credentials_response_credential_kdcs_kdc*
         }

    get_credentials_response_credential_kdcs_kdc
     = element kdc
         {
           text
         }

    get_credentials_response_credential_realm
     = element realm
         {
           text
         }

    get_credentials_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_credentials_response_filters_term
           & get_credentials_response_filters_name?
           & get_credentials_response_filters_keywords
         }

    get_credentials_response_filters_term
     = element term
         {
           text
         }

    get_credentials_response_filters_name
     = element name
         {
           text
         }

    get_credentials_response_filters_keywords
     = element keywords
         {
           get_credentials_response_filters_keywords_keyword*
         }

    get_credentials_response_filters_keywords_keyword
     = element keyword
         {
           get_credentials_response_filters_keywords_keyword_column
           & get_credentials_response_filters_keywords_keyword_relation
           & get_credentials_response_filters_keywords_keyword_value
         }

    get_credentials_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_credentials_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_credentials_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_credentials_response_sort
     = element sort
         {
           text
           & get_credentials_response_sort_field
         }

    get_credentials_response_sort_field
     = element field
         {
           get_credentials_response_sort_field_order
         }

    get_credentials_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_credentials_response_credentials
     = element credentials
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_credentials_response_credential_count
     = element credential_count
         {
           get_credentials_response_credential_count_filtered
           & get_credentials_response_credential_count_page
         }

    get_credentials_response_credential_count_filtered
     = element filtered
         {
           integer
         }

    get_credentials_response_credential_count_page
     = element page
         {
           integer
         }

#### 7.53.3 Example: Get one or many the credentials

Client

     <get_credentials/>

Manager

     <get_credentials_response status="200"
                               status_text="OK">
       <credential id="c33864a9-d3fd-44b3-8717-972bfb01dfcf">
         <name>sally</name>
         <login>sally</login>
         <comment/>
         <creation_time>2012-12-14T17:11:25+01:00</creation_time>
         <modification_time>2012-05-28T11:19:20+01:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <type>usk</type>
         <full_type>username + SSH key</full_type>
         <formats>
           <format>key</format>
           <format>rpm</format>
           <format>deb</format>
         </formats>
       </credential>
       <credential id="8e305b0b-260d-450d-91a8-dadf0b144e15">
         <name>bob</name>
         <comment>Bob on the web server.</comment>
         <creation_time>2013-01-03T15:49:35+01:00</creation_time>
         <modification_time>2013-01-18T12:07:00+01:00</modification_time>
         <writable>1</writable>
         <in_use>1</in_use>
         <login>bob</login>
         <type>up</type>
         <full_type>username + password</full_type>
         <formats>
           <format>exe</format>
         </formats>
       </credential>
       ...
     </get_credentials_response>

#### 7.53.3 Example: Get a single credential, its public key and targets using it

Client

     <get_credentials credential_id="8e305b0b-260d-450d-91a8-dadf0b144e15"
                      format="key"
                      targets="1"/>

Manager

     <get_credentials_response status="200"
                               status_text="OK">
       <credential id="8e305b0b-260d-450d-91a8-dadf0b144e15">
         <name>bob</name>
         <comment>Bob on the web server.</comment>
         <creation_time>2012-11-03T15:41:35+01:00</creation_time>
         <modification_time>2012-11-18T13:17:00+01:00</modification_time>
         <writable>1</writable>
         <in_use>1</in_use>
         <login>bob</login>
         <type>up</type>
         <full_type>username + password</full_type>
         <targets>
           <target id="1f28d970-17ef-4c69-ba8a-13827059f2b9">
             <name>Web server</name>
           </target>
         </targets>
         <public_key>
           ssh-rsa AAAAB3...Z64IcQ== Key generated by GVM
         </public_key>
       </credential>
     </get_credentials_response>

#### 7.53.3 Example: Get the Debian package of a single credential

Client

     <get_credentials credential_id="8e305b0b-260d-450d-91a8-dadf0b144e15"
                      format="deb"/>

Manager

     <get_credentials_response status="200"
                               status_text="OK">
       <credential id="8e305b0b-260d-450d-91a8-dadf0b144e15">
         <name>bob</name>
         <login>bob</login>
         <comment>Bob on the web server.</comment>
         <creation_time>2012-11-03T15:41:35+01:00</creation_time>
         <modification_time>2012-11-18T13:17:00+01:00</modification_time>
         <writable>1</writable>
         <in_use>1</in_use>
         <type>up</type>
         <full_type>username + password</full_type>
         <targets>
           <target id="1f28d970-17ef-4c69-ba8a-13827059f2b9">
             <name>Web server</name>
           </target>
         </targets>
         <package format="deb">ITxhcmNoPgpk...DmvF0AKAAACg==</package>
       </credential>
     </get_credentials_response>

### 7.54 Command `get_credential_stores`

In short: Get one or many credential stores.

The client uses the get_credential_stores command to get information about credential stores, which are interfaces to external services for managing credential information. If the command sent by the client was valid, the manager will reply with a list of credential stores to the client.

#### 7.54.1 Structure

- Command
  - @credential_store_id (uuid) ID of single credential store to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column version (text) The version of the credential store data
    - column active (boolean) Whether the credential store is active
    - column host (text) The host address or hostname of the external service
  - @filt_id (uuid) ID of filter to use to filter query.
  - @details (boolean) Whether to include details.
- Response
  - @status (status)
  - @status_text (text)
  - <credential_store> *
    - @id (uuid)
    - <owner>
      Owner of the credential store.
      - <name>
        The name of the owner.
    - <name>
      The name of the credential store.
    - <comment>
      The comment on the credential store.
    - <creation_time>
      Date and time the credential store was created.
    - <modification_time>
      Date and time the credential store was last modified.
    - <writable>
      Whether this credential store is writable.
    - <in_use>
      Whether this credential store is in use.
    - <permissions> ?
      Permissions that the current user has on the credential store.
      - <permission> *
        - <name>
          The name of the permission.
    - <version>
      Version of the data format and connector used to query the external credential service.
    - <active>
      Whether the credential store is active and can be use in credentials.
    - <host>
      Host address or hostname of the external service.
    - <path>
      Path of the external service.
    - <preferences>
      Store specific preferences for querying the external service.
      - <preference> *
        - @secret (boolean) Whether the preference is encrypted and its value is not shown in the response.
        - <name>
          Name of the preference.
        - <type>
          Data type of the preference.
          One of:
          string
          integer
          float
          base64
          x509_certs
          x509_privkey
          pkcs12_file
        - <pattern>
          Optional regular expression. If given, string values must match.
        - <passphrase_name>
          Optional name of a passphrase preference for private keys.
        - <value> ?
          Value of the preference, hidden if preference is a secret.
          More Details
          String, integers and floating point numbers are given as plain text while base64 and the x509 types are Base64 encoded binary data that will be decoded for use and validation.
        - <default_value> ?
          Default value of the preference, hidden if preference is a secret.
          More Details
          The same encoding rules apply here as for the value. Secrets are empty by default.
      More Details
      Preferences apply to all credentials using the credential store and mostly consist of data used to connect to and authenticate with the credential store like client certificates and private keys.
    - <selectors>
      Credential specific data for selecting a specific credential data set.
      - <selector> *
        - <name>
          Name of the selector.
        - <pattern>
          Optional regular expression. If given, string values must match.
        - <default_value>
          Default value of the selector.
        - <credential_types>
          List of credential types that use the selector.
          - <credential_type> *
      More Details
      Selector values are set individually in each credential using the credential store and are usually unique identifiers of the data in the external service. The credential store defines the names, default values and and supported credential types of selectors.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <credential_stores>
    - @start (integer) First credential store.
    - @max (integer) Maximum number of credential stores.
  - <credential_store_count>
    - <filtered>
      Number of credential stores after filtering.
    - <page>
      Number of credential stores on current page.

#### 7.54.2 RNC

Command

    get_credential_stores
     = element get_credential_stores
         {
           attribute credential_store_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
         }

Response

    get_credential_stores_response
     = element get_credential_stores_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_credential_stores_response_credential_store*
           & get_credential_stores_response_filters
           & get_credential_stores_response_sort
           & get_credential_stores_response_credential_stores
           & get_credential_stores_response_credential_store_count
         }

    get_credential_stores_response_credential_store
     = element credential_store
         {
           attribute id { uuid }
           & get_credential_stores_response_credential_store_owner
           & get_credential_stores_response_credential_store_name
           & get_credential_stores_response_credential_store_comment
           & get_credential_stores_response_credential_store_creation_time
           & get_credential_stores_response_credential_store_modification_time
           & get_credential_stores_response_credential_store_writable
           & get_credential_stores_response_credential_store_in_use
           & get_credential_stores_response_credential_store_permissions?
           & get_credential_stores_response_credential_store_version
           & get_credential_stores_response_credential_store_active
           & get_credential_stores_response_credential_store_host
           & get_credential_stores_response_credential_store_path
           & get_credential_stores_response_credential_store_preferences
           & get_credential_stores_response_credential_store_selectors
         }

    get_credential_stores_response_credential_store_owner
     = element owner
         {
           get_credential_stores_response_credential_store_owner_name
         }

    get_credential_stores_response_credential_store_owner_name
     = element name
         {
           name
         }

    get_credential_stores_response_credential_store_name
     = element name
         {
           name
         }

    get_credential_stores_response_credential_store_comment
     = element comment
         {
           text
         }

    get_credential_stores_response_credential_store_creation_time
     = element creation_time
         {
           iso_time
         }

    get_credential_stores_response_credential_store_modification_time
     = element modification_time
         {
           iso_time
         }

    get_credential_stores_response_credential_store_writable
     = element writable
         {
           boolean
         }

    get_credential_stores_response_credential_store_in_use
     = element in_use
         {
           boolean
         }

    get_credential_stores_response_credential_store_permissions
     = element permissions
         {
           get_credential_stores_response_credential_store_permissions_permission*
         }

    get_credential_stores_response_credential_store_permissions_permission
     = element permission
         {
           get_credential_stores_response_credential_store_permissions_permission_name
         }

    get_credential_stores_response_credential_store_permissions_permission_name
     = element name
         {
           name
         }

    get_credential_stores_response_credential_store_user_tags
     = element user_tags
         {
           get_credential_stores_response_credential_store_user_tags_count
           & get_credential_stores_response_credential_store_user_tags_tag*
         }

    get_credential_stores_response_credential_store_user_tags_count
     = element count
         {
           integer
         }

    get_credential_stores_response_credential_store_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_credential_stores_response_credential_store_user_tags_tag_name
           & get_credential_stores_response_credential_store_user_tags_tag_value
           & get_credential_stores_response_credential_store_user_tags_tag_comment
         }

    get_credential_stores_response_credential_store_user_tags_tag_name
     = element name
         {
           text
         }

    get_credential_stores_response_credential_store_user_tags_tag_value
     = element value
         {
           text
         }

    get_credential_stores_response_credential_store_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_credential_stores_response_credential_store_version
     = element version
         {
           text
         }

    get_credential_stores_response_credential_store_active
     = element active
         {

            ERROR

         }

    get_credential_stores_response_credential_store_host
     = element host
         {
           text
         }

    get_credential_stores_response_credential_store_path
     = element path
         {
           text
         }

    get_credential_stores_response_credential_store_preferences
     = element preferences
         {
           get_credential_stores_response_credential_store_preferences_preference*
         }

    get_credential_stores_response_credential_store_preferences_preference
     = element preference
         {
           attribute secret { boolean }?
           & get_credential_stores_response_credential_store_preferences_preference_name
           & get_credential_stores_response_credential_store_preferences_preference_type
           & get_credential_stores_response_credential_store_preferences_preference_pattern
           & get_credential_stores_response_credential_store_preferences_preference_passphrase_name
           & get_credential_stores_response_credential_store_preferences_preference_value?
           & get_credential_stores_response_credential_store_preferences_preference_default_value?
         }

    get_credential_stores_response_credential_store_preferences_preference_name
     = element name
         {
           text
         }

    get_credential_stores_response_credential_store_preferences_preference_type
     = element type
         {
           xsd:token { pattern = "string|integer|float|base64|x509_certs|x509_privkey|pkcs12_file" }
         }

    get_credential_stores_response_credential_store_preferences_preference_pattern
     = element pattern
         {
           text
         }

    get_credential_stores_response_credential_store_preferences_preference_passphrase_name
     = element passphrase_name
         {
           text
         }

    get_credential_stores_response_credential_store_preferences_preference_value
     = element value
         {
           text
         }

    get_credential_stores_response_credential_store_preferences_preference_default_value
     = element default_value
         {
           text
         }

    get_credential_stores_response_credential_store_selectors
     = element selectors
         {
           get_credential_stores_response_credential_store_selectors_selector*
         }

    get_credential_stores_response_credential_store_selectors_selector
     = element selector
         {
           get_credential_stores_response_credential_store_selectors_selector_name
           & get_credential_stores_response_credential_store_selectors_selector_pattern
           & get_credential_stores_response_credential_store_selectors_selector_default_value
           & get_credential_stores_response_credential_store_selectors_selector_credential_types
         }

    get_credential_stores_response_credential_store_selectors_selector_name
     = element name
         {
           text
         }

    get_credential_stores_response_credential_store_selectors_selector_pattern
     = element pattern
         {
           text
         }

    get_credential_stores_response_credential_store_selectors_selector_default_value
     = element default_value
         {
           text
         }

    get_credential_stores_response_credential_store_selectors_selector_credential_types
     = element credential_types
         {
           get_credential_stores_response_credential_store_selectors_selector_credential_types_credential_type*
         }

    get_credential_stores_response_credential_store_selectors_selector_credential_types_credential_type
     = element credential_type
         {
           text
         }

    get_credential_stores_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_credential_stores_response_filters_term
           & get_credential_stores_response_filters_name?
           & get_credential_stores_response_filters_keywords
         }

    get_credential_stores_response_filters_term
     = element term
         {
           text
         }

    get_credential_stores_response_filters_name
     = element name
         {
           text
         }

    get_credential_stores_response_filters_keywords
     = element keywords
         {
           get_credential_stores_response_filters_keywords_keyword*
         }

    get_credential_stores_response_filters_keywords_keyword
     = element keyword
         {
           get_credential_stores_response_filters_keywords_keyword_column
           & get_credential_stores_response_filters_keywords_keyword_relation
           & get_credential_stores_response_filters_keywords_keyword_value
         }

    get_credential_stores_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_credential_stores_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_credential_stores_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_credential_stores_response_sort
     = element sort
         {
           text
           & get_credential_stores_response_sort_field
         }

    get_credential_stores_response_sort_field
     = element field
         {
           get_credential_stores_response_sort_field_order
         }

    get_credential_stores_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_credential_stores_response_credential_stores
     = element credential_stores
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_credential_stores_response_credential_store_count
     = element credential_store_count
         {
           get_credential_stores_response_credential_store_count_filtered
           & get_credential_stores_response_credential_store_count_page
         }

    get_credential_stores_response_credential_store_count_filtered
     = element filtered
         {
           integer
         }

    get_credential_stores_response_credential_store_count_page
     = element page
         {
           integer
         }

### 7.55 Command `get_features`

In short: Get a list of optional features.

The client uses the get_features command to get a list of optional features. If the command sent by the client was valid, the manager will reply with a list of features to the client.

#### 7.55.1 Structure

- Command
  Empty single element.
- Response
  - @status (status)
  - @status_text (text)
  - <feature> *
    - @compiled_in (boolean) Whether the feature exists in the binary.
    - @enabled (boolean) Whether the feature is enabled.
    - <name>
      The name of the feature.

#### 7.55.2 RNC

Command

    get_features
     = element get_features
         {
           ""
         }

Response

    get_features_response
     = element get_features_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_features_response_feature*
         }

    get_features_response_feature
     = element feature
         {
           attribute compiled_in { boolean }
           & attribute enabled { boolean }
           & get_features_response_feature_name
         }

    get_features_response_feature_name
     = element name
         {
           text
         }

#### 7.55.3 Example: Get the optional features

Client

     <get_features/>

Manager

     <get_features_response status="200"
                            status_text="OK">
       <feature compiled_in="1"
                enabled="0">
         <name>OPENVASD</name>
       </feature>
       <feature compiled_in="1"
                enabled="0">
         <name>ENABLE_CONTAINER_SCANNING</name>
       </feature>
       <feature compiled_in="1"
                enabled="0">
         <name>ENABLE_AGENTS</name>
       </feature>
       <feature compiled_in="0"
                enabled="0">
         <name>ENABLE_CREDENTIAL_STORES</name>
       </feature>
       <feature compiled_in="1"
                enabled="0">
         <name>FEED_VT_METADATA</name>
       </feature>
       <feature compiled_in="1"
                enabled="0">
         <name>ENABLE_SECURITY_INTELLIGENCE_EXPORT</name>
       </feature>
     </get_features_response>

### 7.56 Command `get_feeds`

In short: Get one or many feeds.

The client uses the get_feeds command to get feed information. If the command sent by the client was valid, the manager will reply with a list of feeds to the client.

#### 7.56.1 Structure

- Command
  - @type (text) Type of single feed to get: NVT, CERT, SCAP or GVMD_DATA.
- Response
  - @status (status)
  - @status_text (text)
  - <feed_owner_set>
    Whether the feed owner is set.
  - <feed_roles_set>
    Whether the feed roles are set.
  - <feed_resources_access>
    Whether the user has access to feed resources.
  - <feed> *
    - <type>
      The type of feed: NVT, CERT, SCAP or GVMD_DATA.
    - <name>
      The name of the feed.
    - <version>
      The version of the feed.
    - <description>
      A description of the feed.
    - <sync_not_available> ?
      Present if syncing is not available.
      - <error>
        Description of why sync is not available.
    - <currently_syncing> ?
      Present if a sync of this type is underway.
      - <timestamp>
        Time sync started.

#### 7.56.2 RNC

Command

    get_feeds
     = element get_feeds
         {
           attribute type { text }?
         }

Response

    get_feeds_response
     = element get_feeds_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_feeds_response_feed_owner_set
           & get_feeds_response_feed_roles_set
           & get_feeds_response_feed_resources_access
           & get_feeds_response_feed*
         }

    get_feeds_response_feed_owner_set
     = element feed_owner_set
         {
           boolean
         }

    get_feeds_response_feed_roles_set
     = element feed_roles_set
         {
           boolean
         }

    get_feeds_response_feed_resources_access
     = element feed_resources_access
         {
           boolean
         }

    get_feeds_response_feed
     = element feed
         {
           get_feeds_response_feed_type
           & get_feeds_response_feed_name
           & get_feeds_response_feed_version
           & get_feeds_response_feed_description
           & get_feeds_response_feed_sync_not_available?
           & get_feeds_response_feed_currently_syncing?
         }

    get_feeds_response_feed_type
     = element type
         {
           text
         }

    get_feeds_response_feed_name
     = element name
         {
           text
         }

    get_feeds_response_feed_version
     = element version
         {
           text
         }

    get_feeds_response_feed_description
     = element description
         {
           text
         }

    get_feeds_response_feed_sync_not_available
     = element sync_not_available
         {
           get_feeds_response_feed_sync_not_available_error
         }

    get_feeds_response_feed_sync_not_available_error
     = element error
         {
         }

    get_feeds_response_feed_currently_syncing
     = element currently_syncing
         {
           get_feeds_response_feed_currently_syncing_timestamp
         }

    get_feeds_response_feed_currently_syncing_timestamp
     = element timestamp
         {
           text
         }

#### 7.56.3 Example: Get the feeds

Client

     <get_feeds/>

Manager

     <get_feeds_response status_text="OK"
                         status="200">
       <feed_owner_set>1</feed_owner_set>
       <feed_roles_set>1</feed_roles_set>
       <feed_resources_access>1</feed_resources_access>
       <feed>
         <type>NVT</type>
         <name>Greenbone Security Feed</name>
         <version>201608180124</version>
         <description>This script synchronizes an NVT collection with...</description>
       </feed>
       <feed>
         <type>CERT</type>
         <name>Greenbone CERT Feed</name>
         <version>201609130000</version>
         <description>This script synchronizes a CERT collection with...</description>
       </feed>
       <feed>
         <type>SCAP</type>
         <name>Greenbone SCAP Feed</name>
         <version>201608172300</version>
         <description>This script synchronizes a SCAP collection with...</description>
       </feed>
     </get_feeds_response>

### 7.57 Command `get_filters`

In short: Get one or many filters.

The client uses the get_filters command to get filter information.

#### 7.57.1 Structure

- Command
  - @filter_id (uuid) ID of single filter to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column type (text) Resource type the filter is restricted to
    - column term (text) The filter term
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan filters instead.
  - @alerts (boolean) Whether to include list of alerts that use the filter.
- Response
  - @status (status)
  - @status_text (text)
  - <filter> *
    - @id (uuid)
    - <owner>
      Owner of the filter.
      - <name>
        The name of the owner.
    - <name>
      The name of the filter.
    - <comment>
      The comment on the filter.
    - <term>
      The filter term.
    - <type>
      Resource type filter applies to. Blank for all.
    - <creation_time>
      Date and time the filter was created.
    - <modification_time>
      Date and time the filter was last modified.
    - <in_use>
      Whether any alerts are using the filter.
    - <writable>
      Whether the filter is writable.
    - <permissions>
      Permissions that the current user has on the filter.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the filter.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <alerts> ?
      All alerts using the filter.
      - <alert> *
        - @id (uuid)
        - <name>
          The name of the alert.
        - <permissions> ?
          Permissions the user has on the alert.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <filters>
    - @start (integer) First filter.
    - @max (integer) Maximum number of filters.
  - <filter_count>
    - <filtered>
      Number of filters after filtering.
    - <page>
      Number of filters on current page.

#### 7.57.2 RNC

Command

    get_filters
     = element get_filters
         {
           attribute filter_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute alerts { boolean }?
         }

Response

    get_filters_response
     = element get_filters_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_filters_response_filter*
           & get_filters_response_filters
           & get_filters_response_sort
           & get_filters_response_filters
           & get_filters_response_filter_count
         }

    get_filters_response_filter
     = element filter
         {
           attribute id { uuid }
           & get_filters_response_filter_owner
           & get_filters_response_filter_name
           & get_filters_response_filter_comment
           & get_filters_response_filter_term
           & get_filters_response_filter_type
           & get_filters_response_filter_creation_time
           & get_filters_response_filter_modification_time
           & get_filters_response_filter_in_use
           & get_filters_response_filter_writable
           & get_filters_response_filter_permissions
           & get_filters_response_filter_user_tags?
           & get_filters_response_filter_alerts?
         }

    get_filters_response_filter_owner
     = element owner
         {
           get_filters_response_filter_owner_name
         }

    get_filters_response_filter_owner_name
     = element name
         {
           name
         }

    get_filters_response_filter_name
     = element name
         {
           name
         }

    get_filters_response_filter_comment
     = element comment
         {
           text
         }

    get_filters_response_filter_term
     = element term
         {
           text
         }

    get_filters_response_filter_type
     = element type
         {
           text
         }

    get_filters_response_filter_creation_time
     = element creation_time
         {
           iso_time
         }

    get_filters_response_filter_modification_time
     = element modification_time
         {
           iso_time
         }

    get_filters_response_filter_in_use
     = element in_use
         {
           boolean
         }

    get_filters_response_filter_writable
     = element writable
         {
           boolean
         }

    get_filters_response_filter_permissions
     = element permissions
         {
           get_filters_response_filter_permissions_permission*
         }

    get_filters_response_filter_permissions_permission
     = element permission
         {
           get_filters_response_filter_permissions_permission_name
         }

    get_filters_response_filter_permissions_permission_name
     = element name
         {
           name
         }

    get_filters_response_filter_user_tags
     = element user_tags
         {
           get_filters_response_filter_user_tags_count
           & get_filters_response_filter_user_tags_tag*
         }

    get_filters_response_filter_user_tags_count
     = element count
         {
           integer
         }

    get_filters_response_filter_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_filters_response_filter_user_tags_tag_name
           & get_filters_response_filter_user_tags_tag_value
           & get_filters_response_filter_user_tags_tag_comment
         }

    get_filters_response_filter_user_tags_tag_name
     = element name
         {
           text
         }

    get_filters_response_filter_user_tags_tag_value
     = element value
         {
           text
         }

    get_filters_response_filter_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_filters_response_filter_alerts
     = element alerts
         {
           get_filters_response_filter_alerts_alert*
         }

    get_filters_response_filter_alerts_alert
     = element alert
         {
           attribute id { uuid }
           & get_filters_response_filter_alerts_alert_name
           & get_filters_response_filter_alerts_alert_permissions?
         }

    get_filters_response_filter_alerts_alert_name
     = element name
         {
           name
         }

    get_filters_response_filter_alerts_alert_permissions
     = element permissions
         {
           ""
         }

    get_filters_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_filters_response_filters_term
           & get_filters_response_filters_name?
           & get_filters_response_filters_keywords
         }

    get_filters_response_filters_term
     = element term
         {
           text
         }

    get_filters_response_filters_name
     = element name
         {
           text
         }

    get_filters_response_filters_keywords
     = element keywords
         {
           get_filters_response_filters_keywords_keyword*
         }

    get_filters_response_filters_keywords_keyword
     = element keyword
         {
           get_filters_response_filters_keywords_keyword_column
           & get_filters_response_filters_keywords_keyword_relation
           & get_filters_response_filters_keywords_keyword_value
         }

    get_filters_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_filters_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_filters_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_filters_response_sort
     = element sort
         {
           text
           & get_filters_response_sort_field
         }

    get_filters_response_sort_field
     = element field
         {
           get_filters_response_sort_field_order
         }

    get_filters_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_filters_response_filters
     = element filters
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_filters_response_filter_count
     = element filter_count
         {
           get_filters_response_filter_count_filtered
           & get_filters_response_filter_count_page
         }

    get_filters_response_filter_count_filtered
     = element filtered
         {
           integer
         }

    get_filters_response_filter_count_page
     = element page
         {
           integer
         }

#### 7.57.3 Example: Get one or many filters

Client

     <get_filters/>

Manager

     <get_filters_response status="200"
                           status_text="OK">
       <filter id="b493b7a8-7489-11df-a3ec-001164764cea">
         <name>Single Targets</name>
         <comment>Targets with only one host</comment>
         <term>ips=1 first=1 rows=-2</term>
         <type>target</type>
         <in_use>1</in_use>
         <writable>1</writable>
         <creation_time>2015-07-15T15:05:55Z</creation_time>
         <modification_time>2015-07-15T15:05:55Z</modification_time>
       </filter>
       ...
     </get_filters_response>

#### 7.57.3 Example: Get single filter, including alerts that use the filter

Client

     <get_filters filter_id="c33864a9-d3fd-44b3-8717-972bfb01dfc0"
                  tasks="1"/>

Manager

     <get_filters_response status="200"
                           status_text="OK">
       <filter id="c33864a9-d3fd-44b3-8717-972bfb01dfc0">
         <name>Local</name>
         <comment>Any item with name containing 'local'.</comment>
         <term>name~local first=1 rows=-2</term>
         <type/>
         <in_use>1</in_use>
         <writable>1</writable>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <alerts>
           <alert id="13bb418a-4220-4575-b35b-ec398bff7418">
             <name>Local Mailer</name>
           </alert>
           ...
         </alerts>
       </filter>
     </get_filters_response>

### 7.58 Command `get_groups`

In short: Get one or many groups.

The client uses the get_groups command to get group information.

#### 7.58.1 Structure

- Command
  - @group_id (uuid) ID of single group to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan groups instead.
- Response
  - @status (status)
  - @status_text (text)
  - <group> *
    - @id (uuid)
    - <owner>
      Owner of the group.
      - <name>
        The name of the owner.
    - <name>
      The name of the group.
    - <comment>
      The comment on the group.
    - <creation_time>
      Date and time the group was created.
    - <modification_time>
      Date and time the group was last modified.
    - <writable>
      Whether the group is writable.
    - <in_use>
      Whether the group is in use.
    - <permissions>
      Permissions that the current user has on the group.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the group.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <users>
      A comma-separated list of the users in the group.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <groups>
    - @start (integer) First group.
    - @max (integer) Maximum number of groups.
  - <group_count>
    - <filtered>
      Number of groups after filtering.
    - <page>
      Number of groups on current page.

#### 7.58.2 RNC

Command

    get_groups
     = element get_groups
         {
           attribute group_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
         }

Response

    get_groups_response
     = element get_groups_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_groups_response_group*
           & get_groups_response_filters
           & get_groups_response_sort
           & get_groups_response_groups
           & get_groups_response_group_count
         }

    get_groups_response_group
     = element group
         {
           attribute id { uuid }
           & get_groups_response_group_owner
           & get_groups_response_group_name
           & get_groups_response_group_comment
           & get_groups_response_group_creation_time
           & get_groups_response_group_modification_time
           & get_groups_response_group_writable
           & get_groups_response_group_in_use
           & get_groups_response_group_permissions
           & get_groups_response_group_user_tags?
           & get_groups_response_group_users
         }

    get_groups_response_group_owner
     = element owner
         {
           get_groups_response_group_owner_name
         }

    get_groups_response_group_owner_name
     = element name
         {
           name
         }

    get_groups_response_group_name
     = element name
         {
           name
         }

    get_groups_response_group_comment
     = element comment
         {
           text
         }

    get_groups_response_group_creation_time
     = element creation_time
         {
           iso_time
         }

    get_groups_response_group_modification_time
     = element modification_time
         {
           iso_time
         }

    get_groups_response_group_users
     = element users
         {
           text
         }

    get_groups_response_group_writable
     = element writable
         {
           boolean
         }

    get_groups_response_group_in_use
     = element in_use
         {
           boolean
         }

    get_groups_response_group_permissions
     = element permissions
         {
           get_groups_response_group_permissions_permission*
         }

    get_groups_response_group_permissions_permission
     = element permission
         {
           get_groups_response_group_permissions_permission_name
         }

    get_groups_response_group_permissions_permission_name
     = element name
         {
           name
         }

    get_groups_response_group_user_tags
     = element user_tags
         {
           get_groups_response_group_user_tags_count
           & get_groups_response_group_user_tags_tag*
         }

    get_groups_response_group_user_tags_count
     = element count
         {
           integer
         }

    get_groups_response_group_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_groups_response_group_user_tags_tag_name
           & get_groups_response_group_user_tags_tag_value
           & get_groups_response_group_user_tags_tag_comment
         }

    get_groups_response_group_user_tags_tag_name
     = element name
         {
           text
         }

    get_groups_response_group_user_tags_tag_value
     = element value
         {
           text
         }

    get_groups_response_group_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_groups_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_groups_response_filters_term
           & get_groups_response_filters_name?
           & get_groups_response_filters_keywords
         }

    get_groups_response_filters_term
     = element term
         {
           text
         }

    get_groups_response_filters_name
     = element name
         {
           text
         }

    get_groups_response_filters_keywords
     = element keywords
         {
           get_groups_response_filters_keywords_keyword*
         }

    get_groups_response_filters_keywords_keyword
     = element keyword
         {
           get_groups_response_filters_keywords_keyword_column
           & get_groups_response_filters_keywords_keyword_relation
           & get_groups_response_filters_keywords_keyword_value
         }

    get_groups_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_groups_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_groups_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_groups_response_sort
     = element sort
         {
           text
           & get_groups_response_sort_field
         }

    get_groups_response_sort_field
     = element field
         {
           get_groups_response_sort_field_order
         }

    get_groups_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_groups_response_groups
     = element groups
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_groups_response_group_count
     = element group_count
         {
           get_groups_response_group_count_filtered
           & get_groups_response_group_count_page
         }

    get_groups_response_group_count_filtered
     = element filtered
         {
           integer
         }

    get_groups_response_group_count_page
     = element page
         {
           integer
         }

#### 7.58.3 Example: Get one or many groups

Client

     <get_groups/>

Manager

     <get_groups_response status="200"
                          status_text="OK">
       <group id="b493b7a8-7489-11df-a3ec-002264764cea">
         <name>Management</name>
         <comment>Managers</comment>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <users>sarah, frank</users>
       </group>
       ...
       <filters id="">
         <term>first=1 rows=-1 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           ...
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <groups max="-1"
               start="1"/>
       <group_count>
         1
         <filtered>1</filtered>
         <page>1</page>
       </group_count>
     </get_groups_response>

### 7.59 Command `get_info`

In short: Get information for items of given type.

The client uses the get_info command to get information about static data from an external source, like CVE or CPE. If the command sent by the client was valid, the manager will reply with a list of info elements of a given type to the client.

#### 7.59.1 Structure

- Command
  - @type (text) Type must be either CERT_BUND_ADV, CPE, CVE, DFN_CERT_ADV or NVT.
  - @name (text) Name or identifier of the requested information.
  - @info_id (text) ID of single info to get. Conflicts with name.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column severity (severity) CVSS severity score of the SecInfo
    Keywords if type is "nvt"
    - column summary (text) Summary text of the NVT
    - column cve (text) List of CVEs of the NVT
    - column family (text) Family of the NVT
    - column cvss (severity) Alias for severity
    - column cvss_base (severity) Alias for severity
    - column script_tags (text) List of script tags
    - column qod (integer) Numerical QoD
    - column qod_type (text) QoD type
    - column solution_type (text) Solution type
    - column solution (text) Solution description text
    - column insight (text) Insight section text
    - column affected (text) Text listing affected software
    - column impact (text) Impact description text
    - column detection (text) Detection description text
    - column solution_method (text) Solution method
    - column version (integer) Version of the NVT (deprected)
    - column epss_score (decimal) EPSS score of highest severity CVE (see epss/max_severity)
    - column epss_percentile (decimal) EPSS percentile of highest severity CVE (see epss/max_severity)
    - column max_epss_score (decimal) Highest EPSS score of referenced CVEs (see epss/max_epss)
    - column max_epss_percentile (decimal) Highest EPSS percentile of referenced CVEs (see epss/max_epss)
    Keywords if type is "cve"
    - column cvss_vector (text) The CVSS base vector
    - column products (text) Space separated list CPEs the CVE applies to
    - column description (text) Description text of the CVE
    - column published () Time the CVE was published, alias for created
    - column epss_score (decimal) EPSS score the CVE
    - column epss_percentile (decimal) EPSS percentile of the CVE
    Keywords if type is "cpe"
    - column title (text) Title text of the CPE
    - column status (text) Status of the CPE
    - column deprecated_by_id (text) NVD ID that has deprecated this CPE
    - column cves (integer) Number of CVEs referencing this CPE
    - column cpe_name_id (uuid) NVD assigned cpeNameId of the CPE
    Keywords if type is either "cert_bund_adv" or "dfn_cert_adv"
    - column title (text) Title text of the CERT advisory
    - column summary (text) Summary text of the CERT advisory
    - column cves (integer) Number of CVEs referenced by the CERT advisory
  - @filt_id (uuid) ID of filter to use to filter query.
  - @details (boolean) Whether to include information about references to this information.
- Response
  - @status (status)
  - @status_text (text)
  - <info> *
    - @id (integer) A unique number identifying this info, if available.
    - <owner>
      Owner of the info.
      - <name>
        The name of the owner.
    - <name>
      The name of the info.
    - <comment>
      The comment on the info.
    - <creation_time>
      Date and time the info was created.
    - <modification_time>
      Date and time the info was last modified.
    - <permissions>
      Permissions that the current user has on the info.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the info.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <update_time>
      Date and time the source of the info was read.
    - One of
      - <cert_bund_adv>
        An CERT-Bund advisory info element.
        - <title>
          Title of the advisory.
        - <summary>
          Summary text of the advisory.
        - <severity>
          Highest CVSS severity score of CVEs referenced by the advisory.
        - <cve_refs>
          Number of CVEs referenced by this advisory.
        - <raw_data> ?
          Source representation of the information. Only when details were requested.
      - <cpe>
        A CPE info element.
        - <cpe_name_id>
          NVD assigned cpeNameId of the CPE.
        - <title> ?
          The title of the CPE.
        - <severity>
          The highest CVSS severity score recorded for this CPE.
        - <cve_refs>
          The number CVE of references to this CPE.
        - <deprecated>
          Whether the CPE is deprecated.
        - <deprecated_by> *
          Another CPE the current one is deprecated by.
          - @cpe_id (uuid) CPE id the current CPE is deprecated by.
        - <cves> ?
          CVEs referring to this CPE. Only when details were requested.
          - <cve> *
            CVE referring to this CPE.
        - <references> ?
          References of this CPE. Only when details were requested.
          - <reference> *
            Reference of the CPE. Text contains type.
            - @href (text) Reference URL.
        - <raw_data> ?
          Source representation of the information. Only when details were requested.
      - <cve>
        A CVE info element.
        - <severity>
          CVSS severity score of the CVE.
        - <cvss_vector>
          CVSS base vector string.
        - <description>
          The CVE's description.
        - <products>
          Space separated list of CPEs affected by this.
        - <epss> ?
          Exploit Prediction Scoring System (EPSS) info if available.
          - <score>
            EPSS score of the CVE.
          - <percentile>
            EPSS percentile of the CVE.
        - <nvts> ?
          NVTs addressing this CVE. Only when details were requested.
          - <nvt> *
            NVT referring to this CPE.
            - @oid (oid)
            - <name>
              Name of the NVT.
        - <cert> ?
          List of CERT advisories referencing this CVE.
          - <cert_ref> *
            A CERT advisory reference.
            - @type (text) Type of the advisory (e.g. "DFN-CERT", "CERT-BUND").
            - <name>
              The name / ID of the advisory.
            - <title>
              The title of the advisory.
          - <warning> ?
            A warning message, e.g. when the database is unavailable.
        - <configuration_nodes> ?
          List of configuration nodes. Only when details were requested.
          - <node> *
            A configuration node for the CVE.
            - <operator>
              The operator for the match criteria.
            - <negate>
              A true or false value, whether the operator is negated.
            - <match_string> ?
              The match string for the node.
              - <criteria>
                A CPE match criteria.
              - <vulnerable>
                A true or false value, whether matching CPEs are considered vulnerable.
              - <version_start_including>
                From version (including).
              - <version_start_excluding>
                From version (excluding).
              - <version_end_including>
                Up to version (including).
              - <version_end_excluding>
                Up to version (exluding).
              - <matched_cpes>
                List of matching CPEs.
                - <name>
                  Name of the matching CPE.
                - <deprecated>
                  A true or false value, whether the CPE is deprecated.
                - <deprecated_by> ?
                  CPE ID the current CPE is deprecated by. Only when the CPE is deprecated.
                  - @cpe_id (uuid) CPE ID the current CPE is deprecated by.
            - <node> *
              Nodes can contain other nested nodes.
        - <references> ?
          References of this CVE. Only when details were requested.
          - <reference> *
            Reference of the CVE.
            - <url>
              The URL of the reference.
            - <tags>
              List of tags for the reference.
              - <tag> *
                Tag for a reference.
        - <raw_data> ?
          Source representation of the information. Only when details were requested.
      - <dfn_cert_adv>
        An DFN-CERT advisory info element.
        - <title>
          Title of the advisory.
        - <summary>
          Summary text of the advisory.
        - <severity>
          Highest CVSS severity score of CVEs referenced by the advisory.
        - <cve_refs>
          Number of CVEs referenced by this advisory.
        - <raw_data> ?
          Source representation of the information. Only when details were requested.
      - <nvt>
        A NVT info element.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      (text)
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <details>
    (boolean)
    Are details included in this response.
  - <info_count>
    - <filtered>
      Number of info elements after filtering.
    - <page>
      Number of info elements on current page.

#### 7.59.2 RNC

Command

    get_info
     = element get_info
         {
           attribute type { text }
           & attribute name { text }?
           & attribute info_id { text }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
         }

Response

    get_info_response
     = element get_info_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_info_response_info*
           & get_info_response_filters
           & get_info_response_sort
           & get_info_response_details
           & get_info_response_info_count
         }

    get_info_response_info
     = element info
         {
           attribute id { integer }?
           & get_info_response_info_owner
           & get_info_response_info_name
           & get_info_response_info_comment
           & get_info_response_info_creation_time
           & get_info_response_info_modification_time
           & get_info_response_info_permissions
           & get_info_response_info_user_tags?
           & get_info_response_info_update_time
           & ( get_info_response_info_cert_bund_adv
               | get_info_response_info_cpe
               | get_info_response_info_cve
               | get_info_response_info_dfn_cert_adv
               | get_info_response_info_nvt )
         }

    get_info_response_info_owner
     = element owner
         {
           get_info_response_info_owner_name
         }

    get_info_response_info_owner_name
     = element name
         {
           name
         }

    get_info_response_info_name
     = element name
         {
           name
         }

    get_info_response_info_comment
     = element comment
         {
           text
         }

    get_info_response_info_creation_time
     = element creation_time
         {
           iso_time
         }

    get_info_response_info_modification_time
     = element modification_time
         {
           iso_time
         }

    get_info_response_info_update_time
     = element update_time
         {
           iso_time
         }

    get_info_response_info_permissions
     = element permissions
         {
           get_info_response_info_permissions_permission*
         }

    get_info_response_info_permissions_permission
     = element permission
         {
           get_info_response_info_permissions_permission_name
         }

    get_info_response_info_permissions_permission_name
     = element name
         {
           name
         }

    get_info_response_info_user_tags
     = element user_tags
         {
           get_info_response_info_user_tags_count
           & get_info_response_info_user_tags_tag*
         }

    get_info_response_info_user_tags_count
     = element count
         {
           integer
         }

    get_info_response_info_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_info_response_info_user_tags_tag_name
           & get_info_response_info_user_tags_tag_value
           & get_info_response_info_user_tags_tag_comment
         }

    get_info_response_info_user_tags_tag_name
     = element name
         {
           text
         }

    get_info_response_info_user_tags_tag_value
     = element value
         {
           text
         }

    get_info_response_info_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_info_response_info_cert_bund_adv
     = element cert_bund_adv
         {
           get_info_response_info_cert_bund_adv_title
           & get_info_response_info_cert_bund_adv_summary
           & get_info_response_info_cert_bund_adv_severity
           & get_info_response_info_cert_bund_adv_cve_refs
           & get_info_response_info_cert_bund_adv_raw_data?
         }

    get_info_response_info_cert_bund_adv_title
     = element title
         {
           text
         }

    get_info_response_info_cert_bund_adv_summary
     = element summary
         {
           text
         }

    get_info_response_info_cert_bund_adv_severity
     = element severity
         {
           severity
         }

    get_info_response_info_cert_bund_adv_cve_refs
     = element cve_refs
         {
           integer
         }

    get_info_response_info_cert_bund_adv_raw_data
     = element raw_data
         {
           text
         }

    get_info_response_info_cpe
     = element cpe
         {
           get_info_response_info_cpe_cpe_name_id
           & get_info_response_info_cpe_title?
           & get_info_response_info_cpe_severity
           & get_info_response_info_cpe_cve_refs
           & get_info_response_info_cpe_deprecated
           & get_info_response_info_cpe_deprecated_by*
           & get_info_response_info_cpe_cves?
           & get_info_response_info_cpe_references?
           & get_info_response_info_cpe_raw_data?
         }

    get_info_response_info_cpe_cpe_name_id
     = element cpe_name_id
         {
           text
         }

    get_info_response_info_cpe_title
     = element title
         {
           text
         }

    get_info_response_info_cpe_severity
     = element severity
         {
           severity
         }

    get_info_response_info_cpe_cve_refs
     = element cve_refs
         {
           integer
         }

    get_info_response_info_cpe_deprecated
     = element deprecated
         {
           boolean
         }

    get_info_response_info_cpe_deprecated_by
     = element deprecated_by
         {
           attribute cpe_id { uuid }
         }

    get_info_response_info_cpe_cves
     = element cves
         {
           get_info_response_info_cpe_cves_cve*
         }

    get_info_response_info_cpe_cves_cve
     = element cve
         {
           text
         }

    get_info_response_info_cpe_references
     = element references
         {
           get_info_response_info_cpe_references_reference*
         }

    get_info_response_info_cpe_references_reference
     = element reference
         {
           text
           & attribute href { text }
         }

    get_info_response_info_cpe_raw_data
     = element raw_data
         {
           text
         }

    get_info_response_info_nvt
     = element nvt
         {
           text
         }

    get_info_response_info_cve
     = element cve
         {
           get_info_response_info_cve_severity
           & get_info_response_info_cve_cvss_vector
           & get_info_response_info_cve_description
           & get_info_response_info_cve_products
           & get_info_response_info_cve_epss?
           & get_info_response_info_cve_nvts?
           & get_info_response_info_cve_cert?
           & get_info_response_info_cve_configuration_nodes?
           & get_info_response_info_cve_references?
           & get_info_response_info_cve_raw_data?
         }

    get_info_response_info_cve_severity
     = element severity
         {
           severity
         }

    get_info_response_info_cve_cvss_vector
     = element cvss_vector
         {
           text
         }

    get_info_response_info_cve_description
     = element description
         {
           text
         }

    get_info_response_info_cve_products
     = element products
         {
           text
         }

    get_info_response_info_cve_epss
     = element epss
         {
           get_info_response_info_cve_epss_score
           & get_info_response_info_cve_epss_percentile
         }

    get_info_response_info_cve_epss_score
     = element score
         {
           decimal
         }

    get_info_response_info_cve_epss_percentile
     = element percentile
         {
           decimal
         }

    get_info_response_info_cve_nvts
     = element nvts
         {
           get_info_response_info_cve_nvts_nvt*
         }

    get_info_response_info_cve_nvts_nvt
     = element nvt
         {
           attribute oid { oid }?
           & get_info_response_info_cve_nvts_nvt_name
         }

    get_info_response_info_cve_nvts_nvt_name
     = element name
         {
           text
         }

    get_info_response_info_cve_cert
     = element cert
         {
           get_info_response_info_cve_cert_cert_ref*
           & get_info_response_info_cve_cert_warning?
         }

    get_info_response_info_cve_cert_cert_ref
     = element cert_ref
         {
           attribute type { text }?
           & get_info_response_info_cve_cert_cert_ref_name
           & get_info_response_info_cve_cert_cert_ref_title
         }

    get_info_response_info_cve_cert_cert_ref_name
     = element name
         {
           text
         }

    get_info_response_info_cve_cert_cert_ref_title
     = element title
         {
           text
         }

    get_info_response_info_cve_cert_warning
     = element warning
         {
           text
         }

    get_info_response_info_cve_configuration_nodes
     = element configuration_nodes
         {
           get_info_response_info_cve_configuration_nodes_node*
         }

    get_info_response_info_cve_configuration_nodes_node
     = element node
         {
           get_info_response_info_cve_configuration_nodes_node_operator
           & get_info_response_info_cve_configuration_nodes_node_negate
           & get_info_response_info_cve_configuration_nodes_node_match_string?
           & get_info_response_info_cve_configuration_nodes_node_node*?
         }

    get_info_response_info_cve_configuration_nodes_node_operator
     = element operator
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_negate
     = element negate
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string
     = element match_string
         {
           get_info_response_info_cve_configuration_nodes_node_match_string_criteria
           & get_info_response_info_cve_configuration_nodes_node_match_string_vulnerable
           & get_info_response_info_cve_configuration_nodes_node_match_string_version_start_including
           & get_info_response_info_cve_configuration_nodes_node_match_string_version_start_excluding
           & get_info_response_info_cve_configuration_nodes_node_match_string_version_end_including
           & get_info_response_info_cve_configuration_nodes_node_match_string_version_end_excluding
           & get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_criteria
     = element criteria
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_vulnerable
     = element vulnerable
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_version_start_including
     = element version_start_including
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_version_start_excluding
     = element version_start_excluding
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_version_end_including
     = element version_end_including
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_version_end_excluding
     = element version_end_excluding
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes
     = element matched_cpes
         {
           get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes_name
           & get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes_deprecated
           & get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes_deprecated_by?
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes_name
     = element name
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes_deprecated
     = element deprecated
         {
           text
         }

    get_info_response_info_cve_configuration_nodes_node_match_string_matched_cpes_deprecated_by
     = element deprecated_by
         {
           attribute cpe_id { uuid }?
         }

    get_info_response_info_cve_configuration_nodes_node_node
     = element node
         {
           node
         }

    get_info_response_info_cve_references
     = element references
         {
           get_info_response_info_cve_references_reference*
         }

    get_info_response_info_cve_references_reference
     = element reference
         {
           get_info_response_info_cve_references_reference_url
           & get_info_response_info_cve_references_reference_tags
         }

    get_info_response_info_cve_references_reference_url
     = element url
         {
           text
         }

    get_info_response_info_cve_references_reference_tags
     = element tags
         {
           get_info_response_info_cve_references_reference_tags_tag*?
         }

    get_info_response_info_cve_references_reference_tags_tag
     = element tag
         {
           text
         }

    get_info_response_info_cve_raw_data
     = element raw_data
         {
           text
         }

    get_info_response_info_dfn_cert_adv
     = element dfn_cert_adv
         {
           get_info_response_info_dfn_cert_adv_title
           & get_info_response_info_dfn_cert_adv_summary
           & get_info_response_info_dfn_cert_adv_severity
           & get_info_response_info_dfn_cert_adv_cve_refs
           & get_info_response_info_dfn_cert_adv_raw_data?
         }

    get_info_response_info_dfn_cert_adv_title
     = element title
         {
           text
         }

    get_info_response_info_dfn_cert_adv_summary
     = element summary
         {
           text
         }

    get_info_response_info_dfn_cert_adv_severity
     = element severity
         {
           severity
         }

    get_info_response_info_dfn_cert_adv_cve_refs
     = element cve_refs
         {
           integer
         }

    get_info_response_info_dfn_cert_adv_raw_data
     = element raw_data
         {
           text
         }

    get_info_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_info_response_filters_term
           & get_info_response_filters_name?
           & get_info_response_filters_keywords
         }

    get_info_response_filters_term
     = element term    # type text
         {
         }

    get_info_response_filters_name
     = element name
         {
           text
         }

    get_info_response_filters_keywords
     = element keywords
         {
           get_info_response_filters_keywords_keyword*
         }

    get_info_response_filters_keywords_keyword
     = element keyword
         {
           get_info_response_filters_keywords_keyword_column
           & get_info_response_filters_keywords_keyword_relation
           & get_info_response_filters_keywords_keyword_value
         }

    get_info_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_info_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_info_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_info_response_sort
     = element sort
         {
           text
           & get_info_response_sort_field
         }

    get_info_response_sort_field
     = element field
         {
           get_info_response_sort_field_order
         }

    get_info_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_info_response_info_count
     = element info_count
         {
           get_info_response_info_count_filtered
           & get_info_response_info_count_page
         }

    get_info_response_info_count_filtered
     = element filtered
         {
           integer
         }

    get_info_response_info_count_page
     = element page
         {
           integer
         }

    get_info_response_details
     = element details    # type boolean
         {
         }

#### 7.59.3 Example: Get a info about cpe:/a:gnu:gzip:1.3.3 with all details

Client

     <get_info type="CPE"
               name="cpe:/a:gnu:gzip:1.3.3"
               details="1"/>

Manager

     <get_info_response status_text="OK"
                        status="200">
       <info id="28139">
         <name>cpe:/a:gnu:gzip:1.3.3</name>
         <comment/>
         <creation_time>2007-09-14T17:36:49Z</creation_time>
         <modification_time>2007-09-14T17:36:49Z</modification_time>
         <writable>0</writable>
         <in_use>0</in_use>
         <update_time>2012-10-26T13:18:00.000+0000</update_time>
         <cpe>
           <title>GNU Gzip 1.3.3</title>
           <score>100</score>
           <cve_refs>5</cve_refs>
           <status>DRAFT</status>
           <cves>
             <cve>
               <entry id="CVE-2004-0603">
                 <vuln:cvss>
                   <cvss:base_metrics>
                     <cvss:score>10.0</cvss:score>
                   </cvss:base_metrics>
                 </vuln:cvss>
               </entry>
             </cve>
             <cve>
               <entry id="CVE-2010-0001">
                 <vuln:cvss>
                   <cvss:base_metrics>
                     <cvss:score>6.8</cvss:score>
                   </cvss:base_metrics>
                 </vuln:cvss>
               </entry>
             </cve>
             <cve>
               <entry id="CVE-2009-2624">
                 <vuln:cvss>
                   <cvss:base_metrics>
                     <cvss:score>6.8</cvss:score>
                   </cvss:base_metrics>
                 </vuln:cvss>
               </entry>
             </cve>
             <cve>
               <entry id="CVE-2005-1228">
                 <vuln:cvss>
                   <cvss:base_metrics>
                     <cvss:score>5.0</cvss:score>
                   </cvss:base_metrics>
                 </vuln:cvss>
               </entry>
             </cve>
             <cve>
               <entry id="CVE-2005-0988">
                 <vuln:cvss>
                   <cvss:base_metrics>
                     <cvss:score>3.7</cvss:score>
                   </cvss:base_metrics>
                 </vuln:cvss>
               </entry>
             </cve>
           </cves>
           <raw_data>
             <cpe-item name="cpe:/a:gnu:gzip:1.3.3">
               <title xml:lang="en-US">GNU Gzip 1.3.3</title>
               <meta:item-metadata nvd-id="28139"
                                   status="DRAFT"
                                   modification-date="2007-09-14T17:36:49.090Z"/>
             </cpe-item>
           </raw_data>
         </cpe>
       </info>
       <details>1</details>
       <filters id="(null)">
         <term/>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <info max="-1"
             start="1"/>
       <info_count>
         <filtered>1</filtered>
         <page>1</page>
       </info_count>
     </get_info_response>

#### 7.59.3 Example: Get a info CVE-1999-0010 without details

Client

     <get_info name="CVE-2011-0018"
               type="cve"/>

Manager

     <get_info_response status_text="OK"
                        status="200">
       <info id="CVE-2011-0018">
         <name>CVE-2011-0018</name>
         <comment/>
         <creation_time>2011-01-28T16:00:02Z</creation_time>
         <modification_time>2018-10-10T20:09:00Z</modification_time>
         <update_time>2020-11-13T02:30:00.000+0000</update_time>
         <writable>0</writable>
         <in_use>0</in_use>
         <update_time>2012-10-26T13:18:00.000+0000</update_time>
         <cve>
           <score>90</score>
           <cvss_vector>AV:N/AC:L/Au:S/C:C/I:C/A:C</cvss_vector>
           <description>
             The email function in manage_sql.c in ...(truncated for example)
           </description>
           <products>
             cpe:/a:openvas:openvas_manager:1.0.1 ...(truncated for example)
           </products>
         </cve>
       </info>
       <filters id="(null)">
         <term/>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <info max="-1"
             start="1"/>
       <info_count>
         <filtered>1</filtered>
         <page>1</page>
       </info_count>
     </get_info_response>

### 7.60 Command `get_integration_configs`

In short: Get integration configurations.

The client uses the get_integration_configs command to retrieve a list of integration configurations.

#### 7.60.1 Structure

- Command
  - <integration_config_id> ?
    UUID of a specific integration configuration.
  - <filter> ?
    Filter term.
  - <filt_id> ?
    Filter UUID.
- Response
  - @status (status)
  - @status_text (text)
  - <integration_config> *
    - @id (uuid)
    - <owner>
      .
    - <name>
      .
    - <comment>
      .
    - <creation_time>
      .
    - <modification_time>
      .
    - <writable>
      .
    - <in_use>
      .
    - <permissions>
      .
    - <service>
      Service configuration.
      - <url>
        Service URL.
    - <oidc>
      OIDC configuration.
      - <url>
        OIDC provider URL.
      - <client>
        OIDC client configuration.
        - <id>
          OIDC client ID.
  - <filters> ?
    - @id (uuid)
    - <term>
      .
    - <keywords>
      .
  - <sort> ?
    - <field>
      .
  - <integration_configs> ?
    - @start (integer)
    - @max (integer)
  - <integration_config_count> ?
    - <filtered>
      .
    - <page>
      .

#### 7.60.2 RNC

Command

    get_integration_configs
     = element get_integration_configs
         {
           get_integration_configs_integration_config_id?
           & get_integration_configs_filter?
           & get_integration_configs_filt_id?
         }

    get_integration_configs_integration_config_id
     = element integration_config_id
         {

            ERROR

         }

    get_integration_configs_filter
     = element filter
         {

            ERROR

         }

    get_integration_configs_filt_id
     = element filt_id
         {

            ERROR

         }

Response

    get_integration_configs_response
     = element get_integration_configs_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_integration_configs_response_integration_config*
           & get_integration_configs_response_filters?
           & get_integration_configs_response_sort?
           & get_integration_configs_response_integration_configs?
           & get_integration_configs_response_integration_config_count?
         }

    get_integration_configs_response_integration_config
     = element integration_config
         {
           attribute id { uuid }
           & owner
           & name
           & comment
           & creation_time
           & modification_time
           & writable
           & in_use
           & permissions
           & get_integration_configs_response_integration_config_service
           & get_integration_configs_response_integration_config_oidc
         }

    get_integration_configs_response_integration_config_service
     = element service
         {
           get_integration_configs_response_integration_config_service_url
         }

    get_integration_configs_response_integration_config_service_url
     = element url
         {

            ERROR

         }

    get_integration_configs_response_integration_config_oidc
     = element oidc
         {
           get_integration_configs_response_integration_config_oidc_url
           & get_integration_configs_response_integration_config_oidc_client
         }

    get_integration_configs_response_integration_config_oidc_url
     = element url
         {

            ERROR

         }

    get_integration_configs_response_integration_config_oidc_client
     = element client
         {
           get_integration_configs_response_integration_config_oidc_client_id
         }

    get_integration_configs_response_integration_config_oidc_client_id
     = element id
         {

            ERROR

         }

    get_integration_configs_response_filters
     = element filters
         {
           attribute id { uuid }
           & term
           & keywords
         }

    get_integration_configs_response_sort
     = element sort
         {
           field
         }

    get_integration_configs_response_integration_configs
     = element integration_configs
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_integration_configs_response_integration_config_count
     = element integration_config_count
         {
           filtered
           & page
         }

#### 7.60.3 Example:

Client

     <get_integration_configs/>

Manager

     <get_integration_configs_response status="200"
                                       status_text="OK">
       <integration_config id="1e1ee952-84b6-42cf-8431-2db3c5b5ca73">
         <owner>
           <name>username</name>
         </owner>
         <name>Security Intelligence Integration Configuration</name>
         <comment/>
         <creation_time>2026-03-20T15:21:22Z</creation_time>
         <modification_time>2026-03-20T15:27:56Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
       </integration_config>
       <filters id="">
         <term>first=1 rows=10 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>10</value>
           </keyword>
           <keyword>
             <column>sort</column>
             <relation>=</relation>
             <value>name</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <integration_configs start="1"
                            max="1000"/>
       <integration_config_count>
         1
         <filtered>1</filtered>
         <page>1</page>
       </integration_config_count>
     </get_integration_configs_response>

#### 7.60.3 Example:

Client

     <get_integration_configs integration_config_id="1e1ee952-84b6-42cf-8431-2db3c5b5ca73"
                              detail="1"/>

Manager

     <get_integration_configs_response status="200"
                                       status_text="OK">
       <integration_config id="1e1ee952-84b6-42cf-8431-2db3c5b5ca73">
         <owner>
           <name>username</name>
         </owner>
         <name>Security Intelligence Integration Configuration</name>
         <comment/>
         <creation_time>2026-03-20T15:21:22Z</creation_time>
         <modification_time>2026-03-20T15:27:56Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <service>
           <url>https://osi.example.com</url>
         </service>
         <oidc>
           <url>https://oidc.example.com</url>
           <client>
             <id>client-id</id>
           </client>
         </oidc>
       </integration_config>
       <filters id="">
         <term>first=1 rows=10 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>10</value>
           </keyword>
           <keyword>
             <column>sort</column>
             <relation>=</relation>
             <value>name</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <integration_configs start="1"
                            max="1000"/>
       <integration_config_count>
         1
         <filtered>1</filtered>
         <page>1</page>
       </integration_config_count>
     </get_integration_configs_response>

### 7.61 Command `get_license`

In short: Get the current license.

The client uses the get_license command to get the current license.

This command is only available if gvmd is built with the licensing library (libtheia).

#### 7.61.1 Structure

- Command
  Empty single element.
- Response
  - @status (status)
  - @status_text (text)
  - <license>
    The license information.
    - <status>
      Status of the license.
    - <content>
      The main content of the license file.
      - <meta>
        License metadata.
        - <version>
          Version of the license file schema.
        - <id>
          Unique Identifier of the license.
        - <comment>
          Short comment summarizing the license.
        - <type>
          License type, e.g. "trial" or "commercial".
        - <customer_name>
          Name of the customer the license is issued for.
        - <created>
          Time the license was created.
        - <begins>
          Time after which the license is valid.
        - <expires>
          Time the license expires.
      - <appliance>
        Hardware and appliance information.
        - <model>
          Appliance model, e.g. "one".
        - <model_type>
          Appliance model type, e.g. "virtual" or "hardware".
        - <sensor>
          Whether the license is applied to a sensor or not.
      - <keys>
        Base64 encoded access keys, e.g. feed keys.
        - <key> *
          A Base64 encoded access key.
          - @name (text) Name of the key.
      - <signatures>
        Signatures of the license.
        - <signature> *
          A signature info item.
          - @name (text) Name of the signature.

#### 7.61.2 RNC

Command

    get_license
     = element get_license
         {
           ""
         }

Response

    get_license_response
     = element get_license_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_license_response_license
         }

    get_license_response_license
     = element license
         {
           get_license_response_license_status
           & get_license_response_license_content
         }

    get_license_response_license_status
     = element status
         {
           text
         }

    get_license_response_license_content
     = element content
         {
           get_license_response_license_content_meta
           & get_license_response_license_content_appliance
           & get_license_response_license_content_keys
           & get_license_response_license_content_signatures
         }

    get_license_response_license_content_meta
     = element meta
         {
           get_license_response_license_content_meta_version
           & get_license_response_license_content_meta_id
           & get_license_response_license_content_meta_comment
           & get_license_response_license_content_meta_type
           & get_license_response_license_content_meta_customer_name
           & get_license_response_license_content_meta_created
           & get_license_response_license_content_meta_begins
           & get_license_response_license_content_meta_expires
         }

    get_license_response_license_content_meta_version
     = element version
         {
           text
         }

    get_license_response_license_content_meta_id
     = element id
         {
           text
         }

    get_license_response_license_content_meta_comment
     = element comment
         {
           text
         }

    get_license_response_license_content_meta_type
     = element type
         {
           text
         }

    get_license_response_license_content_meta_customer_name
     = element customer_name
         {
           text
         }

    get_license_response_license_content_meta_created
     = element created
         {
           iso_time
         }

    get_license_response_license_content_meta_begins
     = element begins
         {
           iso_time
         }

    get_license_response_license_content_meta_expires
     = element expires
         {
           iso_time
         }

    get_license_response_license_content_appliance
     = element appliance
         {
           get_license_response_license_content_appliance_model
           & get_license_response_license_content_appliance_model_type
           & get_license_response_license_content_appliance_sensor
         }

    get_license_response_license_content_appliance_model
     = element model
         {
           text
         }

    get_license_response_license_content_appliance_model_type
     = element model_type
         {
           text
         }

    get_license_response_license_content_appliance_sensor
     = element sensor
         {
           boolean
         }

    get_license_response_license_content_keys
     = element keys
         {
           get_license_response_license_content_keys_key*
         }

    get_license_response_license_content_keys_key
     = element key
         {
           text # RNC limitation: text
           & attribute name { text }?
         }

    get_license_response_license_content_signatures
     = element signatures
         {
           get_license_response_license_content_signatures_signature*
         }

    get_license_response_license_content_signatures_signature
     = element signature
         {
           text # RNC limitation: text
           & attribute name { text }?
         }

#### 7.61.3 Example: Get the current license

Client

     <get_license/>

Manager

     <get_license_response status="200"
                           status_text="OK">
       <license>
         <status>active</status>
         <content>
           <meta>
             <id>4711</id>
             <version>1.0.0</version>
             <comment>Test License</comment>
             <type>trial</type>
             <customer_name>Jane Doe</customer_name>
             <created>2021-08-27T06:05:21Z</created>
             <begins>2021-08-27T07:05:21Z</begins>
             <expires>2021-09-04T07:05:21Z</expires>
           </meta>
           <appliance>
             <model>trial</model>
             <model_type>virtual</model_type>
             <sensor>0</sensor>
           </appliance>
           <keys>
             <key name="feed">*base64 GSF key*</key>
           </keys>
           <signatures>
             <signature name="license">*base64 signature*</signature>
           </signatures>
         </content>
       </license>
     </get_license_response>

### 7.62 Command `get_notes`

In short: Get one or many notes.

The client uses the get_notes command to get note information. If the command sent by the client was valid, the manager will reply with a list of notes to the client.

#### 7.62.1 Structure

- Command
  - @note_id (uuid) ID of single note to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option task_id (uuid) UUID of the Task the Note applies to
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column nvt (text) Name of the NVT the Note applies to
    - column text (text) Text of the Note
    - column nvt_id (oid) OID of the NVT the Note applies to
    - column task_name (text) Name of the Task the Note applies to
    - column hosts (text) Hosts the Note applies to
    - column port (text) Port (location) the Note applies to
    - column active (boolean) Whether the Note is active
    - column result (uuid) UUID of the result the Note applies to
    - column severity (severity) Minimum severity of results the Note applies to
  - @filt_id (uuid) ID of filter to use to filter query.
  - @nvt_oid (oid)
  - @task_id (uuid)
  - @details (boolean) Whether to include full details.
  - @result (boolean) Whether to include the associated result.
    More Details
    Requires "details" to be true.
- Response
  - @status (status)
  - @status_text (text)
  - <note> *
    (note)
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <notes>
    - @start (integer) First note.
    - @max (integer) Maximum number of notes.
  - <note_count>
    - <filtered>
      Number of notes after filtering.
    - <page>
      Number of notes on current page.

#### 7.62.2 RNC

Command

    get_notes
     = element get_notes
         {
           attribute note_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute nvt_oid { oid }?
           & attribute task_id { uuid }?
           & attribute details { boolean }?
           & attribute result { boolean }?
         }

Response

    get_notes_response
     = element get_notes_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_notes_response_note*
           & get_notes_response_filters
           & get_notes_response_sort
           & get_notes_response_notes
           & get_notes_response_note_count
         }

    get_notes_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_notes_response_filters_term
           & get_notes_response_filters_name?
           & get_notes_response_filters_keywords
         }

    get_notes_response_filters_term
     = element term
         {
           text
         }

    get_notes_response_filters_name
     = element name
         {
           text
         }

    get_notes_response_filters_keywords
     = element keywords
         {
           get_notes_response_filters_keywords_keyword*
         }

    get_notes_response_filters_keywords_keyword
     = element keyword
         {
           get_notes_response_filters_keywords_keyword_column
           & get_notes_response_filters_keywords_keyword_relation
           & get_notes_response_filters_keywords_keyword_value
         }

    get_notes_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_notes_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_notes_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_notes_response_sort
     = element sort
         {
           text
           & get_notes_response_sort_field
         }

    get_notes_response_sort_field
     = element field
         {
           get_notes_response_sort_field_order
         }

    get_notes_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_notes_response_notes
     = element notes
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_notes_response_note_count
     = element note_count
         {
           get_notes_response_note_count_filtered
           & get_notes_response_note_count_page
         }

    get_notes_response_note_count_filtered
     = element filtered
         {
           integer
         }

    get_notes_response_note_count_page
     = element page
         {
           integer
         }

    get_notes_response_note
     = element note    # type note
         {
           attribute id { uuid }
           & note_permissions
           & note_owner
           & note_nvt
           & note_text
           & note_creation_time
           & note_modification_time
           & note_writable
           & note_in_use
           & note_active
           & note_orphan
           & note_user_tags?
           & ( note_hosts
               & note_port
               & note_severity
               & note_task
               & note_end_time
               & note_result? )?
         }

#### 7.62.3 Example: Get one or many notes

Client

     <get_notes/>

Manager

     <get_notes_response status="200"
                         status_text="OK">
       <note id="b76b81a7-9df8-42df-afff-baa9d4620128">
         <nvt oid="1.3.6.1.4.1.25623.1.0.75">
           <name>Test NVT: long lines</name>
         </nvt>
         <creation_time>2013-01-09T09:47:41+01:00</creation_time>
         <modification_time>2013-01-09T09:47:41+01:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <active>1</active>
         <orphan>1</orphan>
         <text excerpt="0">This is the full text of the note.</text>
       </note>
       ...
     </get_notes_response>

#### 7.62.3 Example: Get details of a single note and result to which it applies

Client

     <get_notes note_id="7f618bbb-4664-419e-9bbf-367d93954cb0"
                details="1"
                result="1"/>

Manager

     <get_notes_response status="200"
                         status_text="OK">
       <note id="7f618bbb-4664-419e-9bbf-367d93954cb0">
         <nvt oid="1.3.6.1.4.1.25623.1.0.77">
           <name>Test NVT: control chars in report result</name>
         </nvt>
         <creation_time>2015-07-15T15:05:55Z</creation_time>
         <modification_time>2015-07-15T15:05:55Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <active>1</active>
         <end_time/>
         <text>note fixed to result</text>
         <hosts>127.0.0.1</hosts>
         <port>general/tcp</port>
         <task id="40b236a9-2b0f-4813-b8c7-bc2b98d9d7e4">
           <name>test</name>
         </task>
         <orphan>0</orphan>
         <result id="0c95e6b3-1100-4dfd-88f1-4bed1fad29de">
           <host>127.0.0.1</host>
           <port>general/tcp</port>
           <nvt oid="1.3.6.1.4.1.25623.1.0.77">
             <name>Test NVT: control chars in report result</name>
             <cvss_base>5</cvss_base>
             <severities score="50"/>
             <cve/>
           </nvt>
           <threat>Medium</threat>
           <description>Warning with control char between fullstops: . .</description>
         </result>
       </note>
       ...
     </get_notes_response>

### 7.63 Command `get_nvt_families`

In short: Get a list of all NVT families.

The client uses the get_nvt_families command to get NVT family information. If the command sent by the client was valid, the manager will reply with a list of NVT families to the client.

#### 7.63.1 Structure

- Command
  - @sort_order (sort_order)
- Response
  - @status (status)
  - @status_text (text)
  - <families>
    - <family> *
      - <name>
        The name of the family.
      - <max_nvt_count>
        The number of NVTs in the family.

#### 7.63.2 RNC

Command

    get_nvt_families
     = element get_nvt_families
         {
           attribute sort_order { sort_order }?
         }

Response

    get_nvt_families_response
     = element get_nvt_families_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_nvt_families_response_families
         }

    get_nvt_families_response_families
     = element families
         {
           get_nvt_families_response_families_family*
         }

    get_nvt_families_response_families_family
     = element family
         {
           get_nvt_families_response_families_family_name
           & get_nvt_families_response_families_family_max_nvt_count
         }

    get_nvt_families_response_families_family_name
     = element name
         {
           name
         }

    get_nvt_families_response_families_family_max_nvt_count
     = element max_nvt_count
         {
           integer
         }

#### 7.63.3 Example: Get the NVT families

Client

     <get_nvt_families/>

Manager

     <get_nvt_families_response status="200"
                                status_text="OK">
       <families>
         <family>
           <name>Credentials</name>
           <max_nvt_count>8</max_nvt_count>
         </family>
         <family>
           <name>Port scanners</name>
           <max_nvt_count>12</max_nvt_count>
         </family>
         ...
       </families>
     </get_nvt_families_response>

### 7.64 Command `get_nvts`

In short: Get one or many NVTs.

The client uses the get_nvts command to get NVT information.

This command may always include a details flag, a config, a sort order and a sort field. If the command includes a details flag, the manager also consults the timeout, preference_count and preferences flags.

The NVT OID, family name and config attributes limit the listing to a single NVT or all NVTs in a particular family and/or config.

If the details flag is present the manager will send full details of the NVT, otherwise it will send just the NVT name.

With the preferences flag the manager includes in the listing, the values of each listed NVT's preferences for the given config. The timeout flag does the same for the special timeout preference. If the config contains no values for a preference, the default value of the preference is returned. The same applies if no config is given.

If the manager possesses an NVT collection, it will reply with the NVT information. If the manager cannot access a list of available NVTs at that time, it will reply with the 503 response.

#### 7.64.1 Structure

- Command
  - @nvt_oid (oid) Single NVT to get.
  - @details (boolean) Whether to include full details.
  - @lean (boolean) Whether to send fewer details.
  - @preferences (boolean) Whether to include preference.
  - @preference_count (boolean) Whether to include preference count.
  - @skip_cert_refs (boolean) Whether to exclude refs of types cert-bund and dfn-cert.
  - @skip_tags (boolean) Whether to exclude user tags.
  - @timeout (boolean) Whether to include the special timeout preference.
  - @config_id (uuid) ID of config to which to limit the NVT listing.
  - @preferences_config_id (uuid) ID of config to use for preference values.
  - @family (text) Family to which to limit NVT listing.
  - @sort_order (sort_order)
  - @sort_field (text)
- Response
  - @status (status)
  - @status_text (text)
  - <nvt>
    - @oid (oid)
    - <name>
      The name of the NVT.
    - <user_tags> ?
      Info on tags attached to the NVT.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <discovery> ?
      Whether the NVT is marked as a discovery NVT.
    - The group?
      - <creation_time>
        The creation time of the NVT.
      - <modification_time>
        The modification time of the NVT.
      - <category>
        The category of the NVT.
        One of:
        0
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        More Details
        0: init
        1: scanner
        2: settings
        3: infos
        4: attack
        5: mixed
        6: destructive attack
        7: denial
        8: kill host
        9: flood
        10: end
        11: unknown
      - <family>
        Name of the family the NVT belongs to.
      - <cvss_base>
        CVSS base score of the NVT.
      - <severities>
        (severities)
        Severity information of the NVT.
      - <qod>
        The quality of detection (QoD) of the NVT.
        - <value>
          The numeric QoD value.
        - <type>
          The QoD type.
      - <refs>
        List of references of various types for this vulnerability test.
        - <ref> *
          A reference.
          - @id (text) ID of the reference.
          - @type (text) Type of the reference, for example "cve", "dfn-cert", "cert-bund".
        - <warning> ?
          A warning message, e.g. when the CERT database is not available.
      - <tags>
        The tags of the NVT, separated by vertical bars.
      - <preference_count> ?
        The number of preferences for the NVT.
      - <timeout> ?
        The timeout of the NVT.
      - <default_timeout> ?
        The default_timeout of the NVT.
      - <solution>
        Solution for the vulnerability.
        - @type (text) The solution type, for example "VendorFix".
        - @method (text) The solution method, for example "DebianAPTUpgrade".
      - <epss> ?
        Exploit Prediction Scoring System (EPSS) info if available.
        - <max_severity>
          EPSS info of the referenced CVE with the highest severity.
          - <score>
            EPSS score of the CVE.
          - <percentile>
            EPSS percentile of the CVE.
          - <cve>
            The representative CVE chosen.
            - @id (text) CVE-ID of the CVE.
            - <severity> ?
              Severity (CVSS) score of the CVE if available.
          More Details
          In case there are multiple CVEs referenced by the NVT tied for the highest severity, they are also sorted by EPSS score and modification time and the first one is chosen.
        - <max_epss>
          EPSS info of the referenced CVE with the highest EPSS score.
          - <score>
            EPSS score of the CVE.
          - <percentile>
            EPSS percentile of the CVE.
          - <cve>
            The representative CVE chosen.
            - @id (text) CVE-ID of the CVE.
            - <severity> ?
              Severity (CVSS) score of the CVE if available.
          More Details
          In case there are multiple CVEs referenced by the NVT tied for the highest EPSS score, they are also sorted by severity and modification time and the first one is chosen.
      - <preferences> ?
        List of preferences of the NVT.
        - <timeout>
          The timeout of the NVT.
        - <default_timeout>
          The default timeout of the NVT.
        - <preference> *
          - <nvt>
            NVT to which preference applies.
            - @oid (oid)
            - <name>
              The name of the NVT.
          - <name>
            The name of the preference.
          - <hr_name>
            The human readable name of the preference.
          - <id>
            The ID of the preference.
          - <type>
            The type of the preference.
          - <value>
            The value of the preference.
          - <alt> *
            An alternate value of the preference.
          - <default>
            The default value of the preference.

#### 7.64.2 RNC

Command

    get_nvts
     = element get_nvts
         {
           attribute nvt_oid { oid }
           & attribute details { boolean }?
           & attribute lean { boolean }?
           & attribute preferences { boolean }?
           & attribute preference_count { boolean }?
           & attribute skip_cert_refs { boolean }?
           & attribute skip_tags { boolean }?
           & attribute timeout { boolean }?
           & attribute config_id { uuid }?
           & attribute preferences_config_id { uuid }?
           & attribute family { text }?
           & attribute sort_order { sort_order }?
           & attribute sort_field { text }?
         }

Response

    get_nvts_response
     = element get_nvts_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_nvts_response_nvt
         }

    get_nvts_response_nvt
     = element nvt
         {
           attribute oid { oid }
           & get_nvts_response_nvt_name
           & get_nvts_response_nvt_user_tags?
           & get_nvts_response_nvt_discovery?
           & ( get_nvts_response_nvt_creation_time
               & get_nvts_response_nvt_modification_time
               & get_nvts_response_nvt_category
               & get_nvts_response_nvt_family
               & get_nvts_response_nvt_cvss_base
               & get_nvts_response_nvt_severities
               & get_nvts_response_nvt_qod
               & get_nvts_response_nvt_refs
               & get_nvts_response_nvt_tags
               & get_nvts_response_nvt_preference_count?
               & get_nvts_response_nvt_timeout?
               & get_nvts_response_nvt_default_timeout?
               & get_nvts_response_nvt_solution
               & get_nvts_response_nvt_epss?
               & get_nvts_response_nvt_preferences? )?
         }

    get_nvts_response_nvt_name
     = element name
         {
           name
         }

    get_nvts_response_nvt_category
     = element category
         {
           xsd:token { pattern = "0|1|2|3|4|5|6|7|8|9|10|11" }
         }

    get_nvts_response_nvt_creation_time
     = element creation_time
         {
           iso_time
         }

    get_nvts_response_nvt_modification_time
     = element modification_time
         {
           iso_time
         }

    get_nvts_response_nvt_user_tags
     = element user_tags
         {
           get_nvts_response_nvt_user_tags_count
           & get_nvts_response_nvt_user_tags_tag*
         }

    get_nvts_response_nvt_user_tags_count
     = element count
         {
           integer
         }

    get_nvts_response_nvt_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_nvts_response_nvt_user_tags_tag_name
           & get_nvts_response_nvt_user_tags_tag_value
           & get_nvts_response_nvt_user_tags_tag_comment
         }

    get_nvts_response_nvt_user_tags_tag_name
     = element name
         {
           text
         }

    get_nvts_response_nvt_user_tags_tag_value
     = element value
         {
           text
         }

    get_nvts_response_nvt_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_nvts_response_nvt_family
     = element family
         {
           text
         }

    get_nvts_response_nvt_cvss_base
     = element cvss_base
         {
           text
         }

    get_nvts_response_nvt_severities
     = element severities    # type severities
         {
           attribute score { severity }
           & severities_severity*
         }

    get_nvts_response_nvt_qod
     = element qod
         {
           get_nvts_response_nvt_qod_value
           & get_nvts_response_nvt_qod_type
         }

    get_nvts_response_nvt_qod_value
     = element value
         {
           integer
         }

    get_nvts_response_nvt_qod_type
     = element type
         {
           text
         }

    get_nvts_response_nvt_refs
     = element refs
         {
           get_nvts_response_nvt_refs_ref*
           & get_nvts_response_nvt_refs_warning?
         }

    get_nvts_response_nvt_refs_ref
     = element ref
         {
           attribute id { text }?
           & attribute type { text }?
         }

    get_nvts_response_nvt_refs_warning
     = element warning
         {
           text
         }

    get_nvts_response_nvt_tags
     = element tags
         {
           text
         }

    get_nvts_response_nvt_discovery
     = element discovery
         {
           integer
         }

    get_nvts_response_nvt_preference_count
     = element preference_count
         {
           text
         }

    get_nvts_response_nvt_timeout
     = element timeout
         {
           text
         }

    get_nvts_response_nvt_default_timeout
     = element default_timeout
         {
           text
         }

    get_nvts_response_nvt_solution
     = element solution
         {
           text
           & attribute type { text }?
           & attribute method { text }?
         }

    get_nvts_response_nvt_epss
     = element epss
         {
           get_nvts_response_nvt_epss_max_severity
           & get_nvts_response_nvt_epss_max_epss
         }

    get_nvts_response_nvt_epss_max_severity
     = element max_severity
         {
           get_nvts_response_nvt_epss_max_severity_score
           & get_nvts_response_nvt_epss_max_severity_percentile
           & get_nvts_response_nvt_epss_max_severity_cve
         }

    get_nvts_response_nvt_epss_max_severity_score
     = element score
         {
           decimal
         }

    get_nvts_response_nvt_epss_max_severity_percentile
     = element percentile
         {
           decimal
         }

    get_nvts_response_nvt_epss_max_severity_cve
     = element cve
         {
           attribute id { text }?
           & get_nvts_response_nvt_epss_max_severity_cve_severity?
         }

    get_nvts_response_nvt_epss_max_severity_cve_severity
     = element severity
         {
           severity
         }

    get_nvts_response_nvt_epss_max_epss
     = element max_epss
         {
           get_nvts_response_nvt_epss_max_epss_score
           & get_nvts_response_nvt_epss_max_epss_percentile
           & get_nvts_response_nvt_epss_max_epss_cve
         }

    get_nvts_response_nvt_epss_max_epss_score
     = element score
         {
           decimal
         }

    get_nvts_response_nvt_epss_max_epss_percentile
     = element percentile
         {
           decimal
         }

    get_nvts_response_nvt_epss_max_epss_cve
     = element cve
         {
           attribute id { text }?
           & get_nvts_response_nvt_epss_max_epss_cve_severity?
         }

    get_nvts_response_nvt_epss_max_epss_cve_severity
     = element severity
         {
           severity
         }

    get_nvts_response_nvt_preferences
     = element preferences
         {
           text
           & get_nvts_response_nvt_preferences_timeout
           & get_nvts_response_nvt_preferences_default_timeout
           & get_nvts_response_nvt_preferences_preference*
         }

    get_nvts_response_nvt_preferences_timeout
     = element timeout
         {
           text
         }

    get_nvts_response_nvt_preferences_default_timeout
     = element default_timeout
         {
           text
         }

    get_nvts_response_nvt_preferences_preference
     = element preference
         {
           get_nvts_response_nvt_preferences_preference_nvt
           & get_nvts_response_nvt_preferences_preference_name
           & get_nvts_response_nvt_preferences_preference_hr_name
           & get_nvts_response_nvt_preferences_preference_id
           & get_nvts_response_nvt_preferences_preference_type
           & get_nvts_response_nvt_preferences_preference_value
           & get_nvts_response_nvt_preferences_preference_alt*
           & get_nvts_response_nvt_preferences_preference_default
         }

    get_nvts_response_nvt_preferences_preference_nvt
     = element nvt
         {
           attribute oid { oid }
           & get_nvts_response_nvt_preferences_preference_nvt_name
         }

    get_nvts_response_nvt_preferences_preference_nvt_name
     = element name
         {
           name
         }

    get_nvts_response_nvt_preferences_preference_name
     = element name
         {
           text
         }

    get_nvts_response_nvt_preferences_preference_hr_name
     = element hr_name
         {
           name
         }

    get_nvts_response_nvt_preferences_preference_id
     = element id
         {
           text
         }

    get_nvts_response_nvt_preferences_preference_type
     = element type
         {
           text
         }

    get_nvts_response_nvt_preferences_preference_value
     = element value
         {
           text
         }

    get_nvts_response_nvt_preferences_preference_alt
     = element alt
         {
           text
         }

    get_nvts_response_nvt_preferences_preference_default
     = element default
         {
           text
         }

#### 7.64.3 Example: Get full NVT listing with details

Client

     <get_nvts details="1"/>

Manager

     <get_nvts_response status="200"
                        status_text="OK">
       <nvt oid="1.3.6.1.4.1.25623.1.7.13005">
         <name>Services</name>
         <creation_time>2011-01-14T10:12:23+01:00</creation_time>
         <modification_time>2012-09-19T20:56:15+02:00</modification_time>
         <category>3</category>
         <family>Service detection</family>
         <cvss_base/>
         <severities score="0"/>
         <refs/>
         <tags>NOTAG</tags>
         <preference_count>-1</preference_count>
         <timeout/>
         <preferences>
           <timeout/>
           <preference>
             <nvt oid="1.3.6.1.4.1.25623.1.0.10330">
               <name>Services</name>
             </nvt>
             <id>1</id>
             <name>Network connection timeout :</name>
             <type>entry</type>
             <value>5</value>
             <default>5</default>
           </preference>
           ...
         </preferences>
         <discovery>1</discovery>
       </nvt>
       <nvt oid="1.3.6.1.4.1.25623.1.7.13006">
         <name>FooBar 21</name>
         <creation_time>2011-01-14T10:12:23+01:00</creation_time>
         <modification_time>2012-09-19T20:56:15+02:00</modification_time>
         <category>3</category>
         <description>
           This script detects whether the FooBar 2.1 XSS vulnerability is present.
         </description>
         ...
         <discovery>0</discovery>
       </nvt>
       ...
     </get_nvts_response>

#### 7.64.3 Example: Get minimal information about one NVT

Client

     <get_nvts nvt_oid="1.3.6.1.4.1.25623.1.0.10330"/>

Manager

     <get_nvts_response status="200"
                        status_text="OK">
       <nvt oid="1.3.6.1.4.1.25623.1.0.10330">
         <name>Services</name>
         <discovery>0</discovery>
       </nvt>
     </get_nvts_response>

### 7.65 Command `get_overrides`

In short: Get one or many overrides.

The client uses the get_overrides command to get override information. If the command sent by the client was valid, the manager will reply with a list of overrides to the client.

#### 7.65.1 Structure

- Command
  - @override_id (uuid) ID of single override to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option task_id (uuid) UUID of the Task the Override applies to
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column nvt (text) Name of the NVT the Override applies to
    - column text (text) Text of the Override
    - column nvt_id (oid) OID of the NVT the Override applies to
    - column task_name (text) Name of the Task the Override applies to
    - column hosts (text) Hosts the Override applies to
    - column port (text) Port (location) the Override applies to
    - column threat (threat) Minimum severity level the Override applies to
    - column new_threat (threat) Severity level results are changed to by the Override
    - column active (boolean) Whether the Override is active
    - column result (uuid) UUID of the result the Override applies to
    - column severity (severity) Minimum severity of results the Override applies to
    - column new_severity (severity) Severity level results are changed to by the Override
    - column active_days (integer) Number of days the override will still be active
  - @filt_id (uuid) ID of filter to use to filter query.
  - @nvt_oid (oid)
  - @task_id (uuid)
  - @details (boolean) Whether to include full details.
  - @result (boolean) Whether to include the associated result.
    More Details
    Requires "details" to be true.
- Response
  - @status (status)
  - @status_text (text)
  - <override> *
    (override)
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <overrides>
    - @start (integer) First override.
    - @max (integer) Maximum number of overrides.
  - <override_count>
    - <filtered>
      Number of overrides after filtering.
    - <page>
      Number of overrides on current page.

#### 7.65.2 RNC

Command

    get_overrides
     = element get_overrides
         {
           attribute override_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute nvt_oid { oid }?
           & attribute task_id { uuid }?
           & attribute details { boolean }?
           & attribute result { boolean }?
         }

Response

    get_overrides_response
     = element get_overrides_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_overrides_response_override*
           & get_overrides_response_filters
           & get_overrides_response_sort
           & get_overrides_response_overrides
           & get_overrides_response_override_count
         }

    get_overrides_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_overrides_response_filters_term
           & get_overrides_response_filters_name?
           & get_overrides_response_filters_keywords
         }

    get_overrides_response_filters_term
     = element term
         {
           text
         }

    get_overrides_response_filters_name
     = element name
         {
           text
         }

    get_overrides_response_filters_keywords
     = element keywords
         {
           get_overrides_response_filters_keywords_keyword*
         }

    get_overrides_response_filters_keywords_keyword
     = element keyword
         {
           get_overrides_response_filters_keywords_keyword_column
           & get_overrides_response_filters_keywords_keyword_relation
           & get_overrides_response_filters_keywords_keyword_value
         }

    get_overrides_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_overrides_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_overrides_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_overrides_response_sort
     = element sort
         {
           text
           & get_overrides_response_sort_field
         }

    get_overrides_response_sort_field
     = element field
         {
           get_overrides_response_sort_field_order
         }

    get_overrides_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_overrides_response_overrides
     = element overrides
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_overrides_response_override_count
     = element override_count
         {
           get_overrides_response_override_count_filtered
           & get_overrides_response_override_count_page
         }

    get_overrides_response_override_count_filtered
     = element filtered
         {
           integer
         }

    get_overrides_response_override_count_page
     = element page
         {
           integer
         }

    get_overrides_response_override
     = element override    # type override
         {
           attribute id { uuid }
           & override_permissions
           & override_owner
           & override_nvt
           & override_creation_time
           & override_modification_time
           & override_writable
           & override_in_use
           & override_active
           & override_text
           & override_threat
           & override_severity
           & override_new_threat
           & override_new_severity
           & override_orphan
           & override_user_tags?
           & ( override_hosts
               & override_port
               & override_task
               & override_end_time
               & override_result? )?
         }

#### 7.65.3 Example: Get one or many overrides

Client

     <get_overrides/>

Manager

     <get_overrides_response status="200"
                             status_text="OK">
       <override id="b76b81a7-9df8-42df-afff-baa9d4620128">
         <nvt oid="1.3.6.1.4.1.25623.1.0.75">
           <name>Test NVT: long lines</name>
         </nvt>
         <creation_time>2013-01-09T09:50:10+01:00</creation_time>
         <modification_time>2013-01-09T09:50:10+01:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <active>1</active>
         <text excerpt="0">This is the full text of the override.</text>
         <new_threat>Log</new_threat>
         <new_severity>0.0</new_severity>
         <orphan>1</orphan>
       </override>
       ...
     </get_overrides_response>

#### 7.65.3 Example: Get details of a single override

Client

     <get_overrides override_id="7f618bbb-4664-419e-9bbf-367d93954cb0"
                    details="1"/>

Manager

     <get_overrides_response status="200"
                             status_text="OK">
       <override id="7f618bbb-4664-419e-9bbf-367d93954cb0">
         <nvt oid="1.3.6.1.4.1.25623.1.0.77">
           <name>Test NVT: control chars in report result</name>
         </nvt>
         <creation_time>2015-07-15T15:05:55Z</creation_time>
         <modification_time>2015-07-15T15:05:55Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <active>1</active>
         <end_time/>
         <text>override fixed to result</text>
         <hosts>127.0.0.1</hosts>
         <port>general/tcp</port>
         <threat>Medium</threat>
         <new_threat>Low</new_threat>
         <new_severity>2.0</new_severity>
         <task id="40b236a9-2b0f-4813-b8c7-bc2b98d9d7e4">
           <name>test</name>
         </task>
         <orphan>0</orphan>
         <result id="0c95e6b3-1100-4dfd-88f1-4bed1fad29de"/>
       </override>
       ...
     </get_overrides_response>

### 7.66 Command `get_permissions`

In short: Get one or many permissions.

The client uses the get_permissions command to get permission information.

#### 7.66.1 Structure

- Command
  - @permission_id (uuid) ID of single permission to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column type (text) The resource type the permission is for
    - column resource_uuid (text) UUID of the resource the permission is for
    - column subject_type (text) Type of the subject of the permission
    - column subject (text) Name of the subject of the permission
    - column resource (text) Name of the resource the permission is for
    - column subject_uuid (text) UUID of the subject of the permission
    - column orphan (boolean) Whether the resource of the permission is in the trashcan
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan permissions instead.
- Response
  - @status (status)
  - @status_text (text)
  - <permission> *
    - @id (uuid)
    - <owner>
      Owner of the permission.
      - <name>
        The name of the owner.
    - <name>
      The name of the permission.
    - <comment>
      The comment on the permission.
    - <creation_time>
      Date and time the permission was created.
    - <modification_time>
      Date and time the permission was last modified.
    - <writable>
      Whether the permission is writable.
    - <in_use>
      Whether the permission is in use.
    - <permissions>
      Permissions that the current user has on the permission.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the permission.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <resource>
      The resource the permission applies to.
      - @id (uuid) UUID if permission applies to a resource, else 0.
      - <name>
      - <permissions> ?
        Permissions the user has on the resource.
      - <type>
        The GMP type of the resource.
      - <trash>
        Whether the resource is in the trash.
      - <deleted>
        Whether the resource has been deleted.
    - <subject>
      The subject the permission applies to.
      - @id (uuid) UUID of the subject.
      - <name>
      - <permissions> ?
        Permissions the user has on the subject.
      - <type>
        The GMP type of the subject: group, role or user.
      - <trash>
        Whether the subject is in the trash.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <permissions>
    - @start (integer) First permission.
    - @max (integer) Maximum number of permissions.
  - <permission_count>
    - <filtered>
      Number of permissions after filtering.
    - <page>
      Number of permissions on current page.

#### 7.66.2 RNC

Command

    get_permissions
     = element get_permissions
         {
           attribute permission_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
         }

Response

    get_permissions_response
     = element get_permissions_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_permissions_response_permission*
           & get_permissions_response_filters
           & get_permissions_response_sort
           & get_permissions_response_permissions
           & get_permissions_response_permission_count
         }

    get_permissions_response_permission
     = element permission
         {
           attribute id { uuid }
           & get_permissions_response_permission_owner
           & get_permissions_response_permission_name
           & get_permissions_response_permission_comment
           & get_permissions_response_permission_creation_time
           & get_permissions_response_permission_modification_time
           & get_permissions_response_permission_writable
           & get_permissions_response_permission_in_use
           & get_permissions_response_permission_permissions
           & get_permissions_response_permission_user_tags?
           & get_permissions_response_permission_resource
           & get_permissions_response_permission_subject
         }

    get_permissions_response_permission_owner
     = element owner
         {
           get_permissions_response_permission_owner_name
         }

    get_permissions_response_permission_owner_name
     = element name
         {
           name
         }

    get_permissions_response_permission_name
     = element name
         {
           name
         }

    get_permissions_response_permission_comment
     = element comment
         {
           text
         }

    get_permissions_response_permission_creation_time
     = element creation_time
         {
           iso_time
         }

    get_permissions_response_permission_modification_time
     = element modification_time
         {
           iso_time
         }

    get_permissions_response_permission_resource
     = element resource
         {
           attribute id { uuid }?
           & get_permissions_response_permission_resource_name
           & get_permissions_response_permission_resource_permissions?
           & get_permissions_response_permission_resource_type
           & get_permissions_response_permission_resource_trash
           & get_permissions_response_permission_resource_deleted
         }

    get_permissions_response_permission_resource_name
     = element name
         {
           text
         }

    get_permissions_response_permission_resource_permissions
     = element permissions
         {
           ""
         }

    get_permissions_response_permission_resource_type
     = element type
         {
           text
         }

    get_permissions_response_permission_resource_trash
     = element trash
         {
           boolean
         }

    get_permissions_response_permission_resource_deleted
     = element deleted
         {
           boolean
         }

    get_permissions_response_permission_subject
     = element subject
         {
           attribute id { uuid }?
           & get_permissions_response_permission_subject_name
           & get_permissions_response_permission_subject_permissions?
           & get_permissions_response_permission_subject_type
           & get_permissions_response_permission_subject_trash
         }

    get_permissions_response_permission_subject_name
     = element name
         {
           text
         }

    get_permissions_response_permission_subject_permissions
     = element permissions
         {
           ""
         }

    get_permissions_response_permission_subject_type
     = element type
         {
           text
         }

    get_permissions_response_permission_subject_trash
     = element trash
         {
           boolean
         }

    get_permissions_response_permission_subject_deleted
     = element deleted
         {
           boolean
         }

    get_permissions_response_permission_writable
     = element writable
         {
           boolean
         }

    get_permissions_response_permission_in_use
     = element in_use
         {
           boolean
         }

    get_permissions_response_permission_permissions
     = element permissions
         {
           get_permissions_response_permission_permissions_permission*
         }

    get_permissions_response_permission_permissions_permission
     = element permission
         {
           get_permissions_response_permission_permissions_permission_name
         }

    get_permissions_response_permission_permissions_permission_name
     = element name
         {
           name
         }

    get_permissions_response_permission_user_tags
     = element user_tags
         {
           get_permissions_response_permission_user_tags_count
           & get_permissions_response_permission_user_tags_tag*
         }

    get_permissions_response_permission_user_tags_count
     = element count
         {
           integer
         }

    get_permissions_response_permission_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_permissions_response_permission_user_tags_tag_name
           & get_permissions_response_permission_user_tags_tag_value
           & get_permissions_response_permission_user_tags_tag_comment
         }

    get_permissions_response_permission_user_tags_tag_name
     = element name
         {
           text
         }

    get_permissions_response_permission_user_tags_tag_value
     = element value
         {
           text
         }

    get_permissions_response_permission_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_permissions_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_permissions_response_filters_term
           & get_permissions_response_filters_name?
           & get_permissions_response_filters_keywords
         }

    get_permissions_response_filters_term
     = element term
         {
           text
         }

    get_permissions_response_filters_name
     = element name
         {
           text
         }

    get_permissions_response_filters_keywords
     = element keywords
         {
           get_permissions_response_filters_keywords_keyword*
         }

    get_permissions_response_filters_keywords_keyword
     = element keyword
         {
           get_permissions_response_filters_keywords_keyword_column
           & get_permissions_response_filters_keywords_keyword_relation
           & get_permissions_response_filters_keywords_keyword_value
         }

    get_permissions_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_permissions_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_permissions_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_permissions_response_sort
     = element sort
         {
           text
           & get_permissions_response_sort_field
         }

    get_permissions_response_sort_field
     = element field
         {
           get_permissions_response_sort_field_order
         }

    get_permissions_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_permissions_response_permissions
     = element permissions
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_permissions_response_permission_count
     = element permission_count
         {
           get_permissions_response_permission_count_filtered
           & get_permissions_response_permission_count_page
         }

    get_permissions_response_permission_count_filtered
     = element filtered
         {
           integer
         }

    get_permissions_response_permission_count_page
     = element page
         {
           integer
         }

#### 7.66.3 Example: Get one or many permissions

Client

     <get_permissions/>

Manager

     <get_permissions_response status="200"
                               status_text="OK">
       <permission id="b493b7a8-7489-11df-a3ec-002264764cea">
         <name>Management</name>
         <comment>Managers</comment>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <users>sarah, frank</users>
       </permission>
       ...
       <filters id="">
         <term>first=1 rows=-1 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           ...
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <permissions max="-1"
                    start="1"/>
       <permission_count>
         1
         <filtered>1</filtered>
         <page>1</page>
       </permission_count>
     </get_permissions_response>

### 7.67 Command `get_port_lists`

In short: Get one or many port lists.

The client uses the get_port_lists command to get port list information.

#### 7.67.1 Structure

- Command
  - @port_list_id (uuid) ID of single port list to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column total (integer) Total number of ports in the Port List
    - column tcp (integer) Number of TCP ports in the Port List
    - column udp (integer) Number of UDP ports in the Port List
    - column predefined (boolean) Whether the Port List was created from the feed
  - @filt_id (uuid) ID of filter to use to filter query.
  - @details (boolean) Whether to include full port list details.
  - @targets (boolean) Whether to include targets using this port list.
  - @trash (boolean) Whether to get the trashcan port lists instead.
- Response
  - @status (status)
  - @status_text (text)
  - <port_list> *
    - @id (uuid)
    - <owner>
      Owner of the port list.
      - <name>
        The name of the owner.
    - <name>
      The name of the port list.
    - <comment>
      The comment on the port list.
    - <creation_time>
    - <modification_time>
    - <writable>
      Whether the port list is writable.
    - <in_use>
      Whether any targets are using the port list.
    - <permissions>
      Permissions that the current user has on the port list.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the port list.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <port_count>
      - <all>
        Total number of ports.
      - <tcp>
        Total number of TCP ports.
      - <udp>
        Total number of UDP ports.
    - <port_ranges> ?
      - <port_range> *
        - @id (uuid)
        - <start>
          First port in range.
        - <end>
          Last port in range.
        - <type>
          The type of port: TCP, UDP, ....
        - <comment>
          The comment on the port range.
    - <targets> ?
      The targets using the port list.
      - <target> *
        - @id (uuid)
        - <name>
          The name of the target.
        - <permissions> ?
          Permissions the user has on the target.
    - <predefined>
      Whether the port list was predefined by the feed.
    - <deprecated> ?
      Whether the port list is deprecated.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <port_lists>
    - @start (integer) First port list.
    - @max (integer) Maximum number of port lists.
  - <port_list_count>
    - <filtered>
      Number of port lists after filtering.
    - <page>
      Number of port lists on current page.

#### 7.67.2 RNC

Command

    get_port_lists
     = element get_port_lists
         {
           attribute port_list_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
           & attribute targets { boolean }?
           & attribute trash { boolean }?
         }

Response

    get_port_lists_response
     = element get_port_lists_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_port_lists_response_port_list*
           & get_port_lists_response_filters
           & get_port_lists_response_sort
           & get_port_lists_response_port_lists
           & get_port_lists_response_port_list_count
         }

    get_port_lists_response_port_list
     = element port_list
         {
           attribute id { uuid }
           & get_port_lists_response_port_list_owner
           & get_port_lists_response_port_list_name
           & get_port_lists_response_port_list_comment
           & get_port_lists_response_port_list_creation_time
           & get_port_lists_response_port_list_modification_time
           & get_port_lists_response_port_list_writable
           & get_port_lists_response_port_list_in_use
           & get_port_lists_response_port_list_permissions
           & get_port_lists_response_port_list_user_tags?
           & get_port_lists_response_port_list_port_count
           & get_port_lists_response_port_list_port_ranges?
           & get_port_lists_response_port_list_targets?
           & get_port_lists_response_port_list_predefined
           & get_port_lists_response_port_list_deprecated?
         }

    get_port_lists_response_port_list_owner
     = element owner
         {
           get_port_lists_response_port_list_owner_name
         }

    get_port_lists_response_port_list_owner_name
     = element name
         {
           name
         }

    get_port_lists_response_port_list_name
     = element name
         {
           name
         }

    get_port_lists_response_port_list_comment
     = element comment
         {
           text
         }

    get_port_lists_response_port_list_creation_time
     = element creation_time
         {
           iso_time
         }

    get_port_lists_response_port_list_modification_time
     = element modification_time
         {
           iso_time
         }

    get_port_lists_response_port_list_writable
     = element writable
         {
           boolean
         }

    get_port_lists_response_port_list_in_use
     = element in_use
         {
           boolean
         }

    get_port_lists_response_port_list_permissions
     = element permissions
         {
           get_port_lists_response_port_list_permissions_permission*
         }

    get_port_lists_response_port_list_permissions_permission
     = element permission
         {
           get_port_lists_response_port_list_permissions_permission_name
         }

    get_port_lists_response_port_list_permissions_permission_name
     = element name
         {
           name
         }

    get_port_lists_response_port_list_user_tags
     = element user_tags
         {
           get_port_lists_response_port_list_user_tags_count
           & get_port_lists_response_port_list_user_tags_tag*
         }

    get_port_lists_response_port_list_user_tags_count
     = element count
         {
           integer
         }

    get_port_lists_response_port_list_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_port_lists_response_port_list_user_tags_tag_name
           & get_port_lists_response_port_list_user_tags_tag_value
           & get_port_lists_response_port_list_user_tags_tag_comment
         }

    get_port_lists_response_port_list_user_tags_tag_name
     = element name
         {
           text
         }

    get_port_lists_response_port_list_user_tags_tag_value
     = element value
         {
           text
         }

    get_port_lists_response_port_list_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_port_lists_response_port_list_port_count
     = element port_count
         {
           get_port_lists_response_port_list_port_count_all
           & get_port_lists_response_port_list_port_count_tcp
           & get_port_lists_response_port_list_port_count_udp
         }

    get_port_lists_response_port_list_port_count_all
     = element all
         {
           integer
         }

    get_port_lists_response_port_list_port_count_tcp
     = element tcp
         {
           integer
         }

    get_port_lists_response_port_list_port_count_udp
     = element udp
         {
           integer
         }

    get_port_lists_response_port_list_port_ranges
     = element port_ranges
         {
           get_port_lists_response_port_list_port_ranges_port_range*
         }

    get_port_lists_response_port_list_port_ranges_port_range
     = element port_range
         {
           attribute id { uuid }
           & get_port_lists_response_port_list_port_ranges_port_range_start
           & get_port_lists_response_port_list_port_ranges_port_range_end
           & get_port_lists_response_port_list_port_ranges_port_range_type
           & get_port_lists_response_port_list_port_ranges_port_range_comment
         }

    get_port_lists_response_port_list_port_ranges_port_range_start
     = element start
         {
           integer
         }

    get_port_lists_response_port_list_port_ranges_port_range_end
     = element end
         {
           integer
         }

    get_port_lists_response_port_list_port_ranges_port_range_type
     = element type
         {
           text
         }

    get_port_lists_response_port_list_port_ranges_port_range_comment
     = element comment
         {
           text
         }

    get_port_lists_response_port_list_targets
     = element targets
         {
           get_port_lists_response_port_list_targets_target*
         }

    get_port_lists_response_port_list_targets_target
     = element target
         {
           attribute id { uuid }
           & get_port_lists_response_port_list_targets_target_name
           & get_port_lists_response_port_list_targets_target_permissions?
         }

    get_port_lists_response_port_list_targets_target_name
     = element name
         {
           name
         }

    get_port_lists_response_port_list_targets_target_permissions
     = element permissions
         {
           ""
         }

    get_port_lists_response_port_list_predefined
     = element predefined
         {
           boolean
         }

    get_port_lists_response_port_list_deprecated
     = element deprecated
         {
           boolean
         }

    get_port_lists_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_port_lists_response_filters_term
           & get_port_lists_response_filters_name?
           & get_port_lists_response_filters_keywords
         }

    get_port_lists_response_filters_term
     = element term
         {
           text
         }

    get_port_lists_response_filters_name
     = element name
         {
           text
         }

    get_port_lists_response_filters_keywords
     = element keywords
         {
           get_port_lists_response_filters_keywords_keyword*
         }

    get_port_lists_response_filters_keywords_keyword
     = element keyword
         {
           get_port_lists_response_filters_keywords_keyword_column
           & get_port_lists_response_filters_keywords_keyword_relation
           & get_port_lists_response_filters_keywords_keyword_value
         }

    get_port_lists_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_port_lists_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_port_lists_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_port_lists_response_sort
     = element sort
         {
           text
           & get_port_lists_response_sort_field
         }

    get_port_lists_response_sort_field
     = element field
         {
           get_port_lists_response_sort_field_order
         }

    get_port_lists_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_port_lists_response_port_lists
     = element port_lists
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_port_lists_response_port_list_count
     = element port_list_count
         {
           get_port_lists_response_port_list_count_filtered
           & get_port_lists_response_port_list_count_page
         }

    get_port_lists_response_port_list_count_filtered
     = element filtered
         {
           integer
         }

    get_port_lists_response_port_list_count_page
     = element page
         {
           integer
         }

#### 7.67.3 Example: Export a port list

Client

     <get_port_lists port_list_id="b993b6f5-f9fb-4e6e-9c94-dd46c00e058d"
                     details="1"
                     targets="1"/>

Manager

     <get_port_lists_response status="200"
                              status_text="OK">
       <port_list id="b993b6f5-f9fb-4e6e-9c94-dd46c00e058d">
         <name>All TCP</name>
         <comment>Every single TCP port.</comment>
         <creation_time>2012-12-31T16:38:45+01:00</creation_time>
         <modification_time>2012-12-31T16:38:45+01:00</modification_time>
         <writable>0</writable>
         <in_use>1</in_use>
         <port_count>
           <all>65535</all>
           <tcp>65535</tcp>
           <udp>0</udp>
         </port_count>
         <port_ranges>
           <port_range>
             <type>TCP</type>
             <start>1</start>
             <end>65535</end>
           </port_range>
         </port_ranges>
         <targets>
           <target id="1f28d970-17ef-4c69-ba8a-13827059f2b9">
             <name>Web server</name>
           </target>
         </targets>
       </port_list>
     </get_port_lists_response>

### 7.68 Command `get_preferences`

In short: Get one or many preferences.

The client uses the get_preferences command to get preference information. If the command sent by the client was valid, the manager will reply with a list of preferences to the client. If the manager cannot access a list of available NVTs at present, it will reply with the 503 response.

When the command includes a config_id attribute, the preference element includes the preference name, type and value, and the NVT to which the preference applies. Otherwise, the preference element includes just the name and value, with the NVT and type built into the name.

#### 7.68.1 Structure

- Command
  - @nvt_oid (oid)
  - @config_id (uuid) ID of config of which to show preference values.
  - @preference (text) The name of a particular preference to get.
- Response
  - @status (status)
  - @status_text (text)
  - <preference> *
    - <nvt>
      NVT to which preference applies.
      - @oid (oid)
      - <name>
        The name of the NVT.
    - <name>
      The name of the preference.
    - <id>
      The ID of the preference.
    - <type>
      The type of the preference.
    - <value>
      The value of the preference.
    - <alt> *
      An alternate value of the preference.
    - <default>
      The default value of the preference.

#### 7.68.2 RNC

Command

    get_preferences
     = element get_preferences
         {
           attribute nvt_oid { oid }?
           & attribute config_id { uuid }?
           & attribute preference { text }?
         }

Response

    get_preferences_response
     = element get_preferences_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_preferences_response_preference*
         }

    get_preferences_response_preference
     = element preference
         {
           get_preferences_response_preference_nvt
           & get_preferences_response_preference_name
           & get_preferences_response_preference_id
           & get_preferences_response_preference_type
           & get_preferences_response_preference_value
           & get_preferences_response_preference_alt*
           & get_preferences_response_preference_default
         }

    get_preferences_response_preference_nvt
     = element nvt
         {
           attribute oid { oid }
           & get_preferences_response_preference_nvt_name
         }

    get_preferences_response_preference_nvt_name
     = element name
         {
           name
         }

    get_preferences_response_preference_name
     = element name
         {
           name
         }

    get_preferences_response_preference_id
     = element id
         {
           text
         }

    get_preferences_response_preference_type
     = element type
         {
           text
         }

    get_preferences_response_preference_value
     = element value
         {
           text
         }

    get_preferences_response_preference_alt
     = element alt
         {
           text
         }

    get_preferences_response_preference_default
     = element default
         {
           text
         }

#### 7.68.3 Example: Get default preferences for all NVTs

Client

     <get_preferences/>

Manager

     <get_preferences_response status="200"
                               status_text="OK">
       <preference>
         <name>
           1.3.6.1.4.1.25623.1.0.10330:1:entry:Network connection timeout :
         </name>
         <value>5</value>
       </preference>
       ...
     </get_preferences_response>

#### 7.68.3 Example: Get default preferences for a single NVT

Client

     <get_preferences nvt_oid="1.3.6.1.4.1.25623.1.0.10330"/>

Manager

     <get_preferences_response status="200"
                               status_text="OK">
       <preference>
         <name>
           1.3.6.1.4.1.25623.1.0.10330:1:entry:Network connection timeout :
         </name>
         <value>5</value>
         <default>5</default>
       </preference>
       ...
     </get_preferences_response>

#### 7.68.3 Example: Get preferences from a config for all NVTs

Client

     <get_preferences config_id="daba56c8-73ec-11df-a475-002264764cea"/>

Manager

     <get_preferences_response status="200"
                               status_text="OK">
       <preference>
         <nvt oid="1.3.6.1.4.1.25623.1.0.10330">
           <name>Services</name>
         </nvt>
         <id>1</id>
         <name>Network connection timeout :</name>
         <type>entry</type>
         <value>5</value>
       </preference>
       ...
     </get_preferences_response>

#### 7.68.3 Example: Get preferences from a config for a single NVT

Client

     <get_preferences config_id="daba56c8-73ec-11df-a475-002264764cea"
                      nvt_oid="1.3.6.1.4.1.25623.1.0.10330"/>

Manager

     <get_preferences nvt_oid="1.3.6.1.4.1.25623.1.0.10330">
       <preference>
         <nvt oid="1.3.6.1.4.1.25623.1.0.10330">
           <name>Services</name>
         </nvt>
         <id>1</id>
         <name>Network connection timeout :</name>
         <type>entry</type>
         <value>5</value>
         <default>5</default>
       </preference>
     </get_preferences>

### 7.69 Command `get_report_applications`

In short: Get applications from a report.

The client uses the get_report_applications command to get application information from a single report.

If the "details" attribute is set, the response includes application entries. Otherwise only the total application count together with filter, sort and count information is returned.

The filter affects the selection of matching report applications and the derived application information returned by the command.

#### 7.69.1 Structure

- Command
  - @report_id (uuid) ID of the report to get applications from.
  - @filter (text) Filter term to use for report application retrieval.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option rows (integer) Maximum number of applications to return
    - column name (text) Detected application name or CPE
    - column hosts_count (integer) Number of hosts on which the application was found
    - column occurrences (integer) Number of occurrences of the application in the report
    - column severity (severity) Maximum severity associated with the application
    - column threat (text) Threat level derived from the severity
  - @filt_id (uuid) ID of filter to use to filter report applications.
  - @details (boolean) Whether to include application details.
- Response
  - @status (status)
  - @status_text (text)
  - <applications> ?
    Application information from the selected report.
    - @start (integer) First report application.
    - @max (integer) Maximum number of report applications.
    - <count>
      Total number of report applications.
    - <application> *
      An application from the selected report.
      - <name>
        Detected application name or CPE.
      - <hosts_count>
        Number of hosts on which the application was found.
      - <occurrences>
        Number of occurrences of the application in the report.
      - <severity>
        Maximum severity associated with the application.
      - <threat>
        Threat level derived from the severity.
  - <filters> ?
    - @id (uuid) UUID of filter if any, else empty or 0.
    - <term>
      Filter term.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort> ?
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <report_applications> ?
    - @start (integer) First report application.
    - @max (integer) Maximum number of report applications.
  - <report_application_count> ?
    - <filtered>
      Number of report applications after filtering.
    - <page>
      Number of report applications on current page.

#### 7.69.2 RNC

Command

    get_report_applications
     = element get_report_applications
         {
           attribute report_id { uuid }
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
         }

Response

    get_report_applications_response
     = element get_report_applications_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_applications_response_applications?
           & get_report_applications_response_filters?
           & get_report_applications_response_sort?
           & get_report_applications_response_report_applications?
           & get_report_applications_response_report_application_count?
         }

    get_report_applications_response_applications
     = element applications
         {
           attribute start { integer }
           & attribute max { integer }
           & get_report_applications_response_applications_count
           & get_report_applications_response_applications_application*
         }

    get_report_applications_response_applications_count
     = element count
         {
           integer
         }

    get_report_applications_response_applications_application
     = element application
         {
           get_report_applications_response_applications_application_name
           & get_report_applications_response_applications_application_hosts_count
           & get_report_applications_response_applications_application_occurrences
           & get_report_applications_response_applications_application_severity
           & get_report_applications_response_applications_application_threat
         }

    get_report_applications_response_applications_application_name
     = element name
         {
           text
         }

    get_report_applications_response_applications_application_hosts_count
     = element hosts_count
         {
           integer
         }

    get_report_applications_response_applications_application_occurrences
     = element occurrences
         {
           integer
         }

    get_report_applications_response_applications_application_severity
     = element severity
         {
           real
         }

    get_report_applications_response_applications_application_threat
     = element threat
         {
           text
         }

    get_report_applications_response_filters
     = element filters
         {
           attribute id { uuid }?
           & get_report_applications_response_filters_term
           & get_report_applications_response_filters_keywords
         }

    get_report_applications_response_filters_term
     = element term
         {
           text
         }

    get_report_applications_response_filters_keywords
     = element keywords
         {
           get_report_applications_response_filters_keywords_keyword*
         }

    get_report_applications_response_filters_keywords_keyword
     = element keyword
         {
           get_report_applications_response_filters_keywords_keyword_column
           & get_report_applications_response_filters_keywords_keyword_relation
           & get_report_applications_response_filters_keywords_keyword_value
         }

    get_report_applications_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_report_applications_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_report_applications_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_report_applications_response_sort
     = element sort
         {
           text
           & get_report_applications_response_sort_field
         }

    get_report_applications_response_sort_field
     = element field
         {
           text
           & get_report_applications_response_sort_field_order
         }

    get_report_applications_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_report_applications_response_report_applications
     = element report_applications
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_report_applications_response_report_application_count
     = element report_application_count
         {
           text
           & get_report_applications_response_report_application_count_filtered
           & get_report_applications_response_report_application_count_page
         }

    get_report_applications_response_report_application_count_filtered
     = element filtered
         {
           integer
         }

    get_report_applications_response_report_application_count_page
     = element page
         {
           integer
         }

#### 7.69.3 Example: Get applications of a report with details

Client

     <get_report_applications report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                              details="1"
                              filter="rows=100 first=1 sort-reverse=severity"/>

Manager

     <get_report_applications_response status="200"
                                       status_text="OK">
       <applications start="1"
                     max="100">
         <count>2</count>
         <application>
           <name>cpe:/a:openssl:openssl</name>
           <hosts_count>2</hosts_count>
           <occurrences>5</occurrences>
           <severity>8.8</severity>
           <threat>High</threat>
         </application>
         <application>
           <name>cpe:/a:apache:http_server</name>
           <hosts_count>1</hosts_count>
           <occurrences>2</occurrences>
           <severity>5.3</severity>
           <threat>Medium</threat>
         </application>
       </applications>
       <filters id="">
         <term>rows=100 first=1 sort-reverse=severity</term>
         <keywords>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>100</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort-reverse</column>
             <relation>=</relation>
             <value>severity</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           severity
           <order>descending</order>
         </field>
       </sort>
       <report_applications start="1"
                            max="100"/>
       <report_application_count>
         2
         <filtered>2</filtered>
         <page>0</page>
       </report_application_count>
     </get_report_applications_response>

#### 7.69.3 Example: Get only report application count information

Client

     <get_report_applications report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                              details="0"/>

Manager

     <get_report_applications_response status="200"
                                       status_text="OK">
       <applications>
         <count>2</count>
       </applications>
       <filters id="">
         <term>rows=100 first=1 sort-reverse=severity</term>
         <keywords>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>100</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort-reverse</column>
             <relation>=</relation>
             <value>severity</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           severity
           <order>descending</order>
         </field>
       </sort>
       <report_applications start="1"
                            max="100"/>
       <report_application_count>
         2
         <filtered>2</filtered>
         <page>0</page>
       </report_application_count>
     </get_report_applications_response>

### 7.70 Command `get_report_configs`

In short: Get one or many report configs.

The client uses the get_report_configs command to get report config information.

#### 7.70.1 Structure

- Command
  - @report_config_id (uuid) ID of single report config to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan report configs instead.
  - @details (boolean) Include report config details.
- Response
  - @status (status)
  - @status_text (text)
  - <report_config> *
    - @id (uuid)
    - <owner>
      Owner of the report config.
      - <name>
        The name of the owner.
    - <name>
      The name of the report config.
    - <comment>
      The comment of the report config.
    - <creation_time>
    - <modification_time>
    - <writable>
      Whether the report config is global or in use.
    - <in_use>
      Whether any alerts are using the report config.
    - <permissions>
      Permissions that the current user has on the report config.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the report config.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <report_format>
      Report format the config will provide params for.
      - @id (uuid) UUID of the report format.
      - <name> ?
        Name of the report format if it exists.
      - <permissions> ?
        Permissions the user has on the report format.
    - <orphan> ?
      Whether the report format of the config is missing.
    - <param> *
      - <name>
        The name of the param.
      - <type>
        The type of the param.
        - <min> ?
          Minimum.
        - <max> ?
          Maximum.
        One of:
        boolean
        integer
        multi_selection
        selection
        string
        text
        report_format_list
      - <value>
        The value of the param.
        - @using_default (boolean) Whether this is the default value.
        - <report_format> *
          Report format info if type is report_format_list.
          - @id (uuid)
          - <name>
            Name of the report format if available.
      - <default>
        The fallback value of the param.
        - <report_format> *
          Report format info if type is report_format_list.
          - @id (uuid)
          - <name>
            Name of the report format if available.
      - <options> ?
        Selection options.
        - <option> *
          Option value.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <report_configs>
    - @start (integer) First report config.
    - @max (integer) Maximum number of report configs.
  - <report_config_count>
    - <filtered>
      Number of report configs after filtering.
    - <page>
      Number of report configs on current page.

#### 7.70.2 RNC

Command

    get_report_configs
     = element get_report_configs
         {
           attribute report_config_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute details { boolean }?
         }

Response

    get_report_configs_response
     = element get_report_configs_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_configs_response_report_config*
           & get_report_configs_response_filters
           & get_report_configs_response_sort
           & get_report_configs_response_report_configs
           & get_report_configs_response_report_config_count
         }

    get_report_configs_response_report_config
     = element report_config
         {
           attribute id { uuid }
           & get_report_configs_response_report_config_owner
           & get_report_configs_response_report_config_name
           & get_report_configs_response_report_config_comment
           & get_report_configs_response_report_config_creation_time
           & get_report_configs_response_report_config_modification_time
           & get_report_configs_response_report_config_writable
           & get_report_configs_response_report_config_in_use
           & get_report_configs_response_report_config_permissions
           & get_report_configs_response_report_config_user_tags?
           & get_report_configs_response_report_config_report_format
           & get_report_configs_response_report_config_orphan?
           & get_report_configs_response_report_config_param*
         }

    get_report_configs_response_report_config_owner
     = element owner
         {
           get_report_configs_response_report_config_owner_name
         }

    get_report_configs_response_report_config_owner_name
     = element name
         {
           name
         }

    get_report_configs_response_report_config_name
     = element name
         {
           name
         }

    get_report_configs_response_report_config_comment
     = element comment
         {
           text
         }

    get_report_configs_response_report_config_creation_time
     = element creation_time
         {
           iso_time
         }

    get_report_configs_response_report_config_modification_time
     = element modification_time
         {
           iso_time
         }

    get_report_configs_response_report_config_writable
     = element writable
         {
           boolean
         }

    get_report_configs_response_report_config_in_use
     = element in_use
         {
           boolean
         }

    get_report_configs_response_report_config_permissions
     = element permissions
         {
           get_report_configs_response_report_config_permissions_permission*
         }

    get_report_configs_response_report_config_permissions_permission
     = element permission
         {
           get_report_configs_response_report_config_permissions_permission_name
         }

    get_report_configs_response_report_config_permissions_permission_name
     = element name
         {
           name
         }

    get_report_configs_response_report_config_user_tags
     = element user_tags
         {
           get_report_configs_response_report_config_user_tags_count
           & get_report_configs_response_report_config_user_tags_tag*
         }

    get_report_configs_response_report_config_user_tags_count
     = element count
         {
           integer
         }

    get_report_configs_response_report_config_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_report_configs_response_report_config_user_tags_tag_name
           & get_report_configs_response_report_config_user_tags_tag_value
           & get_report_configs_response_report_config_user_tags_tag_comment
         }

    get_report_configs_response_report_config_user_tags_tag_name
     = element name
         {
           text
         }

    get_report_configs_response_report_config_user_tags_tag_value
     = element value
         {
           text
         }

    get_report_configs_response_report_config_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_report_configs_response_report_config_report_format
     = element report_format
         {
           attribute id { uuid }
           & get_report_configs_response_report_config_report_format_name?
           & get_report_configs_response_report_config_report_format_permissions?
         }

    get_report_configs_response_report_config_report_format_name
     = element name
         {
           name
         }

    get_report_configs_response_report_config_report_format_permissions
     = element permissions
         {
           ""
         }

    get_report_configs_response_report_config_orphan
     = element orphan
         {
           boolean
         }

    get_report_configs_response_report_config_param
     = element param
         {
           get_report_configs_response_report_config_param_name
           & get_report_configs_response_report_config_param_type
           & get_report_configs_response_report_config_param_value
           & get_report_configs_response_report_config_param_default
           & get_report_configs_response_report_config_param_options?
         }

    get_report_configs_response_report_config_param_name
     = element name
         {
           name
         }

    get_report_configs_response_report_config_param_type
     = element type
         {
           get_report_configs_response_report_config_param_type_min?
           & get_report_configs_response_report_config_param_type_max?
           & xsd:token { pattern = "boolean|integer|multi_selection|selection|string|text|report_format_list" }
         }

    get_report_configs_response_report_config_param_type_min
     = element min
         {
           text
         }

    get_report_configs_response_report_config_param_type_max
     = element max
         {
           text
         }

    get_report_configs_response_report_config_param_value
     = element value
         {
           attribute using_default { boolean }
           & get_report_configs_response_report_config_param_value_report_format*
         }

    get_report_configs_response_report_config_param_value_report_format
     = element report_format
         {
           attribute id { uuid }
           & get_report_configs_response_report_config_param_value_report_format_name
         }

    get_report_configs_response_report_config_param_value_report_format_name
     = element name
         {
           text
         }

    get_report_configs_response_report_config_param_default
     = element default
         {
           text
           & get_report_configs_response_report_config_param_default_report_format*
         }

    get_report_configs_response_report_config_param_default_report_format
     = element report_format
         {
           attribute id { uuid }
           & get_report_configs_response_report_config_param_default_report_format_name
         }

    get_report_configs_response_report_config_param_default_report_format_name
     = element name
         {
           text
         }

    get_report_configs_response_report_config_param_options
     = element options
         {
           get_report_configs_response_report_config_param_options_option*
         }

    get_report_configs_response_report_config_param_options_option
     = element option
         {
           text
         }

    get_report_configs_response_report_config_file
     = element file
         {
           text # RNC limitation: base64
           & attribute name { text }
         }

    get_report_configs_response_report_config_signature
     = element signature
         {
           text
         }

    get_report_configs_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_report_configs_response_filters_term
           & get_report_configs_response_filters_name?
           & get_report_configs_response_filters_keywords
         }

    get_report_configs_response_filters_term
     = element term
         {
           text
         }

    get_report_configs_response_filters_name
     = element name
         {
           text
         }

    get_report_configs_response_filters_keywords
     = element keywords
         {
           get_report_configs_response_filters_keywords_keyword*
         }

    get_report_configs_response_filters_keywords_keyword
     = element keyword
         {
           get_report_configs_response_filters_keywords_keyword_column
           & get_report_configs_response_filters_keywords_keyword_relation
           & get_report_configs_response_filters_keywords_keyword_value
         }

    get_report_configs_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_report_configs_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_report_configs_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_report_configs_response_sort
     = element sort
         {
           text
           & get_report_configs_response_sort_field
         }

    get_report_configs_response_sort_field
     = element field
         {
           get_report_configs_response_sort_field_order
         }

    get_report_configs_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_report_configs_response_report_configs
     = element report_configs
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_report_configs_response_report_config_count
     = element report_config_count
         {
           get_report_configs_response_report_config_count_filtered
           & get_report_configs_response_report_config_count_page
         }

    get_report_configs_response_report_config_count_filtered
     = element filtered
         {
           integer
         }

    get_report_configs_response_report_config_count_page
     = element page
         {
           integer
         }

#### 7.70.3 Example: Get information about a report config

Client

     <get_report_configs report_config_id="c6bab6c3-2b82-4a19-837d-7537d5de2224"/>

Manager

     <get_report_configs_response status="200"
                                  status_text="OK">
       <report_config id="c6bab6c3-2b82-4a19-837d-7537d5de2224">
         <owner>
           <name>admin</name>
         </owner>
         <name>Test config</name>
         <comment>Test comment</comment>
         <creation_time>2024-01-23T09:43:03Z</creation_time>
         <modification_time>2024-01-26T14:11:54Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <report_format id="9e5e5deb-879e-4ecc-8be6-a71cd0875cdd">
           <name>Topology SVG</name>
         </report_format>
         <param using_default="0">
           <name>Graph Type</name>
           <type>selection</type>
           <value>dot</value>
           <default>twopi</default>
           <options>
             <option>circo</option>
             <option>dot</option>
             <option>twopi</option>
           </options>
         </param>
         <param using_default="1">
           <name>Node Distance</name>
           <type>
             integer
             <min>1</min>
             <max>20</max>
           </type>
           <value>8</value>
           <default>8</default>
         </param>
       </report_config>
       ...
     </get_report_configs_response>

### 7.71 Command `get_report_errors`

In short: Get error messages from a report.

The client uses the get_report_errors command to get error message information from a single report.

This command is an error-focused subset of get_reports intended to support pagination and reduced response sizes when only report error data is needed.

If the "details" attribute is set, the response includes error entries. Otherwise only the total error count together with filter, sort and count information is returned.

The filter affects the selection of matching results and the derived error information returned by the command.

#### 7.71.1 Structure

- Command
  - @report_id (uuid) ID of the report to get errors from.
  - @filter (text) Filter term to use for report error retrieval.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option levels (levels) Severity levels to select
    - column uuid (uuid) Unique ID
    - column host (text) IP address of the host
    - column port (text) Port of the result
    - column severity (severity) Severity of the error result
  - @filt_id (uuid) ID of filter to use to filter report errors.
  - @details (boolean) Whether to include error details.
- Response
  - @status (status)
  - @status_text (text)
  - <errors> ?
    Error information from the selected report.
    - @start (integer) First report error.
    - @max (integer) Maximum number of report errors.
    - <count>
      Total number of report errors.
    - <error> *
      An error from the selected report.
      - <host>
        IP address of the host.
        - <asset> ?
          Asset linked to the host.
          - @asset_id (uuid) ID of the asset.
      - <port>
        Port of the error result.
      - <description>
        Description of the error.
      - <nvt>
        NVT associated with the error.
        - @oid (text) OID of the NVT.
        - <type>
          Type of the NVT.
        - <name>
          Name of the NVT.
        - <cvss_base>
          CVSS base score of the NVT.
      - <scan_nvt_version>
        NVT version at scan time.
      - <severity>
        Severity at scan time of the error.
  - <filters> ?
    - @id (uuid) UUID of filter if any, else empty or 0.
    - <term>
      Filter term.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort> ?
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <report_errors> ?
    - @start (integer) First report error.
    - @max (integer) Maximum number of report errors.
  - <report_error_count> ?
    - <filtered>
      Number of report errors after filtering.
    - <page>
      Number of report errors on current page.

#### 7.71.2 RNC

Command

    get_report_errors
     = element get_report_errors
         {
           attribute report_id { uuid }
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
         }

Response

    get_report_errors_response
     = element get_report_errors_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_errors_response_errors?
           & get_report_errors_response_filters?
           & get_report_errors_response_sort?
           & get_report_errors_response_report_errors?
           & get_report_errors_response_report_error_count?
         }

    get_report_errors_response_errors
     = element errors
         {
           attribute start { integer }
           & attribute max { integer }
           & get_report_errors_response_errors_count
           & get_report_errors_response_errors_error*
         }

    get_report_errors_response_errors_count
     = element count
         {
           integer
         }

    get_report_errors_response_errors_error
     = element error
         {
           get_report_errors_response_errors_error_host
           & get_report_errors_response_errors_error_port
           & get_report_errors_response_errors_error_description
           & get_report_errors_response_errors_error_nvt
           & get_report_errors_response_errors_error_scan_nvt_version
           & get_report_errors_response_errors_error_severity
         }

    get_report_errors_response_errors_error_host
     = element host
         {
           text
           & get_report_errors_response_errors_error_host_asset?
         }

    get_report_errors_response_errors_error_host_asset
     = element asset
         {
           attribute asset_id { uuid }
         }

    get_report_errors_response_errors_error_port
     = element port
         {
           text
         }

    get_report_errors_response_errors_error_description
     = element description
         {
           text
         }

    get_report_errors_response_errors_error_nvt
     = element nvt
         {
           attribute oid { text }
           & get_report_errors_response_errors_error_nvt_type
           & get_report_errors_response_errors_error_nvt_name
           & get_report_errors_response_errors_error_nvt_cvss_base
         }

    get_report_errors_response_errors_error_nvt_type
     = element type
         {
           text
         }

    get_report_errors_response_errors_error_nvt_name
     = element name
         {
           text
         }

    get_report_errors_response_errors_error_nvt_cvss_base
     = element cvss_base
         {
           real
         }

    get_report_errors_response_errors_error_scan_nvt_version
     = element scan_nvt_version
         {
           text
         }

    get_report_errors_response_errors_error_severity
     = element severity
         {
           real
         }

    get_report_errors_response_filters
     = element filters
         {
           attribute id { uuid }?
           & get_report_errors_response_filters_term
           & get_report_errors_response_filters_keywords
         }

    get_report_errors_response_filters_term
     = element term
         {
           text
         }

    get_report_errors_response_filters_keywords
     = element keywords
         {
           get_report_errors_response_filters_keywords_keyword*
         }

    get_report_errors_response_filters_keywords_keyword
     = element keyword
         {
           get_report_errors_response_filters_keywords_keyword_column
           & get_report_errors_response_filters_keywords_keyword_relation
           & get_report_errors_response_filters_keywords_keyword_value
         }

    get_report_errors_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_report_errors_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_report_errors_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_report_errors_response_sort
     = element sort
         {
           text
           & get_report_errors_response_sort_field
         }

    get_report_errors_response_sort_field
     = element field
         {
           text
           & get_report_errors_response_sort_field_order
         }

    get_report_errors_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_report_errors_response_report_errors
     = element report_errors
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_report_errors_response_report_error_count
     = element report_error_count
         {
           text
           & get_report_errors_response_report_error_count_filtered
           & get_report_errors_response_report_error_count_page
         }

    get_report_errors_response_report_error_count_filtered
     = element filtered
         {
           integer
         }

    get_report_errors_response_report_error_count_page
     = element page
         {
           integer
         }

#### 7.71.3 Example: Get errors of a report with details

Client

     <get_report_errors report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                        details="1"
                        filter="levels=chml rows=100 min_qod=70 first=1 sort-reverse=severity result_hosts_only=0"/>

Manager

     <get_report_errors_response status="200"
                                 status_text="OK">
       <errors start="1"
               max="100">
         <count>1</count>
         <error>
           <host>
             127.0.0.1
             <asset asset_id="9fd3aff1-4550-42cb-8339-1b6776f555d0"/>
           </host>
           <port>general/tcp</port>
           <description>NVT timed out after 320 seconds.</description>
           <nvt oid="1.3.6.1.4.1.25623.1.0.12241">
             <type>nvt</type>
             <name>Do not print on AppSocket and socketAPI printers</name>
             <cvss_base>0.0</cvss_base>
           </nvt>
           <scan_nvt_version>2025-01-22T08:32:30Z</scan_nvt_version>
           <severity>-3</severity>
         </error>
       </errors>
       <filters id="">
         <term>
           apply_overrides=0 levels=chml rows=100 min_qod=70 first=1 sort-reverse=severity result_hosts_only=0
         </term>
         <keywords>
           <keyword>
             <column>apply_overrides</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
           <keyword>
             <column>levels</column>
             <relation>=</relation>
             <value>chml</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>100</value>
           </keyword>
           <keyword>
             <column>min_qod</column>
             <relation>=</relation>
             <value>70</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort-reverse</column>
             <relation>=</relation>
             <value>severity</value>
           </keyword>
           <keyword>
             <column>result_hosts_only</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           severity
           <order>descending</order>
         </field>
       </sort>
       <report_errors start="1"
                      max="100"/>
       <report_error_count>
         1
         <filtered>1</filtered>
         <page>0</page>
       </report_error_count>
     </get_report_errors_response>

#### 7.71.3 Example: Get only report error count information

Client

     <get_report_errors report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                        details="0"/>

Manager

     <get_report_errors_response status="200"
                                 status_text="OK">
       <errors start="1"
               max="100">
         <count>1</count>
       </errors>
       <filters id="">
         <term>
           apply_overrides=0 levels=chml rows=100 min_qod=70 first=1 sort-reverse=severity result_hosts_only=0
         </term>
         <keywords>
           <keyword>
             <column>apply_overrides</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
           <keyword>
             <column>levels</column>
             <relation>=</relation>
             <value>chml</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>100</value>
           </keyword>
           <keyword>
             <column>min_qod</column>
             <relation>=</relation>
             <value>70</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort-reverse</column>
             <relation>=</relation>
             <value>severity</value>
           </keyword>
           <keyword>
             <column>result_hosts_only</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           severity
           <order>descending</order>
         </field>
       </sort>
       <report_errors start="1"
                      max="100"/>
       <report_error_count>
         1
         <filtered>1</filtered>
         <page>0</page>
       </report_error_count>
     </get_report_errors_response>

### 7.72 Command `get_report_formats`

In short: Get one or many report formats.

The client uses the get_report_formats command to get report format information.

#### 7.72.1 Structure

- Command
  - @report_format_id (uuid) ID of single report format to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column extension (text) File extension of the report format
    - column content_type (text) Content type of the report format
    - column summary (text) Short summary of the report format
    - column description (text) Description of the report format
    - column trust (boolean) Whether the report format is trusted
    - column trust_time (iso_time) Time the report format was last verified
    - column active (boolean) Whether the report format is active
    - column predefined (boolean) Whether the report format was created from the feed
    - column report_type ("scan", "audit" or "all") The type of the report compatible with the report format
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan report formats instead.
  - @alerts (boolean) Whether to include alerts that use the report format.
  - @params (boolean) Whether to include report format parameters.
  - @report_configs (boolean) Whether to include report configs that use the report format.
  - @details (boolean) Include report format file, signature and parameters.
- Response
  - @status (status)
  - @status_text (text)
  - <report_format> *
    - @id (uuid)
    - <owner>
      Owner of the report format.
      - <name>
        The name of the owner.
    - <name>
      The name of the report format.
    - <creation_time>
    - <modification_time>
    - <writable>
      Whether the report format is global or in use.
    - <in_use>
      Whether any alerts are using the report format.
    - <permissions>
      Permissions that the current user has on the report format.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the report format.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <extension>
    - <content_type>
    - <summary>
    - <description>
    - <alerts> ?
      Alerts using the report format.
      - <alert> *
        - @id (uuid) UUID of the alert.
        - <name>
          Name of the alert.
    - <invisible_alerts> ?
      Number of alerts only visible to other users.
    - <report_configs> ?
      Report configs using the report format.
      - <report_config> *
        - @id (uuid) UUID of the report config.
        - <name>
          Name of the report config.
    - <invisible_report_configs> ?
      Number of report configs only visible to other users.
    - The group?
      - <file> *
        One of the files used to generate the report.
        - @name (text)
      - <signature>
        The report format signature.
    - <trust>
      Whether signature verification succeeded.
      - @name (text)
      - <time>
        The time the trust was checked.
      One of:
      yes
      no
      unknown
    - <active>
      Whether the report format is active.
    - <predefined>
      Whether the report format was predefined by the feed.
    - <configurable>
      Whether the report format can be used with a report config.
    - <report_type>
      The type of the report compatible with the report format.
      One of:
      scan
      audit
      all
    - <deprecated> ?
      Whether the report format is deprecated.
    - <param> *
      - <name>
        The name of the param.
      - <type>
        The type of the param.
        - <min> ?
          Minimum.
        - <max> ?
          Maximum.
        - <options> ?
          Selection options.
          - <option> *
            Option value.
        One of:
        boolean
        integer
        multi_selection
        selection
        string
        text
        report_format_list
      - <value>
        The value of the param.
        - <report_format> *
          Report format info if type is report_format_list.
          - @id (uuid)
          - <name>
            Name of the report format if available.
      - <default>
        The fallback value of the param.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <report_formats>
    - @start (integer) First report format.
    - @max (integer) Maximum number of report formats.
  - <report_format_count>
    - <filtered>
      Number of report formats after filtering.
    - <page>
      Number of report formats on current page.

#### 7.72.2 RNC

Command

    get_report_formats
     = element get_report_formats
         {
           attribute report_format_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute alerts { boolean }?
           & attribute params { boolean }?
           & attribute report_configs { boolean }?
           & attribute details { boolean }?
         }

Response

    get_report_formats_response
     = element get_report_formats_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_formats_response_report_format*
           & get_report_formats_response_filters
           & get_report_formats_response_sort
           & get_report_formats_response_report_formats
           & get_report_formats_response_report_format_count
         }

    get_report_formats_response_report_format
     = element report_format
         {
           attribute id { uuid }
           & get_report_formats_response_report_format_owner
           & get_report_formats_response_report_format_name
           & get_report_formats_response_report_format_creation_time
           & get_report_formats_response_report_format_modification_time
           & get_report_formats_response_report_format_writable
           & get_report_formats_response_report_format_in_use
           & get_report_formats_response_report_format_permissions
           & get_report_formats_response_report_format_user_tags?
           & get_report_formats_response_report_format_extension
           & get_report_formats_response_report_format_content_type
           & get_report_formats_response_report_format_summary
           & get_report_formats_response_report_format_description
           & get_report_formats_response_report_format_alerts?
           & get_report_formats_response_report_format_invisible_alerts?
           & get_report_formats_response_report_format_report_configs?
           & get_report_formats_response_report_format_invisible_report_configs?
           & ( get_report_formats_response_report_format_file*
               & get_report_formats_response_report_format_signature )?
           & get_report_formats_response_report_format_trust
           & get_report_formats_response_report_format_active
           & get_report_formats_response_report_format_predefined
           & get_report_formats_response_report_format_configurable
           & get_report_formats_response_report_format_report_type
           & get_report_formats_response_report_format_deprecated?
           & get_report_formats_response_report_format_param*
         }

    get_report_formats_response_report_format_owner
     = element owner
         {
           get_report_formats_response_report_format_owner_name
         }

    get_report_formats_response_report_format_owner_name
     = element name
         {
           name
         }

    get_report_formats_response_report_format_name
     = element name
         {
           name
         }

    get_report_formats_response_report_format_creation_time
     = element creation_time
         {
           iso_time
         }

    get_report_formats_response_report_format_modification_time
     = element modification_time
         {
           iso_time
         }

    get_report_formats_response_report_format_writable
     = element writable
         {
           boolean
         }

    get_report_formats_response_report_format_in_use
     = element in_use
         {
           boolean
         }

    get_report_formats_response_report_format_permissions
     = element permissions
         {
           get_report_formats_response_report_format_permissions_permission*
         }

    get_report_formats_response_report_format_permissions_permission
     = element permission
         {
           get_report_formats_response_report_format_permissions_permission_name
         }

    get_report_formats_response_report_format_permissions_permission_name
     = element name
         {
           name
         }

    get_report_formats_response_report_format_user_tags
     = element user_tags
         {
           get_report_formats_response_report_format_user_tags_count
           & get_report_formats_response_report_format_user_tags_tag*
         }

    get_report_formats_response_report_format_user_tags_count
     = element count
         {
           integer
         }

    get_report_formats_response_report_format_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_report_formats_response_report_format_user_tags_tag_name
           & get_report_formats_response_report_format_user_tags_tag_value
           & get_report_formats_response_report_format_user_tags_tag_comment
         }

    get_report_formats_response_report_format_user_tags_tag_name
     = element name
         {
           text
         }

    get_report_formats_response_report_format_user_tags_tag_value
     = element value
         {
           text
         }

    get_report_formats_response_report_format_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_report_formats_response_report_format_summary
     = element summary
         {
           text
         }

    get_report_formats_response_report_format_description
     = element description
         {
           text
         }

    get_report_formats_response_report_format_extension
     = element extension
         {
           text
         }

    get_report_formats_response_report_format_content_type
     = element content_type
         {
           text
         }

    get_report_formats_response_report_format_alerts
     = element alerts
         {
           get_report_formats_response_report_format_alerts_alert*
         }

    get_report_formats_response_report_format_alerts_alert
     = element alert
         {
           attribute id { uuid }
           & get_report_formats_response_report_format_alerts_alert_name
         }

    get_report_formats_response_report_format_alerts_alert_name
     = element name
         {
           name
         }

    get_report_formats_response_report_format_invisible_alerts
     = element invisible_alerts
         {
           integer
         }

    get_report_formats_response_report_format_report_configs
     = element report_configs
         {
           get_report_formats_response_report_format_report_configs_report_config*
         }

    get_report_formats_response_report_format_report_configs_report_config
     = element report_config
         {
           attribute id { uuid }
           & get_report_formats_response_report_format_report_configs_report_config_name
         }

    get_report_formats_response_report_format_report_configs_report_config_name
     = element name
         {
           name
         }

    get_report_formats_response_report_format_invisible_report_configs
     = element invisible_report_configs
         {
           integer
         }

    get_report_formats_response_report_format_param
     = element param
         {
           get_report_formats_response_report_format_param_name
           & get_report_formats_response_report_format_param_type
           & get_report_formats_response_report_format_param_value
           & get_report_formats_response_report_format_param_default
         }

    get_report_formats_response_report_format_param_name
     = element name
         {
           name
         }

    get_report_formats_response_report_format_param_type
     = element type
         {
           get_report_formats_response_report_format_param_type_min?
           & get_report_formats_response_report_format_param_type_max?
           & get_report_formats_response_report_format_param_type_options?
           & xsd:token { pattern = "boolean|integer|multi_selection|selection|string|text|report_format_list" }
         }

    get_report_formats_response_report_format_param_type_min
     = element min
         {
           text
         }

    get_report_formats_response_report_format_param_type_max
     = element max
         {
           text
         }

    get_report_formats_response_report_format_param_type_options
     = element options
         {
           get_report_formats_response_report_format_param_type_options_option*
         }

    get_report_formats_response_report_format_param_type_options_option
     = element option
         {
           text
         }

    get_report_formats_response_report_format_param_value
     = element value
         {
           get_report_formats_response_report_format_param_value_report_format*
         }

    get_report_formats_response_report_format_param_value_report_format
     = element report_format
         {
           attribute id { uuid }
           & get_report_formats_response_report_format_param_value_report_format_name
         }

    get_report_formats_response_report_format_param_value_report_format_name
     = element name
         {
           text
         }

    get_report_formats_response_report_format_param_default
     = element default
         {
           text
         }

    get_report_formats_response_report_format_file
     = element file
         {
           text # RNC limitation: base64
           & attribute name { text }
         }

    get_report_formats_response_report_format_signature
     = element signature
         {
           text
         }

    get_report_formats_response_report_format_trust
     = element trust
         {
           attribute name { text }
           & get_report_formats_response_report_format_trust_time
           & xsd:token { pattern = "yes|no|unknown" }
         }

    get_report_formats_response_report_format_trust_time
     = element time
         {
           iso_time
         }

    get_report_formats_response_report_format_active
     = element active
         {
           boolean
         }

    get_report_formats_response_report_format_predefined
     = element predefined
         {
           boolean
         }

    get_report_formats_response_report_format_configurable
     = element configurable
         {
           boolean
         }

    get_report_formats_response_report_format_report_type
     = element report_type
         {
           xsd:token { pattern = "scan|audit|all" }
         }

    get_report_formats_response_report_format_deprecated
     = element deprecated
         {
           boolean
         }

    get_report_formats_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_report_formats_response_filters_term
           & get_report_formats_response_filters_name?
           & get_report_formats_response_filters_keywords
         }

    get_report_formats_response_filters_term
     = element term
         {
           text
         }

    get_report_formats_response_filters_name
     = element name
         {
           text
         }

    get_report_formats_response_filters_keywords
     = element keywords
         {
           get_report_formats_response_filters_keywords_keyword*
         }

    get_report_formats_response_filters_keywords_keyword
     = element keyword
         {
           get_report_formats_response_filters_keywords_keyword_column
           & get_report_formats_response_filters_keywords_keyword_relation
           & get_report_formats_response_filters_keywords_keyword_value
         }

    get_report_formats_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_report_formats_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_report_formats_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_report_formats_response_sort
     = element sort
         {
           text
           & get_report_formats_response_sort_field
         }

    get_report_formats_response_sort_field
     = element field
         {
           get_report_formats_response_sort_field_order
         }

    get_report_formats_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_report_formats_response_report_formats
     = element report_formats
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_report_formats_response_report_format_count
     = element report_format_count
         {
           get_report_formats_response_report_format_count_filtered
           & get_report_formats_response_report_format_count_page
         }

    get_report_formats_response_report_format_count_filtered
     = element filtered
         {
           integer
         }

    get_report_formats_response_report_format_count_page
     = element page
         {
           integer
         }

#### 7.72.3 Example: Get information about a report format

Client

     <get_report_formats report_format_id="b993b6f5-f9fb-4e6e-9c94-dd46c00e058d"/>

Manager

     <get_report_formats_response status="200"
                                  status_text="OK">
       <report_format id="b993b6f5-f9fb-4e6e-9c94-dd46c00e058d">
         <name>HTML</name>
         <creation_time>2013-01-31T16:46:32+01:00</creation_time>
         <modification_time>2013-01-31T16:46:32+01:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <extension>html</extension>
         <content_type>text/html</content_type>
         <summary>Single page HTML report.</summary>
         <description>
           A single HTML page listing results of a scan. Style information
           ...
         </description>
         <trust>
           no
           <time>Thu Dec 2 13:22:26 2010</time>
         </trust>
         <active>1</active>
       </report_format>
       ...
     </get_report_formats_response>

#### 7.72.3 Example: Export a report format

Client

     <get_report_formats report_format_id="b993b6f5-f9fb-4e6e-9c94-dd46c00e058d"
                         details="1"/>

Manager

     <get_report_formats_response status="200"
                                  status_text="OK">
       <report_format id="b993b6f5-f9fb-4e6e-9c94-dd46c00e058d">
         <name>HTML</name>
         <comment/>
         <creation_time>2013-01-18T18:23:53+01:00</creation_time>
         <modification_time>2013-01-18T18:24:10+01:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <extension>html</extension>
         <content_type>text/html</content_type>
         <summary>Single page HTML report.</summary>
         <description>
           A single HTML page listing results of a scan. Style information
           ...
         </description>
         <file name="HTML.xsl">
           PD9ldD4K
           ...
         </file>
         <file name="generate">
           IyEvAk
           ...
         </file>
         <signature/>
       </report_format>
       ...
     </get_report_formats_response>

### 7.73 Command `get_report_hosts`

In short: Get hosts from a report.

The client uses the get_report_hosts command to get host information from a single report.

This command is a host-focused subset of get_reports intended to support pagination and reduced response sizes when only host data is needed.

If the "details" attribute is set, the response includes host entries. Otherwise only filter, sort and count information is returned.

Host entries include summary information derived from matching results, such as application count, best OS information, hostname, severity and threat, as well as host detail elements.

Currently "lean" omits selected optional or redundant XML elements from the report hosts output to reduce response size.

The filter affects the selection of matching results and the derived host information returned by the command. When "result_hosts_only" is set, only hosts with matching results are included.

#### 7.73.1 Structure

- Command
  - @report_id (uuid) ID of the report to get hosts from.
  - @filter (text) Filter term to use for report host retrieval.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option levels (levels) Severity levels to select
    - option result_hosts_only (boolean) Whether to limit the response to hosts having results matching the filter
    - column uuid (uuid) Unique ID
    - column ip (text) IP address of the host
    - column asset_id (uuid) UUID of the associated asset
    - column start (iso_time) Host scan start time
    - column end (iso_time) Host scan end time
    - column severity (severity) Highest severity of matching results for the host
  - @filt_id (uuid) ID of filter to use to filter report hosts.
  - @lean (boolean) Whether to return a streamlined response.
  - @details (boolean) Whether to include host details.
- Response
  - @status (status)
  - @status_text (text)
  - <host> *
    A host from the selected report.
    - <ip>
      IP address of the host.
    - <asset> ?
      Asset associated with the host.
      - @asset_id (uuid)
    - <start> ?
      Host scan start time.
    - <end> ?
      Host scan end time.
    - <port_count> ?
      Count of ports on the current page.
      - <page>
        Number of ports on the current page.
    - <result_count> ?
      Counts of results for the host on the current page.
      - <page>
        Number of results on the current page.
      - <critical>
        - <page>
      - <hole>
        - @deprecated (boolean)
        - <page>
      - <high>
        - <page>
      - <warning>
        - @deprecated (boolean)
        - <page>
      - <medium>
        - <page>
      - <info>
        - @deprecated (boolean)
        - <page>
      - <low>
        - <page>
      - <log>
        - <page>
      - <false_positive>
        - <page>
    - <app_count> ?
      Count of applications for the host on the current page.
      - <page>
        Number of applications on the current page.
    - <best_os_cpe> ?
      Best detected operating system CPE for the host.
    - <best_os_txt> ?
      Best detected operating system name for the host.
    - <hostname> ?
      Hostname of the host.
    - <severity> ?
      Highest severity of matching results for the host.
    - <threat> ?
      Threat level derived from the highest severity.
    - <detail> *
      A detail of the host.
      - <name>
        Name of the host detail.
      - <value>
        Value of the host detail.
      - <source> ?
        Source of the host detail.
        - <type>
          Type of source.
        - <name>
          Name of source.
        - <description> ?
          Description of source.
      - <extra> ?
        Extra information for the detail.
  - <filters> ?
    - @id (uuid) UUID of filter if any, else empty or 0.
    - <term>
      Filter term.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort> ?
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <report_hosts> ?
    - @start (integer) First report host.
    - @max (integer) Maximum number of report hosts.
  - <report_host_count> ?
    - <filtered>
      Number of report hosts after filtering.
    - <page>
      Number of report hosts on current page.

#### 7.73.2 RNC

Command

    get_report_hosts
     = element get_report_hosts
         {
           attribute report_id { uuid }
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute lean { boolean }?
           & attribute details { boolean }?
         }

Response

    get_report_hosts_response
     = element get_report_hosts_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_hosts_response_host*
           & get_report_hosts_response_filters?
           & get_report_hosts_response_sort?
           & get_report_hosts_response_report_hosts?
           & get_report_hosts_response_report_host_count?
         }

    get_report_hosts_response_host
     = element host
         {
           get_report_hosts_response_host_ip
           & get_report_hosts_response_host_asset?
           & get_report_hosts_response_host_start?
           & get_report_hosts_response_host_end?
           & get_report_hosts_response_host_port_count?
           & get_report_hosts_response_host_result_count?
           & get_report_hosts_response_host_app_count?
           & get_report_hosts_response_host_best_os_cpe?
           & get_report_hosts_response_host_best_os_txt?
           & get_report_hosts_response_host_hostname?
           & get_report_hosts_response_host_severity?
           & get_report_hosts_response_host_threat?
           & get_report_hosts_response_host_detail*
         }

    get_report_hosts_response_host_ip
     = element ip
         {
           text
         }

    get_report_hosts_response_host_asset
     = element asset
         {
           attribute asset_id { uuid }
         }

    get_report_hosts_response_host_start
     = element start
         {
           iso_time
         }

    get_report_hosts_response_host_end
     = element end
         {
           iso_time
         }

    get_report_hosts_response_host_port_count
     = element port_count
         {
           get_report_hosts_response_host_port_count_page
         }

    get_report_hosts_response_host_port_count_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count
     = element result_count
         {
           get_report_hosts_response_host_result_count_page
           & get_report_hosts_response_host_result_count_critical
           & get_report_hosts_response_host_result_count_hole
           & get_report_hosts_response_host_result_count_high
           & get_report_hosts_response_host_result_count_warning
           & get_report_hosts_response_host_result_count_medium
           & get_report_hosts_response_host_result_count_info
           & get_report_hosts_response_host_result_count_low
           & get_report_hosts_response_host_result_count_log
           & get_report_hosts_response_host_result_count_false_positive
         }

    get_report_hosts_response_host_result_count_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_critical
     = element critical
         {
           get_report_hosts_response_host_result_count_critical_page
         }

    get_report_hosts_response_host_result_count_critical_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_hole
     = element hole
         {
           attribute deprecated { boolean }?
           & get_report_hosts_response_host_result_count_hole_page
         }

    get_report_hosts_response_host_result_count_hole_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_high
     = element high
         {
           get_report_hosts_response_host_result_count_high_page
         }

    get_report_hosts_response_host_result_count_high_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_warning
     = element warning
         {
           attribute deprecated { boolean }?
           & get_report_hosts_response_host_result_count_warning_page
         }

    get_report_hosts_response_host_result_count_warning_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_medium
     = element medium
         {
           get_report_hosts_response_host_result_count_medium_page
         }

    get_report_hosts_response_host_result_count_medium_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_info
     = element info
         {
           attribute deprecated { boolean }?
           & get_report_hosts_response_host_result_count_info_page
         }

    get_report_hosts_response_host_result_count_info_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_low
     = element low
         {
           get_report_hosts_response_host_result_count_low_page
         }

    get_report_hosts_response_host_result_count_low_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_log
     = element log
         {
           get_report_hosts_response_host_result_count_log_page
         }

    get_report_hosts_response_host_result_count_log_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_result_count_false_positive
     = element false_positive
         {
           get_report_hosts_response_host_result_count_false_positive_page
         }

    get_report_hosts_response_host_result_count_false_positive_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_app_count
     = element app_count
         {
           get_report_hosts_response_host_app_count_page
         }

    get_report_hosts_response_host_app_count_page
     = element page
         {
           integer
         }

    get_report_hosts_response_host_best_os_cpe
     = element best_os_cpe
         {
           text
         }

    get_report_hosts_response_host_best_os_txt
     = element best_os_txt
         {
           text
         }

    get_report_hosts_response_host_hostname
     = element hostname
         {
           text
         }

    get_report_hosts_response_host_severity
     = element severity
         {
           severity
         }

    get_report_hosts_response_host_threat
     = element threat
         {
           text
         }

    get_report_hosts_response_host_detail
     = element detail
         {
           get_report_hosts_response_host_detail_name
           & get_report_hosts_response_host_detail_value
           & get_report_hosts_response_host_detail_source?
           & get_report_hosts_response_host_detail_extra?
         }

    get_report_hosts_response_host_detail_name
     = element name
         {
           text
         }

    get_report_hosts_response_host_detail_value
     = element value
         {
           text
         }

    get_report_hosts_response_host_detail_source
     = element source
         {
           get_report_hosts_response_host_detail_source_type
           & get_report_hosts_response_host_detail_source_name
           & get_report_hosts_response_host_detail_source_description?
         }

    get_report_hosts_response_host_detail_source_type
     = element type
         {
           text
         }

    get_report_hosts_response_host_detail_source_name
     = element name
         {
           text
         }

    get_report_hosts_response_host_detail_source_description
     = element description
         {
           text
         }

    get_report_hosts_response_host_detail_extra
     = element extra
         {
           text
         }

    get_report_hosts_response_filters
     = element filters
         {
           attribute id { uuid }?
           & get_report_hosts_response_filters_term
           & get_report_hosts_response_filters_keywords
         }

    get_report_hosts_response_filters_term
     = element term
         {
           text
         }

    get_report_hosts_response_filters_keywords
     = element keywords
         {
           get_report_hosts_response_filters_keywords_keyword*
         }

    get_report_hosts_response_filters_keywords_keyword
     = element keyword
         {
           get_report_hosts_response_filters_keywords_keyword_column
           & get_report_hosts_response_filters_keywords_keyword_relation
           & get_report_hosts_response_filters_keywords_keyword_value
         }

    get_report_hosts_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_report_hosts_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_report_hosts_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_report_hosts_response_sort
     = element sort
         {
           text
           & get_report_hosts_response_sort_field
         }

    get_report_hosts_response_sort_field
     = element field
         {
           text
           & get_report_hosts_response_sort_field_order
         }

    get_report_hosts_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_report_hosts_response_report_hosts
     = element report_hosts
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_report_hosts_response_report_host_count
     = element report_host_count
         {
           text
           & get_report_hosts_response_report_host_count_filtered
           & get_report_hosts_response_report_host_count_page
         }

    get_report_hosts_response_report_host_count_filtered
     = element filtered
         {
           integer
         }

    get_report_hosts_response_report_host_count_page
     = element page
         {
           integer
         }

#### 7.73.3 Example: Get hosts of a report with details

Client

     <get_report_hosts report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                       details="1"
                       filter="levels=chml rows=10 min_qod=70 first=1 sort-reverse=severity result_hosts_only=1"/>

Manager

     <get_report_hosts_response status="200"
                                status_text="OK">
       <host>
         <ip>127.0.0.1</ip>
         <asset asset_id="9fd3aff1-4550-42cb-8339-1b6776f555d0"/>
         <start>2026-04-08T06:48:21Z</start>
         <end>2026-04-08T07:32:37Z</end>
         <port_count>
           <page>4</page>
         </port_count>
         <result_count>
           <page>5</page>
           <critical>
             <page>0</page>
           </critical>
           <hole deprecated="1">
             <page>1</page>
           </hole>
           <high>
             <page>1</page>
           </high>
           <warning deprecated="1">
             <page>3</page>
           </warning>
           <medium>
             <page>3</page>
           </medium>
           <info deprecated="1">
             <page>1</page>
           </info>
           <low>
             <page>1</page>
           </low>
           <log>
             <page>0</page>
           </log>
           <false_positive>
             <page>0</page>
           </false_positive>
         </result_count>
         <app_count>
           <page>13</page>
         </app_count>
         <best_os_cpe>cpe:/o:canonical:ubuntu_linux:24.04</best_os_cpe>
         <best_os_txt>Ubuntu 24.04</best_os_txt>
         <hostname>localhost</hostname>
         <severity>7.3</severity>
         <threat>High</threat>
         <detail>
           <name>App</name>
           <value>cpe:/a:ietf:transport_layer_security:1.2</value>
           <source>
             <name>1.3.6.1.4.1.25623.1.0.105782</name>
           </source>
         </detail>
       </host>
       <filters id="">
         <term>
           apply_overrides=0 levels=chml rows=10 min_qod=70 first=1 sort-reverse=severity result_hosts_only=1
         </term>
         <keywords>
           <keyword>
             <column>apply_overrides</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
           <keyword>
             <column>levels</column>
             <relation>=</relation>
             <value>chml</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>10</value>
           </keyword>
           <keyword>
             <column>min_qod</column>
             <relation>=</relation>
             <value>70</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort-reverse</column>
             <relation>=</relation>
             <value>severity</value>
           </keyword>
           <keyword>
             <column>result_hosts_only</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           severity
           <order>descending</order>
         </field>
       </sort>
       <report_hosts start="1"
                     max="10"/>
       <report_host_count>
         1
         <filtered>1</filtered>
         <page>0</page>
       </report_host_count>
     </get_report_hosts_response>

### 7.74 Command `get_report_operating_systems`

In short: Get operating systems from a report.

The client uses the get_report_operating_systems command to get operating system information from a single report.

This command is an operating-system-focused subset of get_reports intended to support reduced response sizes when only operating system data is needed.

If the "details" attribute is set, the response includes operating system entries. Otherwise only the operating system count is returned.

Operating system entries include the best detected OS CPE, the best detected OS name and the number of hosts using the same operating system.

The filter affects the selection of matching results used to derive the operating system host counts. When "result_hosts_only" is set, only hosts with matching results are included.

#### 7.74.1 Structure

- Command
  - @report_id (uuid) ID of the report to get operating systems from.
  - @filter (text) Filter term to use for report operating system retrieval.
    Keywords
    - option levels (levels) Severity levels to select
    - option result_hosts_only (boolean) Whether to limit the response to operating systems of hosts having results matching the filter.
  - @filt_id (uuid) ID of filter to use to filter report operating systems.
  - @details (boolean) Whether to include operating system entries.
- Response
  - @status (status)
  - @status_text (text)
  - <operating_systems>
    Operating systems from the selected report.
    - <operating_system> *
      An operating system from the selected report.
      - <best_os_cpe>
        Best detected operating system CPE.
      - <best_os_txt>
        Best detected operating system name.
      - <hosts_count>
        Number of hosts using the operating system.
    - <count> ?
      Number of operating systems in the report.

#### 7.74.2 RNC

Command

    get_report_operating_systems
     = element get_report_operating_systems
         {
           attribute report_id { uuid }
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
         }

Response

    get_report_operating_systems_response
     = element get_report_operating_systems_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_operating_systems_response_operating_systems
         }

    get_report_operating_systems_response_operating_systems
     = element operating_systems
         {
           get_report_operating_systems_response_operating_systems_operating_system*
           & get_report_operating_systems_response_operating_systems_count?
         }

    get_report_operating_systems_response_operating_systems_operating_system
     = element operating_system
         {
           get_report_operating_systems_response_operating_systems_operating_system_best_os_cpe
           & get_report_operating_systems_response_operating_systems_operating_system_best_os_txt
           & get_report_operating_systems_response_operating_systems_operating_system_hosts_count
         }

    get_report_operating_systems_response_operating_systems_operating_system_best_os_cpe
     = element best_os_cpe
         {
           text
         }

    get_report_operating_systems_response_operating_systems_operating_system_best_os_txt
     = element best_os_txt
         {
           text
         }

    get_report_operating_systems_response_operating_systems_operating_system_hosts_count
     = element hosts_count
         {
           integer
         }

    get_report_operating_systems_response_operating_systems_count
     = element count
         {
           integer
         }

#### 7.74.3 Example: Get operating systems of a report with details

Client

     <get_report_operating_systems report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                                   details="1"
                                   filter="levels=chml min_qod=70 result_hosts_only=1"/>

Manager

     <get_report_operating_systems_response status="200"
                                            status_text="OK">
       <operating_systems>
         <operating_system>
           <best_os_cpe>cpe:/o:canonical:ubuntu_linux:24.04</best_os_cpe>
           <best_os_txt>Ubuntu 24.04</best_os_txt>
           <hosts_count>15</hosts_count>
         </operating_system>
         <operating_system>
           <best_os_cpe>cpe:/o:microsoft:windows_11</best_os_cpe>
           <best_os_txt>Microsoft Windows 11</best_os_txt>
           <hosts_count>10</hosts_count>
         </operating_system>
       </operating_systems>
     </get_report_operating_systems_response>

#### 7.74.3 Example: Get operating system count of a report

Client

     <get_report_operating_systems report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                                   details="0"/>

Manager

     <get_report_operating_systems_response status="200"
                                            status_text="OK">
       <operating_systems>
         <count>2</count>
       </operating_systems>
     </get_report_operating_systems_response>

### 7.75 Command `get_report_ports`

In short: Get ports from a report.

The client uses the get_report_ports command to get port information from a single report.

This command is a port-focused subset of get_reports intended to support pagination and reduced response sizes when only port data is needed.

If the "details" attribute is set, the response includes port entries. Otherwise only the total port count together with filter, sort and count information is returned.

The filter affects the selection of matching results and the derived port information returned by the command.

Port entries in "general/..." form are not included in the returned port list and are not counted as report ports.

#### 7.75.1 Structure

- Command
  - @report_id (uuid) ID of the report to get ports from.
  - @filter (text) Filter term to use for report port retrieval.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option levels (levels) Severity levels to select
    - column uuid (uuid) Unique ID
    - column host (text) IP address of the host
    - column port (text) Port of the result
    - column severity (severity) Highest severity of matching results for the port
  - @filt_id (uuid) ID of filter to use to filter report ports.
  - @details (boolean) Whether to include port details.
- Response
  - @status (status)
  - @status_text (text)
  - <ports> ?
    Port information from the selected report.
    - @start (integer) First report port.
    - @max (integer) Maximum number of report ports.
    - <count>
      Total number of report ports.
    - <port> *
      A port from the selected report.
      - <host>
        IP address of the host.
      - <severity>
        Highest severity of matching results for the port.
      - <threat>
        Threat level derived from the severity.
  - <filters> ?
    - @id (uuid) UUID of filter if any, else empty or 0.
    - <term>
      Filter term.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort> ?
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <report_ports> ?
    - @start (integer) First report port.
    - @max (integer) Maximum number of report ports.
  - <report_port_count> ?
    - <filtered>
      Number of report ports after filtering.
    - <page>
      Number of report ports on current page.

#### 7.75.2 RNC

Command

    get_report_ports
     = element get_report_ports
         {
           attribute report_id { uuid }
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
         }

Response

    get_report_ports_response
     = element get_report_ports_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_ports_response_ports?
           & get_report_ports_response_filters?
           & get_report_ports_response_sort?
           & get_report_ports_response_report_ports?
           & get_report_ports_response_report_port_count?
         }

    get_report_ports_response_ports
     = element ports
         {
           attribute start { integer }
           & attribute max { integer }
           & get_report_ports_response_ports_count
           & get_report_ports_response_ports_port*
         }

    get_report_ports_response_ports_count
     = element count
         {
           integer
         }

    get_report_ports_response_ports_port
     = element port
         {
           text
           & get_report_ports_response_ports_port_host
           & get_report_ports_response_ports_port_severity
           & get_report_ports_response_ports_port_threat
         }

    get_report_ports_response_ports_port_host
     = element host
         {
           text
         }

    get_report_ports_response_ports_port_severity
     = element severity
         {
           real
         }

    get_report_ports_response_ports_port_threat
     = element threat
         {
           text
         }

    get_report_ports_response_filters
     = element filters
         {
           attribute id { uuid }?
           & get_report_ports_response_filters_term
           & get_report_ports_response_filters_keywords
         }

    get_report_ports_response_filters_term
     = element term
         {
           text
         }

    get_report_ports_response_filters_keywords
     = element keywords
         {
           get_report_ports_response_filters_keywords_keyword*
         }

    get_report_ports_response_filters_keywords_keyword
     = element keyword
         {
           get_report_ports_response_filters_keywords_keyword_column
           & get_report_ports_response_filters_keywords_keyword_relation
           & get_report_ports_response_filters_keywords_keyword_value
         }

    get_report_ports_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_report_ports_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_report_ports_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_report_ports_response_sort
     = element sort
         {
           text
           & get_report_ports_response_sort_field
         }

    get_report_ports_response_sort_field
     = element field
         {
           text
           & get_report_ports_response_sort_field_order
         }

    get_report_ports_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_report_ports_response_report_ports
     = element report_ports
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_report_ports_response_report_port_count
     = element report_port_count
         {
           text
           & get_report_ports_response_report_port_count_filtered
           & get_report_ports_response_report_port_count_page
         }

    get_report_ports_response_report_port_count_filtered
     = element filtered
         {
           integer
         }

    get_report_ports_response_report_port_count_page
     = element page
         {
           integer
         }

#### 7.75.3 Example: Get ports of a report with details

Client

     <get_report_ports report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                       details="1"
                       filter="levels=chml rows=100 min_qod=70 first=1 sort-reverse=severity result_hosts_only=0"/>

Manager

     <get_report_ports_response status="200"
                                status_text="OK">
       <ports start="1"
              max="100">
         <count>11</count>
         <port>
           25/tcp
           <host>127.0.0.1</host>
           <severity>5.0</severity>
           <threat>Medium</threat>
         </port>
         <port>
           8083/tcp
           <host>127.0.0.1</host>
           <severity>5.0</severity>
           <threat>Medium</threat>
         </port>
         <port>
           22/tcp
           <host>127.0.0.1</host>
           <severity>2.6</severity>
           <threat>Low</threat>
         </port>
       </ports>
       <filters id="">
         <term>
           apply_overrides=0 levels=chml rows=100 min_qod=70 first=1 sort-reverse=severity result_hosts_only=0
         </term>
         <keywords>
           <keyword>
             <column>apply_overrides</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
           <keyword>
             <column>levels</column>
             <relation>=</relation>
             <value>chml</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>100</value>
           </keyword>
           <keyword>
             <column>min_qod</column>
             <relation>=</relation>
             <value>70</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort-reverse</column>
             <relation>=</relation>
             <value>severity</value>
           </keyword>
           <keyword>
             <column>result_hosts_only</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           severity
           <order>descending</order>
         </field>
       </sort>
       <report_ports start="1"
                     max="100"/>
       <report_port_count>
         11
         <filtered>3</filtered>
         <page>0</page>
       </report_port_count>
     </get_report_ports_response>

#### 7.75.3 Example: Get only report port count information

Client

     <get_report_ports report_id="2f628a42-13f3-4420-9f2b-5754aa1aafe9"
                       details="0"/>

Manager

     <get_report_ports_response status="200"
                                status_text="OK">
       <ports start="1"
              max="100">
         <count>11</count>
       </ports>
       <filters id="">
         <term>
           apply_overrides=0 levels=chml rows=100 min_qod=70 first=1 sort-reverse=severity result_hosts_only=0
         </term>
         <keywords>
           <keyword>
             <column>apply_overrides</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
           <keyword>
             <column>levels</column>
             <relation>=</relation>
             <value>chml</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>100</value>
           </keyword>
           <keyword>
             <column>min_qod</column>
             <relation>=</relation>
             <value>70</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort-reverse</column>
             <relation>=</relation>
             <value>severity</value>
           </keyword>
           <keyword>
             <column>result_hosts_only</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           severity
           <order>descending</order>
         </field>
       </sort>
       <report_ports start="1"
                     max="100"/>
       <report_port_count>
         11
         <filtered>24505</filtered>
         <page>0</page>
       </report_port_count>
     </get_report_ports_response>

### 7.76 Command `get_report_tls_certificates`

In short: Get TLS certificates from a report.

The client uses the get_report_tls_certificates command to retrieve TLS certificate information from a single report.

This command is a TLS-certificate-focused subset of get_reports intended to support pagination and reduced response sizes when only TLS certificate data is needed.

If the "details" attribute is set, the response includes TLS certificate entries. Otherwise only the total TLS certificate count together with filter, sort and count information is returned.

The filter affects the selection of matching results and therefore the TLS certificates derived from those results.

#### 7.76.1 Structure

- Command
  - @report_id (uuid) ID of the report to get TLS certificates from.
  - @filter (text) Filter term to use for TLS certificate retrieval.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option levels (levels) Severity levels to select
    - column host (text) IP address of the host
    - column port (text) Port where the certificate was observed
    - column severity (severity) Severity of matching results
  - @filt_id (uuid) ID of filter to use.
  - @details (boolean) Whether to include TLS certificate details.
- Response
  - @status (status)
  - @status_text (text)
  - <tls_certificates> ?
    TLS certificate information from the selected report.
    - <count>
      Total number of TLS certificates.
    - <tls_certificate> *
      A TLS certificate entry.
      - <name>
        .
      - <certificate>
        .
      - <sha256_fingerprint>
        .
      - <md5_fingerprint>
        .
      - <valid>
        .
      - <activation_time>
        .
      - <expiration_time>
        .
      - <subject_dn>
        .
      - <issuer_dn>
        .
      - <serial>
        .
      - <host>
        .
      - <ports>
        .
  - <filters> ?
    .
  - <sort> ?
    .
  - <report_tls_certificates> ?
    - @start (integer)
    - @max (integer)
  - <report_tls_certificate_count> ?
    - <filtered>
      Number of TLS certificates after filtering.
    - <page>
      Number of TLS certificates on current page.

#### 7.76.2 RNC

Command

    get_report_tls_certificates
     = element get_report_tls_certificates
         {
           attribute report_id { uuid }
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute details { boolean }?
         }

Response

    get_report_tls_certificates_response
     = element get_report_tls_certificates_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_report_tls_certificates_response_tls_certificates?
           & filters?
           & sort?
           & get_report_tls_certificates_response_report_tls_certificates?
           & get_report_tls_certificates_response_report_tls_certificate_count?
         }

    get_report_tls_certificates_response_tls_certificates
     = element tls_certificates
         {
           get_report_tls_certificates_response_tls_certificates_count
           & get_report_tls_certificates_response_tls_certificates_tls_certificate*
         }

    get_report_tls_certificates_response_tls_certificates_count
     = element count
         {
           integer
         }

    get_report_tls_certificates_response_tls_certificates_tls_certificate
     = element tls_certificate
         {
           name
           & certificate
           & sha256_fingerprint
           & md5_fingerprint
           & valid
           & activation_time
           & expiration_time
           & subject_dn
           & issuer_dn
           & serial
           & host
           & ports
         }

    get_report_tls_certificates_response_report_tls_certificates
     = element report_tls_certificates
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_report_tls_certificates_response_report_tls_certificate_count
     = element report_tls_certificate_count
         {
           text
           & get_report_tls_certificates_response_report_tls_certificate_count_filtered
           & get_report_tls_certificates_response_report_tls_certificate_count_page
         }

    get_report_tls_certificates_response_report_tls_certificate_count_filtered
     = element filtered
         {
           integer
         }

    get_report_tls_certificates_response_report_tls_certificate_count_page
     = element page
         {
           integer
         }

#### 7.76.3 Example: Get only TLS certificate count

Client

     <get_report_tls_certificates report_id="..."
                                  details="0"/>

Manager

     <get_report_tls_certificates_response status="200"
                                           status_text="OK">
       <tls_certificates>
         <count>3</count>
       </tls_certificates>
     </get_report_tls_certificates_response>

#### 7.76.3 Example: Get TLS certificates with details

Client

     <get_report_tls_certificates report_id="..."
                                  details="1"/>

Manager

     <get_report_tls_certificates_response status="200"
                                           status_text="OK">
       <tls_certificates>
         <tls_certificate>
           <name>...</name>
           <certificate format="DER">...</certificate>
           <sha256_fingerprint>...</sha256_fingerprint>
           <md5_fingerprint>...</md5_fingerprint>
           <valid>1</valid>
           <activation_time>...</activation_time>
           <expiration_time>...</expiration_time>
           <subject_dn>...</subject_dn>
           <issuer_dn>...</issuer_dn>
           <serial>...</serial>
         </tls_certificate>
       </tls_certificates>
     </get_report_tls_certificates_response>

### 7.77 Command `get_reports`

In short: Get one or many reports.

The client uses the get_reports command to get report information.

The XML report format is sent as XML. All other formats are sent in Base64 encoding.

The "lean" attribute requests a reduced report. This option is specifically to support GSA performance when loading big reports, so the effect of "lean" may change between versions, even between minor versions.

Currently "lean" skips certain result elements (MODIFICATION_TIME, SCAN_NVT_VERSION, THREAT, ORIGINAL_THREAT), skips SOURCE/TYPE of host details, skips certain host details ("EXIT_CODE" when equal to "EXIT_NONVULN", "scanned_with_scanner", "scanned_with_feedtype", "scanned_with_feedversion", "OS" and "traceroute"), skips certain elements when they are empty (REFS, QOD/TYPE, ...), and skips ORIGINAL_SEVERITY when it is the same as SEVERITY.

"lean" will always work with the XML report format, but will not necessarily work with any others.

#### 7.77.1 Structure

- Command
  - @report_id (uuid) ID of single report to get.
  - @filter (text) Filter term to use to filter results, when getting a single report.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option apply_overrides (boolean) Whether to apply Overrides
    - option compliance_levels (compliance_levels) Compliance levels to select
    - option delta_states (delta_states) States to select in a delta report
    - option levels (levels) Severity levels to select
    - option min_qod (integer) Minimum QoD of the results
    - option notes (boolean) Whether to include Notes in the report
    - option overrides (boolean) Whether to include Override descriptions in the report
    - option timezone (text) The timezone to use for the report
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name of the NVT
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column compliant ("yes", "no", "incomplete" or "undefined") Compliance status
    - column host (text) Host IP address of the result
    - column hostname (text) Hostname of the result
    - column location (text) Port and protocol of the result
    - column path (text) The local path on the host, e.g. a file location
    - column nvt (text) Unique ID of the test that produced the result
    - column oci_image_name (text) The full name / URL of the image
    - column oci_image_digest (text) The digest of the image
    - column oci_image_registry (text) The registry hostname / address of the image
    - column oci_image_path (text) The path before the short name of the image
    - column oci_image_short_name (text) The last part including the tag of the image
    - column type (threat) Severity type of the result with overrides
    - column original_type (threat) Original severity type of the result
    - column description (text) Description of the result
    - column task (text) Name of the task
    - column report (number) Internal ID of the report
    - column cvss_base (severity) CVSS base score of the NVT that generated the result
    - column nvt_version (text) Version of the NVT that generated the result
    - column severity (severity) Severity of the result with overrides
    - column original_severity (severity) Original severity of the result
    - column vulnerability (text) Name of the NVT that generated result
    - column date (iso_time) Time the result was generated
    - column report_id (uuid) UUID of the report
    - column solution_type (text) Solution type of the result
    - column qod (integer) QoD of the result
    - column qod_type (text) QoD type of the result
    - column task_id (uuid) UUID of the task
    - column cve (text) List of CVEs of the result
  - @filt_id (uuid) ID of filter to use to filter results, when getting a single report.
  - @report_filter (text) Filter term to use to filter reports.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option apply_overrides (boolean) Whether to apply Overrides
    - option min_qod (integer) Minimum QoD of the results
    - option report_compliance_levels (compliance_levels) report compliance level to select
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column task_id (uuid) UUID of the Task of the Report
    - column name (iso_time) Time the scan was started
    - column date (iso_time) Time of the scan
    - column status (text) Status of scan
    - column task (text) Name of the Task the report belongs to
    - column severity (severity) Highest severity of the results in the report
    - column false_positive (integer) Number of false positive results
    - column log (integer) Number of log results
    - column low (integer) Number of low severity results
    - column medium (integer) Number of medium severity results
    - column high (integer) Number of high severity results
    - column critical (integer) Number of critical severity results
    - column hosts (integer) Total number of hosts
    - column result_hosts (integer) Number of hosts with results matching the min_qod
    - column fp_per_host (integer) Number of false positive results per host with results
    - column log_per_host (integer) Number of log results per host with results
    - column low_per_host (integer) Number of low severity results per host with results
    - column medium_per_host (integer) Number of medium severity results per host with results
    - column high_per_host (integer) Number of high severity results per host with results
    - column critical_per_host (integer) Number of critical severity results per host with results
    - column start_time (iso_time) Scan start time
    - column end_time (iso_time) Scan end time
    - column scan_start (iso_time) Scan start time
    - column scan_end (iso_time) Scan end time
    - column compliance_yes (integer) Number of compliance yes results
    - column compliance_no (integer) Number of compliance no results
    - column compliance_incomplete (integer) Number of compliance incomplete results
    - column compliant (compliance_status) Compliance state of the report. Can be yes, no, incomplete or undefined
  - @report_filt_id (uuid) ID of filter to use to filter reports.
  - @details (boolean) Whether to get the details of the reports including the results, hosts, ports etc.
  - @format_id (uuid) ID of requested report format.
  - @config_id (uuid) ID of requested report config.
  - @alert_id (uuid) ID of alert to pass generated report to.
    More Details
    In this case the response is empty, and simply indicates success via the status code.
  - @lean (boolean) Whether to return a streamlined response.
  - @notes_details (boolean) If notes are included, whether to include note details.
  - @overrides_details (boolean) If overrides are included, whether to include override details.
  - @result_tags (boolean) Whether to include tags in the results.
  - @delta_report_id (uuid) ID of second report, for producing a delta report.
  - @ignore_pagination (boolean) Whether to ignore info used to split the report into pages like the filter terms "first" and "rows".
  - @usage_type ("scan", "audit" or "") Optional usage type to limit the reports to. Affects total count unlike filter.
- Response
  - @status (status)
  - @status_text (text)
  - <report> *
    (report)
    Actually attributes and either base64 or a report.
  - The group?
    - <filters>
      - @id (uuid) UUID of filter if any, else 0.
      - <term>
        Filter term.
      - <name> ?
        Filter name, if applicable.
      - <keywords>
        Filter broken down into keywords.
        - <keyword> *
          - <column>
            Column prefix.
          - <relation>
            Relation operator.
            One of:
            =
            :
            ~
            >
            <
          - <value>
            The filter text.
    - <sort>
      - <field>
        - <order>
          One of:
          ascending
          descending
    - <reports>
      - @start (integer) First report.
      - @max (integer) Maximum number of reports.
    - <report_count>
      - <filtered>
        Number of reports after filtering.
      - <page>
        Number of reports on current page.

#### 7.77.2 RNC

Command

    get_reports
     = element get_reports
         {
           attribute report_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute report_filter { text }?
           & attribute report_filt_id { uuid }?
           & attribute details { boolean }?
           & attribute format_id { uuid }?
           & attribute config_id { uuid }?
           & attribute alert_id { uuid }?
           & attribute lean { boolean }?
           & attribute notes_details { boolean }?
           & attribute overrides_details { boolean }?
           & attribute result_tags { boolean }?
           & attribute delta_report_id { uuid }?
           & attribute ignore_pagination { boolean }?
           & attribute usage_type { xsd:token { pattern = "scan|audit|" } }?
         }

Response

    get_reports_response
     = element get_reports_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_reports_response_report*
           & ( get_reports_response_filters
               & get_reports_response_sort
               & get_reports_response_reports
               & get_reports_response_report_count )?
         }

    get_reports_response_report
     = element report    # type report
         {
           text # RNC limitation: base64
           & attribute id { uuid }
           & attribute format_id { uuid }
           & attribute config_id { uuid }
           & attribute extension { text }
           & attribute content_type { text }
           & attribute type { xsd:token { pattern = "scan|assets" } }?
           & report_owner
           & report_name
           & report_comment
           & report_creation_time
           & report_modification_time
           & report_writable
           & report_in_use
           & report_task
           & report_report_format?
           & report_report_config?
           & report_report
         }

    get_reports_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_reports_response_filters_term
           & get_reports_response_filters_name?
           & get_reports_response_filters_keywords
         }

    get_reports_response_filters_term
     = element term
         {
           text
         }

    get_reports_response_filters_name
     = element name
         {
           text
         }

    get_reports_response_filters_keywords
     = element keywords
         {
           get_reports_response_filters_keywords_keyword*
         }

    get_reports_response_filters_keywords_keyword
     = element keyword
         {
           get_reports_response_filters_keywords_keyword_column
           & get_reports_response_filters_keywords_keyword_relation
           & get_reports_response_filters_keywords_keyword_value
         }

    get_reports_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_reports_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_reports_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_reports_response_sort
     = element sort
         {
           text
           & get_reports_response_sort_field
         }

    get_reports_response_sort_field
     = element field
         {
           get_reports_response_sort_field_order
         }

    get_reports_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_reports_response_reports
     = element reports
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_reports_response_report_count
     = element report_count
         {
           get_reports_response_report_count_filtered
           & get_reports_response_report_count_page
         }

    get_reports_response_report_count_filtered
     = element filtered
         {
           integer
         }

    get_reports_response_report_count_page
     = element page
         {
           integer
         }

#### 7.77.3 Example: Get a report in PDF

Client

     <get_reports report_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"
                  format_id="1a60a67e-97d0-4cbf-bc77-f71b08e7043d"/>

Manager

     <get_reports_response status="200"
                           status_text="OK">
       <report id="267a3405-e84a-47da-97b2-5fa0d2e8995e"
               format_id="1a60a67e-97d0-4cbf-bc77-f71b08e7043d"
               extension="pdf"
               content_type="application/pdf">hsisn3qaVFhkjFRG4...</report>
     </get_reports_response>

#### 7.77.3 Example: Get a report in XML

Client

     <get_reports report_id="f0fdf522-276d-4893-9274-fb8699dc2270"/>

Manager

     <get_reports_response status="200"
                           status_text="OK">
       <report id="f0fdf522-276d-4893-9274-fb8699dc2270"
               format_id="d5da9f67-8551-4e51-807b-b6a873d70e34"
               extension="xml"
               content_type="text/xml">
         <report id="f0fdf522-276d-4893-9274-fb8699dc2270">
           <gmp>
             <version>22.7</version>
           </gmp>
           <sort>
             <field>
               type
               <order>descending</order>
             </field>
           </sort>
           <filters id="0">
             <term>first=1 rows=-1 sort=name</term>
             <filter>Critical</filter>
             <filter>High</filter>
             <filter>Medium</filter>
             <filter>Low</filter>
             <filter>Log</filter>
             <keywords>
               <keyword>
                 <column>first</column>
                 <relation>=</relation>
                 <value>1</value>
               </keyword>
               <keyword>
                 <column>rows</column>
                 <relation>=</relation>
                 <value>-1</value>
               </keyword>
               <keyword>
                 <column>sort</column>
                 <relation>=</relation>
                 <value>name</value>
               </keyword>
             </keywords>
           </filters>
           <scan_run_status>Done</scan_run_status>
           <hosts>
             <count>1</count>
           </hosts>
           <closed_cves>
             <count>0</count>
           </closed_cves>
           <vulns>
             <count>3</count>
           </vulns>
           <os>
             <count>1</count>
           </os>
           <apps>
             <count>2</count>
           </apps>
           <ssl_certs>
             <count>0</count>
           </ssl_certs>
           <result_count>
             <full>10</full>
             <filtered>10</filtered>
             <critical>
               <full>0</full>
               <filtered>0</filtered>
             </critical>
             <hole>
               <full>0</full>
               <filtered>0</filtered>
             </hole>
             <high>
               <full>0</full>
               <filtered>0</filtered>
             </high>
             <info>
               <full>7</full>
               <filtered>7</filtered>
             </info>
             <low>
               <full>7</full>
               <filtered>7</filtered>
             </low>
             <log>
               <full>0</full>
               <filtered>0</filtered>
             </log>
             <warning>
               <full>3</full>
               <filtered>3</filtered>
             </warning>
             <medium>
               <full>3</full>
               <filtered>3</filtered>
             </medium>
           </result_count>
           <task id="13bb418a-4220-4575-b35b-ec398bff7417">
             <name>dik mm</name>
           </task>
           <scan>
             <task/>
           </scan>
           <timestamp>2010-02-02T19:11:21+00:00</timestamp>
           <scan_start>2010-02-02T19:11:21+00:00</scan_start>
           <timezone>UTC</timezone>
           <timezone_abbrev>UTC</timezone_abbrev>
           <ports start="1"
                  max="-1">
             <port>
               general/tcp
               <host>127.0.1.1</host>
               <severity>5.0</severity>
               <threat>Medium</threat>
             </port>
             ...
           </ports>
           <results start="1"
                    max="-1">
             <result id="634f7a2e-8ca1-43b7-b6d7-0d4841449508">
               <host>127.0.1.1</host>
               <port>general/tcp</port>
               <nvt oid="1.3.6.1.4.1.25623.1.0.74">
                 <name>Test NVT: fields with ISO-8859-1 chars ()</name>
                 <cvss_base>5.0</cvss_base>
                 <severities score="50">
                   <severity>[...]</severity>
                 </severities>
                 <tags>NOTAGS</tags>
                 <refs>
                   <ref id="CVE-2013-1406"
                        type="cve"/>
                   <ref id="DFN-CERT-2013-0246"
                        type="dfn-cert"/>
                 </refs>
               </nvt>
               <threat>Medium</threat>
               <description>Test with umlaut Warning Port 0.</description>
             </result>
             ...
           </results>
           <host>
             <ip>127.0.1.1</ip>
             <asset asset_id="167a7f18-df86-4695-a6ff-2516ffe2ad43"/>
             <start>2010-02-21T15:35:31Z</start>
             <end>2010-02-21T16:31:13Z</end>
             ...
           </host>
           <scan_end>2010-02-02T19:11:52+00:00</scan_end>
           <errors>
             <count>0</count>
           </errors>
         </report>
       </report>
     </get_reports_response>

#### 7.77.3 Example: Get a report in XML with no details

Client

     <get_reports report_id="f2d54f16-5001-4bf4-9b6f-75af1c1cac18"
                  filter="levels=chml rows=10 min_qod=70 first=1 sort-reverse=severity result_hosts_only=1"
                  details="0"
                  lean="1"/>

Manager

     <get_reports_response status="200"
                           status_text="OK">
       <report id="f2d54f16-5001-4bf4-9b6f-75af1c1cac18"
               format_id=""
               config_id=""
               extension=""
               content_type="application/xml">
         <owner>
           <name>testuser</name>
         </owner>
         <name>2026-04-08T06:47:41Z</name>
         <comment/>
         <creation_time>2026-04-08T06:47:41Z</creation_time>
         <modification_time>2026-04-08T07:32:43Z</modification_time>
         <writable>0</writable>
         <in_use>0</in_use>
         <task id="e966a693-5c95-47d2-92ab-718306bdd735">
           <name>openvasd-full-fast</name>
         </task>
         <report id="f2d54f16-5001-4bf4-9b6f-75af1c1cac18">
           <gmp>
             <version>22.8</version>
           </gmp>
           <sort>
             <field>
               severity
               <order>descending</order>
             </field>
           </sort>
           <filters id="">
             <term>
               apply_overrides=0 levels=chml rows=10 min_qod=70 first=1 sort-reverse=severity result_hosts_only=1
             </term>
             <filter>Critical</filter>
             <filter>High</filter>
             <filter>Medium</filter>
             <filter>Low</filter>
             <keywords>
               <keyword>
                 <column>apply_overrides</column>
                 <relation>=</relation>
                 <value>0</value>
               </keyword>
               <keyword>
                 <column>levels</column>
                 <relation>=</relation>
                 <value>chml</value>
               </keyword>
               <keyword>
                 <column>rows</column>
                 <relation>=</relation>
                 <value>10</value>
               </keyword>
               <keyword>
                 <column>min_qod</column>
                 <relation>=</relation>
                 <value>70</value>
               </keyword>
               <keyword>
                 <column>first</column>
                 <relation>=</relation>
                 <value>1</value>
               </keyword>
               <keyword>
                 <column>sort-reverse</column>
                 <relation>=</relation>
                 <value>severity</value>
               </keyword>
               <keyword>
                 <column>result_hosts_only</column>
                 <relation>=</relation>
                 <value>1</value>
               </keyword>
             </keywords>
           </filters>
           <user_tags>
             <count>1</count>
             <tag id="f81348d7-73e4-4e26-9fb4-7e93cee35a1c">
               <name>default:test</name>
               <value>this is a test tag</value>
               <comment/>
             </tag>
           </user_tags>
           <scan_run_status>Done</scan_run_status>
           <hosts>
             <count>1</count>
           </hosts>
           <closed_cves>
             <count>0</count>
           </closed_cves>
           <vulns>
             <count>68</count>
           </vulns>
           <os>
             <count>1</count>
           </os>
           <apps>
             <count>13</count>
           </apps>
           <ssl_certs>
             <count>3</count>
           </ssl_certs>
           <ports>
             <count>10</count>
           </ports>
           <task id="e966a693-5c95-47d2-92ab-718306bdd735">
             <name>openvasd-full-fast</name>
             <comment/>
             <target id="57cead44-b14e-4526-b3e5-2a6aae779a9b">
               <trash>0</trash>
               <name>another-localhost</name>
               <comment/>
             </target>
             <progress>100</progress>
           </task>
           <timestamp>2026-04-08T06:47:41Z</timestamp>
           <scan_start>2026-04-08T06:47:50Z</scan_start>
           <timezone>UTC</timezone>
           <timezone_abbrev>UTC</timezone_abbrev>
           <result_count>
             100
             <full>100</full>
             <filtered>5</filtered>
             <critical>
               <full>3</full>
               <filtered>0</filtered>
             </critical>
             <hole deprecated="1">
               <full>10</full>
               <filtered>1</filtered>
             </hole>
             <high>
               <full>10</full>
               <filtered>1</filtered>
             </high>
             <info deprecated="1">
               <full>4</full>
               <filtered>1</filtered>
             </info>
             <low>
               <full>4</full>
               <filtered>1</filtered>
             </low>
             <log>
               <full>68</full>
               <filtered>0</filtered>
             </log>
             <warning deprecated="1">
               <full>15</full>
               <filtered>3</filtered>
             </warning>
             <medium>
               <full>15</full>
               <filtered>3</filtered>
             </medium>
             <false_positive>
               <full>0</full>
               <filtered>0</filtered>
             </false_positive>
           </result_count>
           <severity>
             <full>9.8</full>
             <filtered>7.3</filtered>
           </severity>
           <scan_end>2026-04-08T07:32:43Z</scan_end>
           <errors>
             <count>1</count>
             <error>
               <host>
                 127.0.0.1
                 <asset asset_id="9fd3aff1-4550-42cb-8339-1b6776f555d0"/>
               </host>
               <port>general/tcp</port>
               <description>NVT timed out after 320 seconds.</description>
               <nvt oid="1.3.6.1.4.1.25623.1.0.12241">
                 <type>nvt</type>
                 <name>Do not print on AppSocket and socketAPI printers</name>
                 <cvss_base>0.0</cvss_base>
               </nvt>
               <scan_nvt_version>2025-01-22T08:32:30Z</scan_nvt_version>
               <severity>-3</severity>
             </error>
           </errors>
         </report>
       </report>
       <filters id="">
         <term>apply_overrides=0 min_qod=70 first=1 rows=10 sort=name</term>
         <keywords>
           <keyword>
             <column>apply_overrides</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
           <keyword>
             <column>min_qod</column>
             <relation>=</relation>
             <value>70</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>10</value>
           </keyword>
           <keyword>
             <column>sort</column>
             <relation>=</relation>
             <value>name</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <reports start="1"
                max="1000"/>
       <report_count>
         298
         <filtered>1</filtered>
         <page>1</page>
       </report_count>
     </get_reports_response>

### 7.78 Command `get_resource_names`

In short: Get one or many names and IDs for items of given type.

The client uses the get_resource_names command to get the names and IDs for items of the given type.

#### 7.78.1 Structure

- Command
  - @type (text) Type must be one of ALERT, CERT_BUND_ADV, CONFIG, CPE, CREDENTIAL, CVE, DFN_CERT_ADV, FILTER, GROUP, HOST, NOTE, NVT, OS, OVERRIDE, PERMISSION, PORT_LIST, REPORT_CONFIG, REPORT_FORMAT, REPORT, RESULT, ROLE, SCANNER, SCHEDULE, TARGET, TASK, TLS_CERTIFICATE or USER.
  - @resource_id (text) ID of single resource to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column owner (name) Name of the owner
- Response
  - @status (status)
  - @status_text (text)
  - <type>
    The type of the resource.
  - <resource> *
    - @id (integer) A unique number identifying the resource, if available.
    - <name>
      The name of the resource.

#### 7.78.2 RNC

Command

    get_resource_names
     = element get_resource_names
         {
           attribute type { text }
           & attribute resource_id { text }?
           & attribute filter { text }?
         }

Response

    get_resource_names_response
     = element get_resource_names_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_resource_names_response_type
           & get_resource_names_response_resource*
         }

    get_resource_names_response_type
     = element type
         {
           type
         }

    get_resource_names_response_resource
     = element resource
         {
           attribute id { integer }?
           & get_resource_names_response_resource_name
         }

    get_resource_names_response_resource_name
     = element name
         {
           name
         }

#### 7.78.3 Example: Get all resource names for operating systems

Client

     <get_resource_names type="os"
                         filter="first=1, rows=-1"/>

Manager

     <get_resource_names_response status_text="OK"
                                  status="200">
       <type>os</type>
       <resource id="5b6b6aef-b320-42ca-899f-3161ee2a4195">
         <name>cpe:/h:hp:jetdirect</name>
       </resource>
       <resource id="5be25864-9249-431e-8a91-039e334371ad">
         <name>cpe:/o:canonical:ubuntu_linux:18.04</name>
       </resource>
       <resource id="89ccbfe3-9bbb-4c99-b4c7-fb85ca021093">
         <name>cpe:/o:canonical:ubuntu_linux:8.04</name>
       </resource>
       <resource id="f2fa6833-fe34-4e04-a60c-6c5dc1ed0fcf">
         <name>cpe:/o:debian:debian_linux</name>
       </resource>
       <resource id="d29f3e4e-07e0-4eb6-b040-5e179f890784">
         <name>cpe:/o:debian:debian_linux:8</name>
       </resource>
       <resource id="2aa54229-0041-492f-8c81-df0289563512">
         <name>cpe:/o:debian:debian_linux:9</name>
       </resource>
       <resource id="39ff8a64-54c2-405d-8e95-7b086e9a3eca">
         <name>cpe:/o:linux:kernel</name>
       </resource>
       <resource id="19c091f0-a687-4dc3-b482-7d191ead4bb3">
         <name>cpe:/o:microsoft:windows</name>
       </resource>
     </get_resource_names_response>

### 7.79 Command `get_results`

In short: Get results.

The client uses the get_results command to get result information.

If the request includes a notes flag, an overrides flag or an apply_overrides flag and any of these is true, then the request must also include a task ID.

#### 7.79.1 Structure

- Command
  - @result_id (uuid) ID of single result to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option apply_overrides (boolean) Whether to apply Overrides
    - option compliance_levels (compliance_levels) Compliance levels to select
    - option levels (levels) Severity levels to select
    - option min_qod (integer) Minimum QoD of the results
    - option notes (boolean) Whether to include Notes in the report
    - option overrides (boolean) Whether to include Override descriptions in the report
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name of the NVT
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column compliant ("yes", "no", "incomplete" or "undefined") Compliance status
    - column host (text) Host IP address of the result
    - column hostname (text) Hostname of the result
    - column location (text) Port and protocol of the result
    - column path (text) The local path on the host, e.g. a file location
    - column nvt (text) Unique ID of the test that produced the result
    - column oci_image_name (text) The full name / URL of the image
    - column oci_image_digest (text) The digest of the image
    - column oci_image_registry (text) The registry hostname / address of the image
    - column oci_image_path (text) The path before the short name of the image
    - column oci_image_short_name (text) The last part including the tag of the image
    - column type (threat) Severity type of the result with overrides
    - column original_type (threat) Original severity type of the result
    - column description (text) Description of the result
    - column task (text) Name of the task
    - column report (number) Internal ID of the report
    - column cvss_base (severity) CVSS base score of the NVT that generated the result
    - column nvt_version (text) Version of the NVT that generated the result
    - column severity (severity) Severity of the result with overrides
    - column original_severity (severity) Original severity of the result
    - column vulnerability (text) Name of the NVT that generated result
    - column date (iso_time) Time the result was generated
    - column report_id (uuid) UUID of the report
    - column solution_type (text) Solution type of the result
    - column qod (integer) QoD of the result
    - column qod_type (text) QoD type of the result
    - column task_id (uuid) UUID of the task
    - column cve (text) List of CVEs of the result
  - @filt_id (uuid) ID of filter to use to filter query.
  - @task_id (uuid) ID of task for note and override handling.
  - @notes_details (boolean) If notes are included, whether to include note details.
  - @overrides_details (boolean) If overrides are included, whether to include override details.
  - @details (boolean) Whether to include additional details of the results.
  - @get_counts (boolean) Whether to include result counts.
- Response
  - @status (status)
  - @status_text (text)
  - <result> *
    (result)
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <results>
    - @start (integer) First result.
    - @max (integer) Maximum number of results.
  - <result_count> ?
    - <filtered>
      Number of results after filtering.
    - <page>
      Number of results on current page.

#### 7.79.2 RNC

Command

    get_results
     = element get_results
         {
           attribute result_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute task_id { uuid }?
           & attribute notes_details { boolean }?
           & attribute overrides_details { boolean }?
           & attribute details { boolean }?
           & attribute get_counts { boolean }?
         }

Response

    get_results_response
     = element get_results_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_results_response_result*
           & get_results_response_filters
           & get_results_response_sort
           & get_results_response_results
           & get_results_response_result_count?
         }

    get_results_response_result
     = element result    # type result
         {
           attribute id { uuid }
           & result_name
           & result_owner
           & result_comment
           & result_creation_time
           & result_modification_time
           & result_user_tags?
           & result_report?
           & result_task?
           & result_host
           & result_port
           & result_path?
           & result_oci_image?
           & result_nvt
           & result_scan_nvt_version
           & result_threat
           & result_severity
           & result_qod
           & result_original_threat?
           & result_original_severity?
           & result_compliance
           & result_description
           & result_delta?
           & result_detection?
           & result_notes?
           & result_overrides?
           & result_tickets?
         }

    get_results_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_results_response_filters_term
           & get_results_response_filters_name?
           & get_results_response_filters_keywords
         }

    get_results_response_filters_term
     = element term
         {
           text
         }

    get_results_response_filters_name
     = element name
         {
           text
         }

    get_results_response_filters_keywords
     = element keywords
         {
           get_results_response_filters_keywords_keyword*
         }

    get_results_response_filters_keywords_keyword
     = element keyword
         {
           get_results_response_filters_keywords_keyword_column
           & get_results_response_filters_keywords_keyword_relation
           & get_results_response_filters_keywords_keyword_value
         }

    get_results_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_results_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_results_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_results_response_sort
     = element sort
         {
           text
           & get_results_response_sort_field
         }

    get_results_response_sort_field
     = element field
         {
           get_results_response_sort_field_order
         }

    get_results_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_results_response_results
     = element results
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_results_response_result_count
     = element result_count
         {
           get_results_response_result_count_filtered
           & get_results_response_result_count_page
         }

    get_results_response_result_count_filtered
     = element filtered
         {
           integer
         }

    get_results_response_result_count_page
     = element page
         {
           integer
         }

#### 7.79.3 Example: Get one or many results

Client

     <get_results/>

Manager

     <get_results_response status="200"
                           status_text="OK">
       <result id="634f7a2e-8ca1-43b7-b6d7-0d4841449508">
         <owner>
           <name>admin</name>
         </owner>
         <comment/>
         <creation_time>2014-05-23T09:22:12Z</creation_time>
         <modification_time>2014-05-23T09:22:12Z</modification_time>
         <host>127.0.1.1</host>
         <port>general/tcp</port>
         <nvt oid="1.3.6.1.4.1.25623.1.0.74">
           <name>Test NVT: fields with ISO-8859-1 chars</name>
           <cvss_base>5.0</cvss_base>
           <severities score="50">
             <severity>[...]</severity>
           </severities>
           <tags>NOTAGS</tags>
           <refs>
             <ref type="cve"
                  id="CVE-2009-3095"/>
           </refs>
         </nvt>
         <threat>Medium</threat>
         <description>Test with umlaut.</description>
       </result>
       ...
       <filters id="">
         <term>first=1 rows=-1 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           ...
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <results max="-1"
                start="1"/>
       <result_count>
         124
         <filtered>124</filtered>
         <page>124</page>
       </result_count>
     </get_results_response>

#### 7.79.3 Example: Get a result, including notes and overrides

Client

     <get_results result_id="cac9e7c8-c726-49fd-a710-5f99079ab93e"
                  task_id="40b236a9-2b0f-4813-b8c7-bc2b98d9d7e4"
                  filter="notes=1 overrides=1"/>

Manager

     <get_results_response status="200"
                           status_text="OK">
       <result id="cac9e7c8-c726-49fd-a710-5f99079ab93e">
         <owner>
           <name>admin</name>
         </owner>
         <comment/>
         <creation_time>2014-05-23T09:22:12Z</creation_time>
         <modification_time>2014-05-23T09:22:12Z</modification_time>
         <host>127.0.0.1</host>
         <port>general/tcp</port>
         <nvt oid="1.3.6.1.4.1.25623.1.0.75">
           <name>Test NVT: long lines</name>
           <cvss_base>9</cvss_base>
           <severities score="90">
             <severity>[...]</severity>
           </severities>
           <tags>NOTAGS</tags>
           <refs>
             <ref type="cve"
                  id="CVE-2009-3095"/>
           </refs>
         </nvt>
         <threat>High</threat>
         <description>Test with very long warning.</description>
         <original_threat>Medium</original_threat>
         <notes/>
         <overrides>
           <override id="b0832812-75f1-45eb-b676-99c6e6bf2b24">
             <nvt oid="1.3.6.1.4.1.25623.1.0.75">
               <name>Test NVT: long lines</name>
             </nvt>
             <text excerpt="0">Test override</text>
             <new_threat>High</new_threat>
             <orphan>0</orphan>
           </override>
         </overrides>
       </result>
       <filters id="">
         <term>first=1 rows=-1 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           ...
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <results max="-1"
                start="1"/>
       <result_count>
         1
         <filtered>1</filtered>
         <page>1</page>
       </result_count>
     </get_results_response>

### 7.80 Command `get_roles`

In short: Get one or many roles.

The client uses the get_roles command to get role information.

#### 7.80.1 Structure

- Command
  - @role_id (uuid) ID of single role to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan roles instead.
- Response
  - @status (status)
  - @status_text (text)
  - <role> *
    - @id (uuid)
    - <owner>
      Owner of the role.
      - <name>
        The name of the owner.
    - <name>
      The name of the role.
    - <comment>
      The comment on the role.
    - <creation_time>
      Date and time the role was created.
    - <modification_time>
      Date and time the role was last modified.
    - <writable>
      Whether the role is writable.
    - <in_use>
      Whether the role is in use.
    - <permissions>
      Permissions that the current user has on the role.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the role.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <users>
      A comma-separated list of the users who have this role.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <roles>
    - @start (integer) First role.
    - @max (integer) Maximum number of roles.
  - <role_count>
    - <filtered>
      Number of roles after filtering.
    - <page>
      Number of roles on current page.

#### 7.80.2 RNC

Command

    get_roles
     = element get_roles
         {
           attribute role_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
         }

Response

    get_roles_response
     = element get_roles_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_roles_response_role*
           & get_roles_response_filters
           & get_roles_response_sort
           & get_roles_response_roles
           & get_roles_response_role_count
         }

    get_roles_response_role
     = element role
         {
           attribute id { uuid }
           & get_roles_response_role_owner
           & get_roles_response_role_name
           & get_roles_response_role_comment
           & get_roles_response_role_creation_time
           & get_roles_response_role_modification_time
           & get_roles_response_role_writable
           & get_roles_response_role_in_use
           & get_roles_response_role_permissions
           & get_roles_response_role_user_tags?
           & get_roles_response_role_users
         }

    get_roles_response_role_owner
     = element owner
         {
           get_roles_response_role_owner_name
         }

    get_roles_response_role_owner_name
     = element name
         {
           name
         }

    get_roles_response_role_name
     = element name
         {
           name
         }

    get_roles_response_role_comment
     = element comment
         {
           text
         }

    get_roles_response_role_creation_time
     = element creation_time
         {
           iso_time
         }

    get_roles_response_role_modification_time
     = element modification_time
         {
           iso_time
         }

    get_roles_response_role_users
     = element users
         {
           text
         }

    get_roles_response_role_writable
     = element writable
         {
           boolean
         }

    get_roles_response_role_in_use
     = element in_use
         {
           boolean
         }

    get_roles_response_role_permissions
     = element permissions
         {
           get_roles_response_role_permissions_permission*
         }

    get_roles_response_role_permissions_permission
     = element permission
         {
           get_roles_response_role_permissions_permission_name
         }

    get_roles_response_role_permissions_permission_name
     = element name
         {
           name
         }

    get_roles_response_role_user_tags
     = element user_tags
         {
           get_roles_response_role_user_tags_count
           & get_roles_response_role_user_tags_tag*
         }

    get_roles_response_role_user_tags_count
     = element count
         {
           integer
         }

    get_roles_response_role_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_roles_response_role_user_tags_tag_name
           & get_roles_response_role_user_tags_tag_value
           & get_roles_response_role_user_tags_tag_comment
         }

    get_roles_response_role_user_tags_tag_name
     = element name
         {
           text
         }

    get_roles_response_role_user_tags_tag_value
     = element value
         {
           text
         }

    get_roles_response_role_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_roles_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_roles_response_filters_term
           & get_roles_response_filters_name?
           & get_roles_response_filters_keywords
         }

    get_roles_response_filters_term
     = element term
         {
           text
         }

    get_roles_response_filters_name
     = element name
         {
           text
         }

    get_roles_response_filters_keywords
     = element keywords
         {
           get_roles_response_filters_keywords_keyword*
         }

    get_roles_response_filters_keywords_keyword
     = element keyword
         {
           get_roles_response_filters_keywords_keyword_column
           & get_roles_response_filters_keywords_keyword_relation
           & get_roles_response_filters_keywords_keyword_value
         }

    get_roles_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_roles_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_roles_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_roles_response_sort
     = element sort
         {
           text
           & get_roles_response_sort_field
         }

    get_roles_response_sort_field
     = element field
         {
           get_roles_response_sort_field_order
         }

    get_roles_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_roles_response_roles
     = element roles
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_roles_response_role_count
     = element role_count
         {
           get_roles_response_role_count_filtered
           & get_roles_response_role_count_page
         }

    get_roles_response_role_count_filtered
     = element filtered
         {
           integer
         }

    get_roles_response_role_count_page
     = element page
         {
           integer
         }

#### 7.80.3 Example: Get one or many roles

Client

     <get_roles/>

Manager

     <get_roles_response status="200"
                         status_text="OK">
       <role id="b493b7a8-7489-11df-a3ec-002264764cea">
         <name>Management</name>
         <comment>Managers</comment>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <users>sarah, frank</users>
       </role>
       ...
       <filters id="">
         <term>first=1 rows=-1 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           ...
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <roles max="-1"
              start="1"/>
       <role_count>
         1
         <filtered>1</filtered>
         <page>1</page>
       </role_count>
     </get_roles_response>

### 7.81 Command `get_scanners`

In short: Get one or many scanners.

The client uses the get_scanners command to get scanner information.

#### 7.81.1 Structure

- Command
  - @scanner_id (uuid) ID of single scanner to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column host (text) Host of the scanner
    - column port (integer) Port of the scanner
    - column type (scanner_type) Type of the scanner
    - column relay_host (text) Relay host of the scanner
    - column relay_port (integer) Relay port of the scanner
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan scanners instead.
  - @details (boolean) Whether to include extra details like tasks using this scanner.
- Response
  - @status (status)
  - @status_text (text)
  - <scanner> *
    - @id (uuid)
    - <owner>
      Owner of the scanner.
      - <name>
        The name of the owner.
    - <name>
      The name of the scanner.
    - <comment>
      The comment on the scanner.
    - <copy> ?
      The UUID of an existing scanner.
    - <creation_time>
    - <modification_time>
    - <writable>
      Whether the scanner is writable.
    - <in_use>
      Whether any tasks are using the scanner.
    - <permissions>
      Permissions that the current user has on the scanner.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the chedule.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <ca_pub_info>
      (certificate_info)
      Info about the CA certificate.
    - <certificate_info>
      (certificate_info)
      Info about the certificate.
    - <host>
      Host of the scanner.
    - <port>
      Port of the scanner.
    - <type>
      Type of the scanner.
    - <ca_pub>
      CA Certificate to verify the scanner's certificate.
    - <credential>
      Client certificate credential for the Scanner.
      - @id (uuid)
      - <name>
        Name of the credential.
      - <trash>
        Whether the credential is in the trashcan.
    - <relay_host>
      Optional relay host of the scanner.
    - <relay_port>
      Optional relay port of the scanner.
    - <disabled> ?
      Optional Whether the scanner is used by a disabled feature.
    - <configs> ?
      - <config> *
        - @id (uuid)
        - <name>
          The name of the config.
        - <permissions> ?
          Permissions the user has on the config.
    - <tasks> ?
      - <task> *
        - @id (uuid)
        - <name>
          The name of the task.
        - <usage_type>
          The usage type of the task.
          One of:
          scan
          policy
        - <permissions> ?
          Permissions the user has on the task.
    - <info> ?
      - <scanner> ?
        - <name>
          The name of the scanner.
        - <version>
          Version of the scanner.
      - <daemon> ?
        - <name>
          The name of the scanner daemon.
        - <version>
          Version of the scanner daemon.
      - <protocol> ?
        - <name>
          The name of the scanner protocol.
        - <version>
          Version of the scanner protocol.
      - <description> ?
        Description of the scanner..
      - <params> ?
        - <param> *
          Parameter of the scanner..
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <scanners>
    - @start (integer) First scanner.
    - @max (integer) Maximum number of scanners.
  - <scanner_count>
    - <filtered>
      Number of scanners after filtering.
    - <page>
      Number of scanners on current page.

#### 7.81.2 RNC

Command

    get_scanners
     = element get_scanners
         {
           attribute scanner_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute details { boolean }?
         }

Response

    get_scanners_response
     = element get_scanners_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_scanners_response_scanner*
           & get_scanners_response_filters
           & get_scanners_response_sort
           & get_scanners_response_scanners
           & get_scanners_response_scanner_count
         }

    get_scanners_response_scanner
     = element scanner
         {
           attribute id { uuid }
           & get_scanners_response_scanner_owner
           & get_scanners_response_scanner_name
           & get_scanners_response_scanner_comment
           & get_scanners_response_scanner_copy?
           & get_scanners_response_scanner_creation_time
           & get_scanners_response_scanner_modification_time
           & get_scanners_response_scanner_writable
           & get_scanners_response_scanner_in_use
           & get_scanners_response_scanner_permissions
           & get_scanners_response_scanner_user_tags?
           & get_scanners_response_scanner_ca_pub_info
           & get_scanners_response_scanner_certificate_info
           & get_scanners_response_scanner_host
           & get_scanners_response_scanner_port
           & get_scanners_response_scanner_type
           & get_scanners_response_scanner_ca_pub
           & get_scanners_response_scanner_credential
           & get_scanners_response_scanner_relay_host
           & get_scanners_response_scanner_relay_port
           & get_scanners_response_scanner_disabled?
           & get_scanners_response_scanner_configs?
           & get_scanners_response_scanner_tasks?
           & get_scanners_response_scanner_info?
         }

    get_scanners_response_scanner_owner
     = element owner
         {
           get_scanners_response_scanner_owner_name
         }

    get_scanners_response_scanner_owner_name
     = element name
         {
           name
         }

    get_scanners_response_scanner_name
     = element name
         {
           name
         }

    get_scanners_response_scanner_comment
     = element comment
         {
           text
         }

    get_scanners_response_scanner_copy
     = element copy
         {
           uuid
         }

    get_scanners_response_scanner_creation_time
     = element creation_time
         {
           iso_time
         }

    get_scanners_response_scanner_modification_time
     = element modification_time
         {
           iso_time
         }

    get_scanners_response_scanner_writable
     = element writable
         {
           boolean
         }

    get_scanners_response_scanner_in_use
     = element in_use
         {
           boolean
         }

    get_scanners_response_scanner_permissions
     = element permissions
         {
           get_scanners_response_scanner_permissions_permission*
         }

    get_scanners_response_scanner_permissions_permission
     = element permission
         {
           get_scanners_response_scanner_permissions_permission_name
         }

    get_scanners_response_scanner_permissions_permission_name
     = element name
         {
           name
         }

    get_scanners_response_scanner_user_tags
     = element user_tags
         {
           get_scanners_response_scanner_user_tags_count
           & get_scanners_response_scanner_user_tags_tag*
         }

    get_scanners_response_scanner_user_tags_count
     = element count
         {
           integer
         }

    get_scanners_response_scanner_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_scanners_response_scanner_user_tags_tag_name
           & get_scanners_response_scanner_user_tags_tag_value
           & get_scanners_response_scanner_user_tags_tag_comment
         }

    get_scanners_response_scanner_user_tags_tag_name
     = element name
         {
           text
         }

    get_scanners_response_scanner_user_tags_tag_value
     = element value
         {
           text
         }

    get_scanners_response_scanner_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_scanners_response_scanner_ca_pub_info
     = element ca_pub_info    # type certificate_info
         {
           certificate_info_time_status
           & certificate_info_activation_time
           & certificate_info_expiration_time
           & certificate_info_issuer
           & certificate_info_md5_fingerprint
           & certificate_info_sha256_fingerprint?
           & certificate_info_subject?
           & certificate_info_serial?
         }

    get_scanners_response_scanner_certificate_info
     = element certificate_info    # type certificate_info
         {
           certificate_info_time_status
           & certificate_info_activation_time
           & certificate_info_expiration_time
           & certificate_info_issuer
           & certificate_info_md5_fingerprint
           & certificate_info_sha256_fingerprint?
           & certificate_info_subject?
           & certificate_info_serial?
         }

    get_scanners_response_scanner_host
     = element host
         {
           text
         }

    get_scanners_response_scanner_port
     = element port
         {
           text
         }

    get_scanners_response_scanner_type
     = element type
         {
           text
         }

    get_scanners_response_scanner_ca_pub
     = element ca_pub
         {
           text
         }

    get_scanners_response_scanner_credential
     = element credential
         {
           attribute id { uuid }
           & get_scanners_response_scanner_credential_name
           & get_scanners_response_scanner_credential_trash
         }

    get_scanners_response_scanner_credential_name
     = element name
         {
           text
         }

    get_scanners_response_scanner_credential_login
     = element login
         {
           text
         }

    get_scanners_response_scanner_credential_trash
     = element trash
         {
           boolean
         }

    get_scanners_response_scanner_relay_host
     = element relay_host
         {
           text
         }

    get_scanners_response_scanner_relay_port
     = element relay_port
         {
           text
         }

    get_scanners_response_scanner_disabled
     = element disabled
         {
           boolean
         }

    get_scanners_response_scanner_configs
     = element configs
         {
           get_scanners_response_scanner_configs_config*
         }

    get_scanners_response_scanner_configs_config
     = element config
         {
           attribute id { uuid }
           & get_scanners_response_scanner_configs_config_name
           & get_scanners_response_scanner_configs_config_permissions?
         }

    get_scanners_response_scanner_configs_config_name
     = element name
         {
           name
         }

    get_scanners_response_scanner_configs_config_permissions
     = element permissions
         {
           ""
         }

    get_scanners_response_scanner_tasks
     = element tasks
         {
           get_scanners_response_scanner_tasks_task*
         }

    get_scanners_response_scanner_tasks_task
     = element task
         {
           attribute id { uuid }
           & get_scanners_response_scanner_tasks_task_name
           & get_scanners_response_scanner_tasks_task_usage_type
           & get_scanners_response_scanner_tasks_task_permissions?
         }

    get_scanners_response_scanner_tasks_task_name
     = element name
         {
           name
         }

    get_scanners_response_scanner_tasks_task_usage_type
     = element usage_type
         {
           xsd:token { pattern = "scan|policy" }
         }

    get_scanners_response_scanner_tasks_task_permissions
     = element permissions
         {
           ""
         }

    get_scanners_response_scanner_info
     = element info
         {
           get_scanners_response_scanner_info_scanner?
           & get_scanners_response_scanner_info_daemon?
           & get_scanners_response_scanner_info_protocol?
           & get_scanners_response_scanner_info_description?
           & get_scanners_response_scanner_info_params?
         }

    get_scanners_response_scanner_info_scanner
     = element scanner
         {
           get_scanners_response_scanner_info_scanner_name
           & get_scanners_response_scanner_info_scanner_version
         }

    get_scanners_response_scanner_info_scanner_name
     = element name
         {
           ""
         }

    get_scanners_response_scanner_info_scanner_version
     = element version
         {
           ""
         }

    get_scanners_response_scanner_info_daemon
     = element daemon
         {
           get_scanners_response_scanner_info_daemon_name
           & get_scanners_response_scanner_info_daemon_version
         }

    get_scanners_response_scanner_info_daemon_name
     = element name
         {
           ""
         }

    get_scanners_response_scanner_info_daemon_version
     = element version
         {
           ""
         }

    get_scanners_response_scanner_info_protocol
     = element protocol
         {
           get_scanners_response_scanner_info_protocol_name
           & get_scanners_response_scanner_info_protocol_version
         }

    get_scanners_response_scanner_info_protocol_name
     = element name
         {
           ""
         }

    get_scanners_response_scanner_info_protocol_version
     = element version
         {
           ""
         }

    get_scanners_response_scanner_info_description
     = element description
         {
         }

    get_scanners_response_scanner_info_params
     = element params
         {
           get_scanners_response_scanner_info_params_param*
         }

    get_scanners_response_scanner_info_params_param
     = element param
         {
         }

    get_scanners_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_scanners_response_filters_term
           & get_scanners_response_filters_name?
           & get_scanners_response_filters_keywords
         }

    get_scanners_response_filters_term
     = element term
         {
           text
         }

    get_scanners_response_filters_name
     = element name
         {
           text
         }

    get_scanners_response_filters_keywords
     = element keywords
         {
           get_scanners_response_filters_keywords_keyword*
         }

    get_scanners_response_filters_keywords_keyword
     = element keyword
         {
           get_scanners_response_filters_keywords_keyword_column
           & get_scanners_response_filters_keywords_keyword_relation
           & get_scanners_response_filters_keywords_keyword_value
         }

    get_scanners_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_scanners_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_scanners_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_scanners_response_sort
     = element sort
         {
           text
           & get_scanners_response_sort_field
         }

    get_scanners_response_sort_field
     = element field
         {
           get_scanners_response_sort_field_order
         }

    get_scanners_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_scanners_response_scanners
     = element scanners
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_scanners_response_scanner_count
     = element scanner_count
         {
           get_scanners_response_scanner_count_filtered
           & get_scanners_response_scanner_count_page
         }

    get_scanners_response_scanner_count_filtered
     = element filtered
         {
           integer
         }

    get_scanners_response_scanner_count_page
     = element page
         {
           integer
         }

#### 7.81.3 Example: Get full details of a single scanner

Client

     <get_scanners details="1"
                   scanner_id="c33864a9-d3fd-44b3-8717-972bfb01dfcf"/>

Manager

     <get_scanners_response status="200"
                            status_text="OK">
       <scanner id="c33864a9-d3fd-44b3-8717-972bfb01dfcf">
         <name>Default Scanner</name>
         <comment/>
         <creation_time>2014-01-01T13:57:25+01:00</creation_time>
         <modification_time>2014-01-18T12:07:36+01:00</modification_time>
         <writable>0</writable>
         <in_use>1</in_use>
         <host>localhost</host>
         <port>9391</port>
         <type>2</type>
         <ca_pub>...</ca_pub>
         <key_pub>...</key_pub>
         <tasks>
           <task id="813864a9-d3fd-44b3-8717-972bfb01dfc0">
             <name>Debian desktops</name>
             <usage_type>scan</usage_type>
           </task>
           ...
         </tasks>
       </scanner>
       <truncate>...</truncate>
     </get_scanners_response>

### 7.82 Command `get_schedules`

In short: Get one or many schedules.

The client uses the get_schedules command to get schedule information.

#### 7.82.1 Structure

- Command
  - @schedule_id (uuid) ID of single schedule to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column first_time (iso_time) First time the schedule ran or will run
    - column period (integer) Time period between runs in seconds
    - column period_months (integer) Time period between runs in months
    - column duration (integer) Maximum duration of scans run with the schedule
    - column timezone (text) Timezone the schedule uses
    - column first_run (iso_time) Alias for first_time
    - column next_run (iso_time) The next time the schedule will run
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan schedules instead.
  - @tasks (boolean) Whether to include tasks using the schedules.
- Response
  - @status (status)
  - @status_text (text)
  - <schedule> *
    - @id (uuid)
    - <owner>
      Owner of the schedule.
      - <name>
        The name of the owner.
    - <name>
      The name of the schedule.
    - <comment>
      The comment on the schedule.
    - <creation_time>
    - <modification_time>
    - <writable>
      Whether the schedule is writable.
    - <in_use>
      Whether any tasks are using the schedule.
    - <permissions>
      Permissions that the current user has on the schedule.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the schedule.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <icalendar>
      iCalendar text containing the time data.
    - <timezone>
      The timezone that the schedule follows.
    - <tasks> ?
      - <task> *
        - @id (uuid)
        - <name>
          The name of the task.
        - <permissions> ?
          Permissions the user has on the task.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <schedules>
    - @start (integer) First schedule.
    - @max (integer) Maximum number of schedules.
  - <schedule_count>
    - <filtered>
      Number of schedules after filtering.
    - <page>
      Number of schedules on current page.

#### 7.82.2 RNC

Command

    get_schedules
     = element get_schedules
         {
           attribute schedule_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute tasks { boolean }?
         }

Response

    get_schedules_response
     = element get_schedules_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_schedules_response_schedule*
           & get_schedules_response_filters
           & get_schedules_response_sort
           & get_schedules_response_schedules
           & get_schedules_response_schedule_count
         }

    get_schedules_response_schedule
     = element schedule
         {
           attribute id { uuid }
           & get_schedules_response_schedule_owner
           & get_schedules_response_schedule_name
           & get_schedules_response_schedule_comment
           & get_schedules_response_schedule_creation_time
           & get_schedules_response_schedule_modification_time
           & get_schedules_response_schedule_writable
           & get_schedules_response_schedule_in_use
           & get_schedules_response_schedule_permissions
           & get_schedules_response_schedule_user_tags?
           & get_schedules_response_schedule_icalendar
           & get_schedules_response_schedule_timezone
           & get_schedules_response_schedule_tasks?
         }

    get_schedules_response_schedule_owner
     = element owner
         {
           get_schedules_response_schedule_owner_name
         }

    get_schedules_response_schedule_owner_name
     = element name
         {
           name
         }

    get_schedules_response_schedule_name
     = element name
         {
           name
         }

    get_schedules_response_schedule_comment
     = element comment
         {
           text
         }

    get_schedules_response_schedule_creation_time
     = element creation_time
         {
           iso_time
         }

    get_schedules_response_schedule_modification_time
     = element modification_time
         {
           iso_time
         }

    get_schedules_response_schedule_writable
     = element writable
         {
           boolean
         }

    get_schedules_response_schedule_in_use
     = element in_use
         {
           boolean
         }

    get_schedules_response_schedule_permissions
     = element permissions
         {
           get_schedules_response_schedule_permissions_permission*
         }

    get_schedules_response_schedule_permissions_permission
     = element permission
         {
           get_schedules_response_schedule_permissions_permission_name
         }

    get_schedules_response_schedule_permissions_permission_name
     = element name
         {
           name
         }

    get_schedules_response_schedule_user_tags
     = element user_tags
         {
           get_schedules_response_schedule_user_tags_count
           & get_schedules_response_schedule_user_tags_tag*
         }

    get_schedules_response_schedule_user_tags_count
     = element count
         {
           integer
         }

    get_schedules_response_schedule_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_schedules_response_schedule_user_tags_tag_name
           & get_schedules_response_schedule_user_tags_tag_value
           & get_schedules_response_schedule_user_tags_tag_comment
         }

    get_schedules_response_schedule_user_tags_tag_name
     = element name
         {
           text
         }

    get_schedules_response_schedule_user_tags_tag_value
     = element value
         {
           text
         }

    get_schedules_response_schedule_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_schedules_response_schedule_icalendar
     = element icalendar
         {
           text
         }

    get_schedules_response_schedule_timezone
     = element timezone
         {
           timezone
         }

    get_schedules_response_schedule_tasks
     = element tasks
         {
           get_schedules_response_schedule_tasks_task*
         }

    get_schedules_response_schedule_tasks_task
     = element task
         {
           attribute id { uuid }
           & get_schedules_response_schedule_tasks_task_name
           & get_schedules_response_schedule_tasks_task_permissions?
         }

    get_schedules_response_schedule_tasks_task_name
     = element name
         {
           name
         }

    get_schedules_response_schedule_tasks_task_permissions
     = element permissions
         {
           ""
         }

    get_schedules_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_schedules_response_filters_term
           & get_schedules_response_filters_name?
           & get_schedules_response_filters_keywords
         }

    get_schedules_response_filters_term
     = element term
         {
           text
         }

    get_schedules_response_filters_name
     = element name
         {
           text
         }

    get_schedules_response_filters_keywords
     = element keywords
         {
           get_schedules_response_filters_keywords_keyword*
         }

    get_schedules_response_filters_keywords_keyword
     = element keyword
         {
           get_schedules_response_filters_keywords_keyword_column
           & get_schedules_response_filters_keywords_keyword_relation
           & get_schedules_response_filters_keywords_keyword_value
         }

    get_schedules_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_schedules_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_schedules_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_schedules_response_sort
     = element sort
         {
           text
           & get_schedules_response_sort_field
         }

    get_schedules_response_sort_field
     = element field
         {
           get_schedules_response_sort_field_order
         }

    get_schedules_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_schedules_response_schedules
     = element schedules
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_schedules_response_schedule_count
     = element schedule_count
         {
           get_schedules_response_schedule_count_filtered
           & get_schedules_response_schedule_count_page
         }

    get_schedules_response_schedule_count_filtered
     = element filtered
         {
           integer
         }

    get_schedules_response_schedule_count_page
     = element page
         {
           integer
         }

#### 7.82.3 Example: Get full details of a single schedule

Client

     <get_schedules schedule_id="c33864a9-d3fd-44b3-8717-972bfb01dfcf"/>

Manager

     <get_schedules_response status="200"
                             status_text="OK">
       <schedule id="ddda859a-45be-4c58-85b3-517c66230232">
         <owner>
           <name>username</name>
         </owner>
         <name>Every day</name>
         <comment/>
         <creation_time>2020-06-03T16:27:05Z</creation_time>
         <modification_time>2020-06-03T16:27:05Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <icalendar>
                  DTSTART:20200603T162600Z DURATION:PT0S RRULE:FREQ=DAILY
           ...
         </icalendar>
         <timezone>UTC</timezone>
       </schedule>
       <truncate>...</truncate>
     </get_schedules_response>

### 7.83 Command `get_settings`

In short: Get one or many settings.

The client uses the get_settings command to get the settings.

#### 7.83.1 Structure

- Command
  - @setting_id (uuid) ID of single setting to get.
  - @filter (text) Filter term.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column name (name) Name
    - column comment (text) Comment text
    - column value (text) Current value of the setting
  - @first (integer) First result.
  - @max (integer) Maximum number of results in response.
  - @sort_order (sort_order)
  - @sort_field (text)
- Response
  - @status (status)
  - @status_text (text)
  - <filters>
    - <term>
      Filter term.
  - <settings>
    - @start (integer) First setting.
    - @max (integer) Maximum number of settings.
  - <setting> *
    - <name>
    - <comment>
    - <value>
  - <setting_count>
    - <filtered>
      Number of settings after filtering.
    - <page>
      Number of settings on current page.

#### 7.83.2 RNC

Command

    get_settings
     = element get_settings
         {
           attribute setting_id { uuid }?
           & attribute filter { text }?
           & attribute first { integer }?
           & attribute max { integer }?
           & attribute sort_order { sort_order }?
           & attribute sort_field { text }?
         }

Response

    get_settings_response
     = element get_settings_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_settings_response_filters
           & get_settings_response_settings
           & get_settings_response_setting*
           & get_settings_response_setting_count
         }

    get_settings_response_filters
     = element filters
         {
           get_settings_response_filters_term
         }

    get_settings_response_filters_term
     = element term
         {
           text
         }

    get_settings_response_settings
     = element settings
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_settings_response_setting
     = element setting
         {
           get_settings_response_setting_name
           & get_settings_response_setting_comment
           & get_settings_response_setting_value
         }

    get_settings_response_setting_name
     = element name
         {
           text
         }

    get_settings_response_setting_comment
     = element comment
         {
           text
         }

    get_settings_response_setting_value
     = element value
         {
           text
         }

    get_settings_response_setting_count
     = element setting_count
         {
           get_settings_response_setting_count_filtered
           & get_settings_response_setting_count_page
         }

    get_settings_response_setting_count_filtered
     = element filtered
         {
           integer
         }

    get_settings_response_setting_count_page
     = element page
         {
           integer
         }

#### 7.83.3 Example: Get one or many settings

Client

     <get_settings/>

Manager

     <get_settings_response status="200"
                            status_text="OK">
       <settings>
         <setting id="5f5a8712-8017-11e1-8556-406186ea4fc5">
           <name>Rows Per Page</name>
           <value>15</value>
         </setting>
       </settings>
     </get_settings_response>

### 7.84 Command `get_system_reports`

In short: Get one or many system reports.

The client uses the get_system_reports command to get system reports.

#### 7.84.1 Structure

- Command
  - @name (text) A string describing the required report.
  - @duration (integer) The number of seconds into the past that the report should include.
  - @start_time (iso_time) The start of the time interval the report should include.
  - @end_time (iso_time) The end of the time interval the report should include.
  - @brief (boolean) Whether to include the actual reports.
  - @slave_id (uuid) Scanner from which to get report.
- Response
  - @status (status)
  - @status_text (text)
  - <system_report> *
    - <name>
      The name of the system report.
    - <title>
      The title of the system report.
    - <report> ?
      - @format ("png" or "txt")
      - @duration (integer)

#### 7.84.2 RNC

Command

    get_system_reports
     = element get_system_reports
         {
           attribute name { text }?
           & attribute duration { integer }?
           & attribute start_time { iso_time }?
           & attribute end_time { iso_time }?
           & attribute brief { boolean }?
           & attribute slave_id { uuid }?
         }

Response

    get_system_reports_response
     = element get_system_reports_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_system_reports_response_system_report*
         }

    get_system_reports_response_system_report
     = element system_report
         {
           get_system_reports_response_system_report_name
           & get_system_reports_response_system_report_title
           & get_system_reports_response_system_report_report?
         }

    get_system_reports_response_system_report_name
     = element name
         {
           name
         }

    get_system_reports_response_system_report_title
     = element title
         {
           text
         }

    get_system_reports_response_system_report_report
     = element report
         {
           text # RNC limitation: base64
           & attribute format { xsd:token { pattern = "png|txt" } }
           & attribute duration { integer }
         }

#### 7.84.3 Example: Get listing of available system reports

Client

     <get_system_reports brief="1"/>

Manager

     <get_system_reports_response status="200"
                                  status_text="OK">
       <system_report>
         <name>proc</name>
         <title>Processes</title>
       </system_report>
       <system_report>
         <name>load</name>
         <title>System Load</title>
       </system_report>
       <system_report>
         <name>cpu_0</name>
         <title>CPU Usage: CPU 0</title>
       </system_report>
       ...
     </get_system_reports_response>

#### 7.84.3 Example: Get a system report

Client

     <get_system_reports name="proc"/>

Manager

     <get_system_reports_response status="200"
                                  status_text="OK">
       <system_report>
         <name>proc</name>
         <title>Processes</title>
         <report format="png"
                 duration="86400">
           iVBORw0KGgoAAAANSUhEUgAAArkAAAE...2bEdAAAAAElFTkSuQmCC
         </report>
       </system_report>
     </get_system_reports_response>

### 7.85 Command `get_tags`

In short: Get one or many tags.

The client uses the get_tags command to get tag information.

#### 7.85.1 Structure

- Command
  - @tag_id (uuid) ID of single tag to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column active (boolean) Whether the tag is active
    - column resources (name) Total number of resources the tag is attached to
    - column resource_type (text) Type of resource the tag applies to
    - column value (name) Value of the tag
  - @filt_id (text) ID of filter to use to filter query.
  - @trash (boolean) Whether to get tags from the trashcan instead.
  - @names_only (boolean) Whether to get only distinct tag names.
- Response
  - @status (status)
  - @status_text (text)
  - <tag> *
    Information on a single tag.
    - @id (uuid) uuid of the tag (omitted when using names_only).
    - <name>
      Name of the tag (usually namespace:predicate).
    - The group?
      - <permissions>
        Permissions that the current user has on the tag.
        - <permission> *
          - <name>
            The name of the permission.
      - <owner>
        Owner of the tag.
        - <name>
          The name of the owner.
      - <comment>
        Comment for the tag.
      - <creation_time>
        Date and time the tag was created.
      - <modification_time>
        Date and time the tag was last modified.
      - <writable>
        Whether the tag is writable.
      - <in_use>
        Whether any tasks are using the tag.
      - <resources>
        Identifies the resources the tag is to be attached to.
        - <resource> *
          - @id (uuid) ID of a resource the tag is attached to.
          - <name>
            Name of the attached resource if available, empty otherwise.
          - <trash>
            Whether the resource is in the trashcan.
          - <permissions> ?
            Permissions the user has on the resource.
        - <type>
          GMP type of the resources the tag is attached to.
      - <value>
        Value associated with the tag.
      - <active>
        Whether the tag is active.
      - <orphan>
        Whether the tag is attached to a nonexistent resource.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <tags>
    - @start (integer) First tag.
    - @max (integer) Maximum number of tags.
  - <tag_count>
    - <filtered>
      Number of tags after filtering.
    - <page>
      Number of tags on current page.

#### 7.85.2 RNC

Command

    get_tags
     = element get_tags
         {
           attribute tag_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { text }?
           & attribute trash { boolean }?
           & attribute names_only { boolean }?
         }

Response

    get_tags_response
     = element get_tags_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_tags_response_tag*
           & get_tags_response_filters
           & get_tags_response_sort
           & get_tags_response_tags
           & get_tags_response_tag_count
         }

    get_tags_response_tag
     = element tag
         {
           attribute id { uuid }?
           & get_tags_response_tag_name
           & ( get_tags_response_tag_permissions
               & get_tags_response_tag_owner
               & get_tags_response_tag_comment
               & get_tags_response_tag_creation_time
               & get_tags_response_tag_modification_time
               & get_tags_response_tag_writable
               & get_tags_response_tag_in_use
               & get_tags_response_tag_resources
               & get_tags_response_tag_value
               & get_tags_response_tag_active
               & get_tags_response_tag_orphan )?
         }

    get_tags_response_tag_permissions
     = element permissions
         {
           get_tags_response_tag_permissions_permission*
         }

    get_tags_response_tag_permissions_permission
     = element permission
         {
           get_tags_response_tag_permissions_permission_name
         }

    get_tags_response_tag_permissions_permission_name
     = element name
         {
           name
         }

    get_tags_response_tag_owner
     = element owner
         {
           get_tags_response_tag_owner_name
         }

    get_tags_response_tag_owner_name
     = element name
         {
           name
         }

    get_tags_response_tag_name
     = element name
         {
           text
         }

    get_tags_response_tag_comment
     = element comment
         {
           text
         }

    get_tags_response_tag_creation_time
     = element creation_time
         {
           iso_time
         }

    get_tags_response_tag_modification_time
     = element modification_time
         {
           iso_time
         }

    get_tags_response_tag_writable
     = element writable
         {
           boolean
         }

    get_tags_response_tag_in_use
     = element in_use
         {
           boolean
         }

    get_tags_response_tag_resources
     = element resources
         {
           get_tags_response_tag_resources_resource*
           & get_tags_response_tag_resources_type
         }

    get_tags_response_tag_resources_resource
     = element resource
         {
           attribute id { uuid }
           & get_tags_response_tag_resources_resource_name
           & get_tags_response_tag_resources_resource_trash
           & get_tags_response_tag_resources_resource_permissions?
         }

    get_tags_response_tag_resources_resource_name
     = element name
         {
           text
         }

    get_tags_response_tag_resources_resource_trash
     = element trash
         {
           boolean
         }

    get_tags_response_tag_resources_resource_permissions
     = element permissions
         {
           ""
         }

    get_tags_response_tag_resources_type
     = element type
         {
           text
         }

    get_tags_response_tag_value
     = element value
         {
           text
         }

    get_tags_response_tag_active
     = element active
         {
           boolean
         }

    get_tags_response_tag_orphan
     = element orphan
         {
           boolean
         }

    get_tags_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_tags_response_filters_term
           & get_tags_response_filters_name?
           & get_tags_response_filters_keywords
         }

    get_tags_response_filters_term
     = element term
         {
           text
         }

    get_tags_response_filters_name
     = element name
         {
           text
         }

    get_tags_response_filters_keywords
     = element keywords
         {
           get_tags_response_filters_keywords_keyword*
         }

    get_tags_response_filters_keywords_keyword
     = element keyword
         {
           get_tags_response_filters_keywords_keyword_column
           & get_tags_response_filters_keywords_keyword_relation
           & get_tags_response_filters_keywords_keyword_value
         }

    get_tags_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_tags_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_tags_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_tags_response_sort
     = element sort
         {
           text
           & get_tags_response_sort_field
         }

    get_tags_response_sort_field
     = element field
         {
           get_tags_response_sort_field_order
         }

    get_tags_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_tags_response_tags
     = element tags
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_tags_response_tag_count
     = element tag_count
         {
           get_tags_response_tag_count_filtered
           & get_tags_response_tag_count_page
         }

    get_tags_response_tag_count_filtered
     = element filtered
         {
           integer
         }

    get_tags_response_tag_count_page
     = element page
         {
           integer
         }

#### 7.85.3 Example: Get one or many tags

Client

     <get_tags/>

Manager

     <get_tags_response status="200"
                        status_text="OK">
       <tag id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
         <name>geo:long</name>
         <comment/>
         <creation_time>2016-03-03T11:46:56Z</creation_time>
         <modification_time>2016-03-03T11:46:56Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <resource id="b493b7a8-7489-11df-a3ec-002264764cea">
           <type>target</type>
           <name>Server 1</name>
           <trash>0</trash>
         </resource>
         <value>52.2788</value>
         <active>1</active>
       </tag>
       ...
     </get_tags_response>

### 7.86 Command `get_targets`

In short: Get one or many targets.

The client uses the get_targets command to get target information.

#### 7.86.1 Structure

- Command
  - @target_id (uuid) ID of single target to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column hosts (text) Comma-separated list of hosts
    - column exclude_hosts (text) Comma-separated list of excluded hosts
    - column ips (integer) Number of hosts
    - column port_list (name) Name of the port list
    - column ssh_credential (name) Name of the SSH credential
    - column smb_credential (name) Name of the SMB credential
    - column esxi_credential (name) Name of the ESXi credential
    - column snmp_credential (name) Name of the SNMP credential
    - column ssh_elevate_credential (name) Name of the SSH credential to elevate privileges after initial login
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan targets instead.
  - @tasks (boolean) Whether to include list of tasks that use the target.
  - @details (boolean) Whether to include port range and tag info.
- Response
  - @status (status)
  - @status_text (text)
  - <target> *
    - @id (uuid)
    - <owner>
      Owner of the target.
      - <name>
        The name of the owner.
    - <name>
      The name of the target.
    - <comment>
      The comment on the target.
    - <creation_time>
      Date and time the target was created.
    - <modification_time>
      Date and time the target was last modified.
    - <writable>
      Whether the target is writable.
    - <in_use>
      Whether any tasks are using the target.
    - <permissions>
      Permissions that the current user has on the target.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the target.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <hosts>
      A list of hosts.
    - <exclude_hosts>
      A list of hosts to exclude.
    - <max_hosts>
      The maximum number of hosts defined by the target.
    - <ssh_credential>
      - @id (uuid_or_empty)
      - <name>
        The name of the SSH LSC credential.
      - <permissions> ?
        Permissions the user has on the credential.
      - <port>
        The port the LSCs will use.
      - <trash>
        Whether the LSC credential is in the trashcan.
    - <smb_credential>
      - @id (uuid_or_empty)
      - <name>
        The name of the SMB LSC credential.
      - <permissions> ?
        Permissions the user has on the credential.
      - <trash>
        Whether the LSC credential is in the trashcan.
    - <esxi_credential>
      - @id (uuid_or_empty)
      - <name>
        The name of the ESXi LSC credential.
      - <permissions> ?
        Permissions the user has on the credential.
      - <trash>
        Whether the LSC credential is in the trashcan.
    - <krb5_credential>
      - @id (uuid_or_empty)
      - <name>
        The name of the Kerberos 5 LSC credential.
      - <permissions> ?
        Permissions the user has on the credential.
      - <trash>
        Whether the LSC credential is in the trashcan.
    - <snmp_credential>
      - @id (uuid_or_empty)
      - <name>
        The name of the SNMP credential.
      - <permissions> ?
        Permissions the user has on the credential.
      - <trash>
        Whether the credential is in the trashcan.
    - <ssh_elevate_credential>
      SSH LSC credential used to elevate privileges after initial login.
      - @id (uuid_or_empty)
      - <name>
        The name of the SSH LSC credential.
      - <permissions> ?
        Permissions the user has on the credential.
      - <trash>
        Whether the LSC credential is in the trashcan.
    - <permissions>
      Permissions that the current user has on the target.
      - <permission> *
        - <name>
          The name of the permission.
    - <port_range>
      Port range of the target.
    - <port_list>
      - @id (uuid)
      - <name>
        The name of the port_list.
      - <permissions> ?
        Permissions the user has on the port_list.
      - <trash>
        Whether the port_list is in the trashcan.
    - <alive_tests>
      Which alive tests to use.
      - <alive_test> *
        A single alive test to use.
      More Details
      A string representation in the format of the old predefined alive test selections is also included, but its use is deprecated.
    - <reverse_lookup_only>
      Whether to scan only hosts that have names.
    - <reverse_lookup_unify>
      Whether to scan only one IP when multiple IPs have the same name.
    - <allow_simultaneous_ips>
      Whether to scan multiple IPs of the same host simultaneously.
    - <tasks> ?
      All tasks using the target.
      - <task> *
        - @id (uuid)
        - <name>
          The name of the task.
        - <permissions> ?
          Permissions the user has on the task.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <targets>
    - @start (integer) First target.
    - @max (integer) Maximum number of targets.
  - <target_count>
    - <filtered>
      Number of targets after filtering.
    - <page>
      Number of targets on current page.

#### 7.86.2 RNC

Command

    get_targets
     = element get_targets
         {
           attribute target_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute tasks { boolean }?
           & attribute details { boolean }?
         }

Response

    get_targets_response
     = element get_targets_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_targets_response_target*
           & get_targets_response_filters
           & get_targets_response_sort
           & get_targets_response_targets
           & get_targets_response_target_count
         }

    get_targets_response_target
     = element target
         {
           attribute id { uuid }
           & get_targets_response_target_owner
           & get_targets_response_target_name
           & get_targets_response_target_comment
           & get_targets_response_target_creation_time
           & get_targets_response_target_modification_time
           & get_targets_response_target_writable
           & get_targets_response_target_in_use
           & get_targets_response_target_permissions
           & get_targets_response_target_user_tags?
           & get_targets_response_target_hosts
           & get_targets_response_target_exclude_hosts
           & get_targets_response_target_max_hosts
           & get_targets_response_target_ssh_credential
           & get_targets_response_target_smb_credential
           & get_targets_response_target_esxi_credential
           & get_targets_response_target_krb5_credential
           & get_targets_response_target_snmp_credential
           & get_targets_response_target_ssh_elevate_credential
           & get_targets_response_target_permissions
           & get_targets_response_target_port_range
           & get_targets_response_target_port_list
           & get_targets_response_target_alive_tests
           & get_targets_response_target_reverse_lookup_only
           & get_targets_response_target_reverse_lookup_unify
           & get_targets_response_target_allow_simultaneous_ips
           & get_targets_response_target_tasks?
         }

    get_targets_response_target_owner
     = element owner
         {
           get_targets_response_target_owner_name
         }

    get_targets_response_target_owner_name
     = element name
         {
           name
         }

    get_targets_response_target_name
     = element name
         {
           name
         }

    get_targets_response_target_comment
     = element comment
         {
           text
         }

    get_targets_response_target_creation_time
     = element creation_time
         {
           iso_time
         }

    get_targets_response_target_modification_time
     = element modification_time
         {
           iso_time
         }

    get_targets_response_target_hosts
     = element hosts
         {
           text
         }

    get_targets_response_target_exclude_hosts
     = element exclude_hosts
         {
           text
         }

    get_targets_response_target_max_hosts
     = element max_hosts
         {
           integer
         }

    get_targets_response_target_writable
     = element writable
         {
           boolean
         }

    get_targets_response_target_in_use
     = element in_use
         {
           boolean
         }

    get_targets_response_target_permissions
     = element permissions
         {
           get_targets_response_target_permissions_permission*
         }

    get_targets_response_target_permissions_permission
     = element permission
         {
           get_targets_response_target_permissions_permission_name
         }

    get_targets_response_target_permissions_permission_name
     = element name
         {
           name
         }

    get_targets_response_target_user_tags
     = element user_tags
         {
           get_targets_response_target_user_tags_count
           & get_targets_response_target_user_tags_tag*
         }

    get_targets_response_target_user_tags_count
     = element count
         {
           integer
         }

    get_targets_response_target_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_targets_response_target_user_tags_tag_name
           & get_targets_response_target_user_tags_tag_value
           & get_targets_response_target_user_tags_tag_comment
         }

    get_targets_response_target_user_tags_tag_name
     = element name
         {
           text
         }

    get_targets_response_target_user_tags_tag_value
     = element value
         {
           text
         }

    get_targets_response_target_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_targets_response_target_ssh_credential
     = element ssh_credential
         {
           attribute id { uuid_or_empty }
           & get_targets_response_target_ssh_credential_name
           & get_targets_response_target_ssh_credential_permissions?
           & get_targets_response_target_ssh_credential_port
           & get_targets_response_target_ssh_credential_trash
         }

    get_targets_response_target_ssh_credential_name
     = element name
         {
           name
         }

    get_targets_response_target_ssh_credential_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_target_ssh_credential_port
     = element port
         {
           text
         }

    get_targets_response_target_ssh_credential_trash
     = element trash
         {
           boolean
         }

    get_targets_response_target_smb_credential
     = element smb_credential
         {
           attribute id { uuid_or_empty }
           & get_targets_response_target_smb_credential_name
           & get_targets_response_target_smb_credential_permissions?
           & get_targets_response_target_smb_credential_trash
         }

    get_targets_response_target_smb_credential_name
     = element name
         {
           name
         }

    get_targets_response_target_smb_credential_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_target_smb_credential_trash
     = element trash
         {
           boolean
         }

    get_targets_response_target_esxi_credential
     = element esxi_credential
         {
           attribute id { uuid_or_empty }
           & get_targets_response_target_esxi_credential_name
           & get_targets_response_target_esxi_credential_permissions?
           & get_targets_response_target_esxi_credential_trash
         }

    get_targets_response_target_esxi_credential_name
     = element name
         {
           name
         }

    get_targets_response_target_esxi_credential_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_target_esxi_credential_trash
     = element trash
         {
           boolean
         }

    get_targets_response_target_krb5_credential
     = element krb5_credential
         {
           attribute id { uuid_or_empty }
           & get_targets_response_target_krb5_credential_name
           & get_targets_response_target_krb5_credential_permissions?
           & get_targets_response_target_krb5_credential_trash
         }

    get_targets_response_target_krb5_credential_name
     = element name
         {
           name
         }

    get_targets_response_target_krb5_credential_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_target_krb5_credential_trash
     = element trash
         {
           boolean
         }

    get_targets_response_target_snmp_credential
     = element snmp_credential
         {
           attribute id { uuid_or_empty }
           & get_targets_response_target_snmp_credential_name
           & get_targets_response_target_snmp_credential_permissions?
           & get_targets_response_target_snmp_credential_trash
         }

    get_targets_response_target_snmp_credential_name
     = element name
         {
           name
         }

    get_targets_response_target_snmp_credential_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_target_snmp_credential_trash
     = element trash
         {
           boolean
         }

    get_targets_response_target_ssh_elevate_credential
     = element ssh_elevate_credential
         {
           attribute id { uuid_or_empty }
           & get_targets_response_target_ssh_elevate_credential_name
           & get_targets_response_target_ssh_elevate_credential_permissions?
           & get_targets_response_target_ssh_elevate_credential_trash
         }

    get_targets_response_target_ssh_elevate_credential_name
     = element name
         {
           name
         }

    get_targets_response_target_ssh_elevate_credential_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_target_ssh_elevate_credential_trash
     = element trash
         {
           boolean
         }

    get_targets_response_target_port_range
     = element port_range
         {
           name
         }

    get_targets_response_target_port_list
     = element port_list
         {
           attribute id { uuid }
           & get_targets_response_target_port_list_name
           & get_targets_response_target_port_list_permissions?
           & get_targets_response_target_port_list_trash
         }

    get_targets_response_target_port_list_name
     = element name
         {
           name
         }

    get_targets_response_target_port_list_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_target_port_list_trash
     = element trash
         {
           boolean
         }

    get_targets_response_target_alive_tests
     = element alive_tests
         {
           get_targets_response_target_alive_tests_alive_test*
         }

    get_targets_response_target_alive_tests_alive_test
     = element alive_test
         {
           alive_test
         }

    get_targets_response_target_reverse_lookup_only
     = element reverse_lookup_only
         {
           boolean
         }

    get_targets_response_target_reverse_lookup_unify
     = element reverse_lookup_unify
         {
           boolean
         }

    get_targets_response_target_allow_simultaneous_ips
     = element allow_simultaneous_ips
         {
           boolean
         }

    get_targets_response_target_tasks
     = element tasks
         {
           get_targets_response_target_tasks_task*
         }

    get_targets_response_target_tasks_task
     = element task
         {
           attribute id { uuid }
           & get_targets_response_target_tasks_task_name
           & get_targets_response_target_tasks_task_permissions?
         }

    get_targets_response_target_tasks_task_name
     = element name
         {
           name
         }

    get_targets_response_target_tasks_task_permissions
     = element permissions
         {
           ""
         }

    get_targets_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_targets_response_filters_term
           & get_targets_response_filters_name?
           & get_targets_response_filters_keywords
         }

    get_targets_response_filters_term
     = element term
         {
           text
         }

    get_targets_response_filters_name
     = element name
         {
           text
         }

    get_targets_response_filters_keywords
     = element keywords
         {
           get_targets_response_filters_keywords_keyword*
         }

    get_targets_response_filters_keywords_keyword
     = element keyword
         {
           get_targets_response_filters_keywords_keyword_column
           & get_targets_response_filters_keywords_keyword_relation
           & get_targets_response_filters_keywords_keyword_value
         }

    get_targets_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_targets_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_targets_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_targets_response_sort
     = element sort
         {
           text
           & get_targets_response_sort_field
         }

    get_targets_response_sort_field
     = element field
         {
           get_targets_response_sort_field_order
         }

    get_targets_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_targets_response_targets
     = element targets
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_targets_response_target_count
     = element target_count
         {
           get_targets_response_target_count_filtered
           & get_targets_response_target_count_page
         }

    get_targets_response_target_count_filtered
     = element filtered
         {
           integer
         }

    get_targets_response_target_count_page
     = element page
         {
           integer
         }

#### 7.86.3 Example: Get one or many targets

Client

     <get_targets/>

Manager

     <get_targets_response status="200"
                           status_text="OK">
       <target id="b493b7a8-7489-11df-a3ec-002264764cea">
         <name>Localhost</name>
         <comment/>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <writable>0</writable>
         <in_use>7</in_use>
         <hosts>localhost</hosts>
         <max_hosts>1</max_hosts>
         <ssh_credential id="">
           <name/>
         </ssh_credential>
         <smb_credential id="">
           <name/>
         </smb_credential>
         <esxi_credential id="">
           <name/>
         </esxi_credential>
       </target>
       ...
     </get_targets_response>

#### 7.86.3 Example: Get a single target, including tasks using the target

Client

     <get_targets target_id="1f28d970-17ef-4c69-ba8a-13827059f2b9"
                  tasks="1"/>

Manager

     <get_targets_response status="200"
                           status_text="OK">
       <target id="1f28d970-17ef-4c69-ba8a-13827059f2b9">
         <name>dik</name>
         <comment>dik mm</comment>
         <creation_time>2018-08-29T20:21:33Z</creation_time>
         <modification_time>2018-08-29T20:21:33Z</modification_time>
         <writable>0</writable>
         <in_use>4</in_use>
         <hosts>dik.example.org</hosts>
         <max_hosts>1</max_hosts>
         <ssh_credential id="58ff2793-2dc7-43fe-85f9-20bfac5a87e4">
           <name>mm</name>
         </ssh_credential>
         <smb_credential id="">
           <name/>
         </smb_credential>
         <esxi_credential id="">
           <name/>
         </esxi_credential>
         <tasks>
           <task id="13bb418a-4220-4575-b35b-ec398bff7417">
             <name>dik mm</name>
           </task>
           ...
         </tasks>
       </target>
     </get_targets_response>

### 7.87 Command `get_tasks`

In short: Get one or many tasks.

The client uses the get_tasks command to get task information.

As a convenience for clients the response includes a task count and the values of the sort order, sort field and apply overrides flag that the manager applied when selecting the tasks.

A task may be an "import" task. This means the task may not be run, but reports may be uploaded to the task with the command create_report. Import tasks are identified by having an empty id attribute in the target element.

#### 7.87.1 Structure

- Command
  - @task_id (uuid) ID of single task to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option apply_overrides (boolean) Whether to apply Overrides
    - option min_qod (integer) Minimum QoD of the results
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column status (text) Status of the current scan
    - column total (integer) Total number of results
    - column first_report (uuid) UUID of the first report
    - column last_report (uuid) UUID of the last finished report
    - column threat (threat) Severity level of the last finished report
    - column trend ("up", "down", "more", "less" or "same") Trend of the task
    - column severity (severity) Severity of the last finished report
    - column schedule (name) Name of the schedule
    - column next_due (iso_time) Time the task is next due to run
    - column first_report_created (iso_time) Timestamp of the first report
    - column last_report_created (iso_time) Timestamp of the last finished report
    - column first (iso_time) Timestamp of the first report (deprecated, use first_report_created)
    - column last (iso_time) Timestamp of the last finished report (deprecated, use last_report_created)
    - column false_positive (integer) Number of false positive results
    - column log (integer) Number of log results
    - column low (integer) Number of low severity results
    - column medium (integer) Number of medium severity results
    - column high (integer) Number of high severity results
    - column critical (integer) Number of critical severity results
    - column hosts (integer) Total number of hosts
    - column result_hosts (integer) Number of hosts with results matching the min_qod
    - column fp_per_host (integer) Number of false positive results per host with results
    - column log_per_host (integer) Number of log results per host with results
    - column low_per_host (integer) Number of low severity results per host with results
    - column medium_per_host (integer) Number of medium severity results per host with results
    - column high_per_host (integer) Number of high severity results per host with results
    - column critical_per_host (integer) Number of critical severity results per host with results
    - column target (name) Name of the target
    - column usage_type ("scan" or "audit") Usage type
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan tasks instead.
  - @details (boolean) Whether to include full task details.
  - @ignore_pagination (boolean) Whether to ignore info used to split the report into pages like the filter terms "first" and "rows".
  - @schedules_only (boolean) Whether to only include id, name and schedule details.
  - @usage_type ("scan", "audit" or "") Optional usage type to limit the tasks to. Affects total count unlike filter.
- Response
  - @status (status)
  - @status_text (text)
  - <apply_overrides>
    One of:
    0
    1
  - <task> *
    - @id (uuid)
    - One of
      - The group
        - <owner>
          Owner of the task.
          - <name>
            The name of the owner.
        - <name>
          The name of the task.
        - <comment>
          The comment on the task.
        - <creation_time>
          Creation time of the task.
        - <modification_time>
          Last time the task was modified.
        - <writable>
          Whether the task is writable.
        - <in_use>
          Whether this task is currently in use.
        - <permissions>
          Permissions that the current user has on the task.
          - <permission> *
            - <name>
              The name of the permission.
        - <user_tags> ?
          Info on tags attached to the task.
          - <count>
            Number of attached tags.
          - <tag> *
            Short info on an individual tag (only if details were requested).
            - @id (uuid) UUID of the tag.
            - <name>
              Name of the tag (usually namespace:predicate).
            - <value>
              Value of the tag.
            - <comment>
              Comment for the tag.
        - <status>
          The run status of the task.
        - <progress>
          The percentage of the task that is complete.
        - <alterable>
          Whether the task is an Alterable Task.
        - <usage_type>
          The usage type of the task (scan or audit).
          One of:
          scan
          audit
        - <config>
          The scan configuration used by the task.
          - @id (uuid)
          - <name>
            The name of the config.
          - <permissions> ?
            Permissions the user has on the config.
          - <trash>
            Whether the config is in the trashcan.
        - <target>
          The hosts scanned by the task.
          - @id (uuid) ID of target. Empty for import tasks.
          - <name>
            The name of the target.
          - <permissions> ?
            Permissions the user has on the target.
          - <trash>
            Whether the target is in the trashcan.
        - <scanner>
          The scanner used to scan the target.
          - @id (uuid)
          - <name>
            The name of the scanner.
          - <permissions> ?
            Permissions the user has on the scanner.
          - <type>
            Type of the scanner.
        - <alert>
          An alert that applies to the task.
          - @id (uuid_or_empty)
          - <name>
            The name of the alert.
          - <permissions> ?
            Permissions the user has on the alert.
          - <trash>
            Whether the alert is in the trashcan.
        - <observers>
          Users allowed to observe this task.
          - <group> *
            Group allowed to observe this task.
            - @id (uuid)
            - <name>
              The name of the group.
          - <role> *
            Role allowed to observe this task.
            - @id (uuid)
            - <name>
              The name of the role.
        - <schedule>
          When the task will run.
          - @id (uuid_or_empty)
          - <name>
            The name of the schedule.
          - <trash>
            Whether the schedule is in the trashcan.
          - <icalendar> ?
            iCalendar text containing the time data.
          - <timezone> ?
            The timezone the schedule will follow.
        - <schedule_periods>
          A limit to the number of times the task will be scheduled, or 0 for no limit.
        - <report_count>
          Number of reports.
          - <finished>
            Number of reports where the scan completed.
        - <trend>
        - <current_report> ?
          - <report>
            - @id (uuid)
            - <timestamp>
        - <last_report> ?
          - <report>
            - @id (uuid)
            - <timestamp>
            - <scan_end>
            - <result_count> ?
              Result counts for this report.
              - <false_positive>
              - <log>
              - <info>
                This will be deprecated. Use low instead.
              - <low>
              - <warning>
                This will be deprecated. Use medium instead.
              - <medium>
              - <hole>
                This will be deprecated. Use high instead.
              - <high>
              - <critical>
            - <severity> ?
              Maximum severity of the report.
            - <compliance_count> ?
              Complaince counts. Only for audit tasks.
              - <yes>
              - <no>
              - <incomplete>
              - <undefined>
        - <average_duration> ?
          Average scan duration in seconds.
        - <result_count>
          Result count for the entire task.
        - <preferences>
          - <preference> *
            - <name>
              Full name of preference, suitable for end users.
            - <scanner_name>
              Compact name of preference, from scanner.
            - <value>
      - The group
        - <name>
          The name of the task.
        - <schedule>
          When the task will run.
          - @id (uuid_or_empty)
          - <name>
            The name of the schedule.
          - <trash>
            Whether the schedule is in the trashcan.
          - <icalendar> ?
            iCalendar text containing the time data.
          - <timezone> ?
            The timezone the schedule will follow.
        - <schedule_periods>
          A limit to the number of times the task will be scheduled, or 0 for no limit.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <tasks>
    - @start (integer) First task.
    - @max (integer) Maximum number of tasks.
  - <task_count>
    - <filtered>
      Number of tasks after filtering.
    - <page>
      Number of tasks on current page.

#### 7.87.2 RNC

Command

    get_tasks
     = element get_tasks
         {
           attribute task_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
           & attribute details { boolean }?
           & attribute ignore_pagination { boolean }?
           & attribute schedules_only { boolean }?
           & attribute usage_type { xsd:token { pattern = "scan|audit|" } }?
         }

Response

    get_tasks_response
     = element get_tasks_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_tasks_response_apply_overrides
           & get_tasks_response_task*
           & get_tasks_response_filters
           & get_tasks_response_sort
           & get_tasks_response_tasks
           & get_tasks_response_task_count
         }

    get_tasks_response_apply_overrides
     = element apply_overrides
         {
           xsd:token { pattern = "0|1" }
         }

    get_tasks_response_task
     = element task
         {
           attribute id { uuid }
           & ( ( get_tasks_response_task_owner
               & get_tasks_response_task_name
               & get_tasks_response_task_comment
               & get_tasks_response_task_creation_time
               & get_tasks_response_task_modification_time
               & get_tasks_response_task_writable
               & get_tasks_response_task_in_use
               & get_tasks_response_task_permissions
               & get_tasks_response_task_user_tags?
               & get_tasks_response_task_status
               & get_tasks_response_task_progress
               & get_tasks_response_task_alterable
               & get_tasks_response_task_usage_type
               & get_tasks_response_task_config
               & get_tasks_response_task_target
               & get_tasks_response_task_scanner
               & get_tasks_response_task_alert
               & get_tasks_response_task_observers
               & get_tasks_response_task_schedule
               & get_tasks_response_task_schedule_periods
               & get_tasks_response_task_report_count
               & get_tasks_response_task_trend
               & get_tasks_response_task_current_report?
               & get_tasks_response_task_last_report?
               & get_tasks_response_task_average_duration?
               & get_tasks_response_task_result_count
               & get_tasks_response_task_preferences )
               | ( get_tasks_response_task_name
               & get_tasks_response_task_schedule
               & get_tasks_response_task_schedule_periods ) )
         }

    get_tasks_response_task_owner
     = element owner
         {
           get_tasks_response_task_owner_name
         }

    get_tasks_response_task_owner_name
     = element name
         {
           name
         }

    get_tasks_response_task_name
     = element name
         {
           name
         }

    get_tasks_response_task_comment
     = element comment
         {
           text
         }

    get_tasks_response_task_creation_time
     = element creation_time
         {
           iso_time
         }

    get_tasks_response_task_modification_time
     = element modification_time
         {
           iso_time
         }

    get_tasks_response_task_writable
     = element writable
         {
           boolean
         }

    get_tasks_response_task_in_use
     = element in_use
         {
           boolean
         }

    get_tasks_response_task_permissions
     = element permissions
         {
           get_tasks_response_task_permissions_permission*
         }

    get_tasks_response_task_permissions_permission
     = element permission
         {
           get_tasks_response_task_permissions_permission_name
         }

    get_tasks_response_task_permissions_permission_name
     = element name
         {
           name
         }

    get_tasks_response_task_user_tags
     = element user_tags
         {
           get_tasks_response_task_user_tags_count
           & get_tasks_response_task_user_tags_tag*
         }

    get_tasks_response_task_user_tags_count
     = element count
         {
           integer
         }

    get_tasks_response_task_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_tasks_response_task_user_tags_tag_name
           & get_tasks_response_task_user_tags_tag_value
           & get_tasks_response_task_user_tags_tag_comment
         }

    get_tasks_response_task_user_tags_tag_name
     = element name
         {
           text
         }

    get_tasks_response_task_user_tags_tag_value
     = element value
         {
           text
         }

    get_tasks_response_task_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_tasks_response_task_status
     = element status
         {
           task_status
         }

    get_tasks_response_task_progress
     = element progress
         {
           integer
         }

    get_tasks_response_task_alterable
     = element alterable
         {
           boolean
         }

    get_tasks_response_task_usage_type
     = element usage_type
         {
           xsd:token { pattern = "scan|audit" }
         }

    get_tasks_response_task_config
     = element config
         {
           attribute id { uuid }
           & get_tasks_response_task_config_name
           & get_tasks_response_task_config_permissions?
           & get_tasks_response_task_config_trash
         }

    get_tasks_response_task_config_name
     = element name
         {
           name
         }

    get_tasks_response_task_config_permissions
     = element permissions
         {
           ""
         }

    get_tasks_response_task_config_trash
     = element trash
         {
           boolean
         }

    get_tasks_response_task_target
     = element target
         {
           attribute id { uuid }
           & get_tasks_response_task_target_name
           & get_tasks_response_task_target_permissions?
           & get_tasks_response_task_target_trash
         }

    get_tasks_response_task_target_name
     = element name
         {
           name
         }

    get_tasks_response_task_target_permissions
     = element permissions
         {
           ""
         }

    get_tasks_response_task_target_trash
     = element trash
         {
           boolean
         }

    get_tasks_response_task_scanner
     = element scanner
         {
           attribute id { uuid }
           & get_tasks_response_task_scanner_name
           & get_tasks_response_task_scanner_permissions?
           & get_tasks_response_task_scanner_type
         }

    get_tasks_response_task_scanner_name
     = element name
         {
           name
         }

    get_tasks_response_task_scanner_type
     = element type
         {
           integer
         }

    get_tasks_response_task_scanner_permissions
     = element permissions
         {
           ""
         }

    get_tasks_response_task_alert
     = element alert
         {
           attribute id { uuid_or_empty }
           & get_tasks_response_task_alert_name
           & get_tasks_response_task_alert_permissions?
           & get_tasks_response_task_alert_trash
         }

    get_tasks_response_task_alert_name
     = element name
         {
           name
         }

    get_tasks_response_task_alert_permissions
     = element permissions
         {
           ""
         }

    get_tasks_response_task_alert_trash
     = element trash
         {
           boolean
         }

    get_tasks_response_task_observers
     = element observers
         {
           text # RNC limitation: user_list
           & get_tasks_response_task_observers_group*
           & get_tasks_response_task_observers_role*
         }

    get_tasks_response_task_observers_group
     = element group
         {
           attribute id { uuid }
           & get_tasks_response_task_observers_group_name
         }

    get_tasks_response_task_observers_group_name
     = element name
         {
           name
         }

    get_tasks_response_task_observers_role
     = element role
         {
           attribute id { uuid }
           & get_tasks_response_task_observers_role_name
         }

    get_tasks_response_task_observers_role_name
     = element name
         {
           name
         }

    get_tasks_response_task_schedule
     = element schedule
         {
           attribute id { uuid_or_empty }
           & get_tasks_response_task_schedule_name
           & get_tasks_response_task_schedule_trash
           & get_tasks_response_task_schedule_icalendar?
           & get_tasks_response_task_schedule_timezone?
         }

    get_tasks_response_task_schedule_name
     = element name
         {
           name
         }

    get_tasks_response_task_schedule_trash
     = element trash
         {
           boolean
         }

    get_tasks_response_task_schedule_icalendar
     = element icalendar
         {
           iso_time
         }

    get_tasks_response_task_schedule_timezone
     = element timezone
         {
           text
         }

    get_tasks_response_task_schedule_periods
     = element schedule_periods
         {
           integer
         }

    get_tasks_response_task_report_count
     = element report_count
         {
           text # RNC limitation: integer
           & get_tasks_response_task_report_count_finished
         }

    get_tasks_response_task_report_count_finished
     = element finished
         {
           integer
         }

    get_tasks_response_task_trend
     = element trend
         {
           task_trend
         }

    get_tasks_response_task_current_report
     = element current_report
         {
           get_tasks_response_task_current_report_report
         }

    get_tasks_response_task_current_report_report
     = element report
         {
           attribute id { uuid }
           & get_tasks_response_task_current_report_report_timestamp
         }

    get_tasks_response_task_current_report_report_timestamp
     = element timestamp
         {
           iso_time
         }

    get_tasks_response_task_last_report
     = element last_report
         {
           get_tasks_response_task_last_report_report
         }

    get_tasks_response_task_last_report_report
     = element report
         {
           attribute id { uuid }
           & get_tasks_response_task_last_report_report_timestamp
           & get_tasks_response_task_last_report_report_scan_end
           & get_tasks_response_task_last_report_report_result_countget_tasks_response_task_last_report_report_severity?
           & get_tasks_response_task_last_report_report_compliance_count?
         }

    get_tasks_response_task_last_report_report_timestamp
     = element timestamp
         {
           iso_time
         }

    get_tasks_response_task_last_report_report_scan_end
     = element scan_end
         {
           iso_time
         }

    get_tasks_response_task_last_report_report_result_count
     = element result_count
         {
           get_tasks_response_task_last_report_report_result_count_false_positive
           & get_tasks_response_task_last_report_report_result_count_log
           & get_tasks_response_task_last_report_report_result_count_info
           & get_tasks_response_task_last_report_report_result_count_low
           & get_tasks_response_task_last_report_report_result_count_warning
           & get_tasks_response_task_last_report_report_result_count_medium
           & get_tasks_response_task_last_report_report_result_count_hole
           & get_tasks_response_task_last_report_report_result_count_high
           & get_tasks_response_task_last_report_report_result_count_critical
         }

    get_tasks_response_task_last_report_report_result_count_false_positive
     = element false_positive
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_log
     = element log
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_info
     = element info
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_low
     = element low
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_warning
     = element warning
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_medium
     = element medium
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_hole
     = element hole
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_high
     = element high
         {
           integer
         }

    get_tasks_response_task_last_report_report_result_count_critical
     = element critical
         {
           integer
         }

    get_tasks_response_task_last_report_report_severity
     = element severity
         {
           severity
         }

    get_tasks_response_task_last_report_report_compliance_count
     = element compliance_count
         {
           get_tasks_response_task_last_report_report_compliance_count_yes
           & get_tasks_response_task_last_report_report_compliance_count_no
           & get_tasks_response_task_last_report_report_compliance_count_incomplete
           & get_tasks_response_task_last_report_report_compliance_count_undefined
         }

    get_tasks_response_task_last_report_report_compliance_count_yes
     = element yes
         {
           integer
         }

    get_tasks_response_task_last_report_report_compliance_count_no
     = element no
         {
           integer
         }

    get_tasks_response_task_last_report_report_compliance_count_incomplete
     = element incomplete
         {
           integer
         }

    get_tasks_response_task_last_report_report_compliance_count_undefined
     = element undefined
         {
           integer
         }

    get_tasks_response_task_average_duration
     = element average_duration
         {
           text
         }

    get_tasks_response_task_result_count
     = element result_count
         {
           text
         }

    get_tasks_response_task_preferences
     = element preferences
         {
           get_tasks_response_task_preferences_preference*
         }

    get_tasks_response_task_preferences_preference
     = element preference
         {
           get_tasks_response_task_preferences_preference_name
           & get_tasks_response_task_preferences_preference_scanner_name
           & get_tasks_response_task_preferences_preference_value
         }

    get_tasks_response_task_preferences_preference_name
     = element name
         {
           text
         }

    get_tasks_response_task_preferences_preference_scanner_name
     = element scanner_name
         {
           text
         }

    get_tasks_response_task_preferences_preference_value
     = element value
         {
           text
         }

    get_tasks_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_tasks_response_filters_term
           & get_tasks_response_filters_name?
           & get_tasks_response_filters_keywords
         }

    get_tasks_response_filters_term
     = element term
         {
           text
         }

    get_tasks_response_filters_name
     = element name
         {
           text
         }

    get_tasks_response_filters_keywords
     = element keywords
         {
           get_tasks_response_filters_keywords_keyword*
         }

    get_tasks_response_filters_keywords_keyword
     = element keyword
         {
           get_tasks_response_filters_keywords_keyword_column
           & get_tasks_response_filters_keywords_keyword_relation
           & get_tasks_response_filters_keywords_keyword_value
         }

    get_tasks_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_tasks_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_tasks_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_tasks_response_sort
     = element sort
         {
           text
           & get_tasks_response_sort_field
         }

    get_tasks_response_sort_field
     = element field
         {
           get_tasks_response_sort_field_order
         }

    get_tasks_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_tasks_response_tasks
     = element tasks
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_tasks_response_task_count
     = element task_count
         {
           get_tasks_response_task_count_filtered
           & get_tasks_response_task_count_page
         }

    get_tasks_response_task_count_filtered
     = element filtered
         {
           integer
         }

    get_tasks_response_task_count_page
     = element page
         {
           integer
         }

#### 7.87.3 Example: Get one or many tasks

Client

     <get_tasks/>

Manager

     <get_tasks_response status="200"
                         status_text="OK">
       <apply_overrides>0</apply_overrides>
       <task id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
         <name>Scan Webserver</name>
         <comment>Scan of the web server.</comment>
         <creation_time>2013-01-03T13:50:03+01:00</creation_time>
         <modification_time>2013-01-11T16:03:24+01:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <owner>
           <name>admin</name>
         </owner>
         <observers/>
         <alterable>0</alterable>
         <config id="daba56c8-73ec-11df-a475-002264764cea">
           <name>Full and fast</name>
         </config>
         <target id="1f28d970-17ef-4c69-ba8a-13827059f2b9">
           <name>dik</name>
         </target>
         <scanner id="34891919-37ff-5c69-1a2a-089e9018308a">
           <name>foo scanner</name>
           <type>2</type>
         </scanner>
         <status>Done</status>
         <progress>-1</progress>
         <report_count>
           2
           <finished>2</finished>
         </report_count>
         <trend/>
         <schedule id="">
           <name/>
           <trash>0</trash>
         </schedule>
         <last_report>
           <report id="f0fdf522-276d-4893-9274-fb8699dc2270">
             <timestamp>Mon Feb 1 19:11:20 2010</timestamp>
             <result_count>
               <critical>0</critical>
               <hole>0</hole>
               <high>0</high>
               <info>7</info>
               <low>7</low>
               <log>0</log>
               <warning>3</warning>
               <medium>3</medium>
             </result_count>
             <severity>5.0</severity>
           </report>
         </last_report>
         <alert id="">
           <name/>
         </alert>
         <preferences>
           <preference>
             <name>Maximum concurrently executed NVTs per host</name>
             <scanner_name>max_checks</scanner_name>
             <value>4</value>
           </preference>
           <preference>
             <name>Maximum concurrently scanned hosts</name>
             <scanner_name>max_hosts</scanner_name>
             <value>20</value>
           </preference>
           <preference>
             <name>Add results to Asset Management</name>
             <scanner_name>in_assets</scanner_name>
             <value>yes</value>
           </preference>
         </preferences>
       </task>
       <task id="f14747d3-a4d7-4e79-99bb-a0a1276cb78c">
         <name>Scan Mailserver</name>
         ...
       </task>
     </get_tasks_response>

#### 7.87.3 Example: Get a single task, including all reports

Client

     <get_tasks task_id="f14747d3-a4d7-4e79-99bb-a0a1276cb78c"
                details="1"/>

Manager

     <get_tasks_response status="200"
                         status_text="OK">
       <apply_overrides>0</apply_overrides>
       <task id="13bb418a-4220-4575-b35b-ec398bff7417">
         <name>Scan Mailserver</name>
         <comment>Scan of the web server.</comment>
         <creation_time>2013-01-03T13:50:03+01:00</creation_time>
         <modification_time>2013-01-11T16:03:24+01:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <owner>
           <name>admin</name>
         </owner>
         <observers/>
         <alterable>1</alterable>
         <config id="daba56c8-73ec-11df-a475-002264764cea">
           <name>Full and fast</name>
         </config>
         <target id="1f28d970-17ef-4c69-ba8a-13827059f2b9">
           <name>dik</name>
         </target>
         <status>Done</status>
         <progress>-1</progress>
         <report_count>
           2
           <finished>2</finished>
         </report_count>
         <trend/>
         <schedule id="">
           <name/>
           <trash>0</trash>
         </schedule>
         <last_report>
           <report id="2688e6c7-db29-4505-80f1-0fd4a09e1011">
             <timestamp>Mon Feb 1 19:11:20 2010</timestamp>
             <result_count>
               <critical>0</critical>
               <hole>0</hole>
               <high>0</high>
               <info>7</info>
               <low>7</low>
               <log>0</log>
               <warning>3</warning>
               <medium>3</medium>
             </result_count>
             <severity>5.0</severity>
           </report>
         </last_report>
         <alert id="">
           <name/>
         </alert>
         <reports>
           <report id="f0fdf522-276d-4893-9274-fb8699dc2270">
             <timestamp>Mon Feb 1 18:51:38 2010</timestamp>
             <scan_run_status>Done</scan_run_status>
             <result_count>
               <critical>0</critical>
               <hole>0</hole>
               <high>0</high>
               <info>7</info>
               <low>7</low>
               <log>0</log>
               <warning>3</warning>
               <medium>3</medium>
             </result_count>
           </report>
           <report id="2688e6c7-db29-4505-80f1-0fd4a09e1011">
             <timestamp>Mon Feb 1 19:11:20 2010</timestamp>
             <scan_run_status>Done</scan_run_status>
             <result_count>
               <critical>0</critical>
               <hole>0</hole>
               <high>0</high>
               <info>7</info>
               <low>7</low>
               <log>0</log>
               <warning>3</warning>
               <medium>3</medium>
             </result_count>
             <severity>5.0</severity>
           </report>
           <preferences>
             <preference>
               <name>Maximum concurrently executed NVTs per host</name>
               <scanner_name>max_checks</scanner_name>
               <value>4</value>
             </preference>
             <preference>
               <name>Maximum concurrently scanned hosts</name>
               <scanner_name>max_hosts</scanner_name>
               <value>20</value>
             </preference>
             <preference>
               <name>Add results to Asset Management</name>
               <scanner_name>in_assets</scanner_name>
               <value>yes</value>
             </preference>
           </preferences>
         </reports>
       </task>
       <filters id="0">
         <term/>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <tasks max="-1"
              start="1"/>
       <task_count>
         3
         <filtered>1</filtered>
         <page>1</page>
       </task_count>
     </get_tasks_response>

#### 7.87.3 Example: Get a single import task

Client

     <get_tasks task_id="f404781f-6d2b-420c-b7a1-0d3f27f1a43b"/>

Manager

     <get_tasks_response status="200"
                         status_text="OK">
       <apply_overrides>0</apply_overrides>
       <task id="f404781f-6d2b-420c-b7a1-0d3f27f1a43b">
         <owner>
           <name>m</name>
         </owner>
         <name>Import Example</name>
         <comment>This task provides for uploading reports</comment>
         <creation_time>2019-08-13T12:28:43+02:00</creation_time>
         <modification_time>2019-08-13T12:28:44+02:00</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <alterable>0</alterable>
         <usage_type>scan</usage_type>
         <config id="">
           <name/>
           <type>-1</type>
           <trash>0</trash>
         </config>
         <target id="">
           <name/>
           <trash>0</trash>
         </target>
         <scanner id="">
           <name/>
           <type>0</type>
           <trash>0</trash>
         </scanner>
         <status>Done</status>
         <progress>-1</progress>
         <report_count>
           1
           <finished>1</finished>
         </report_count>
         <trend/>
         <schedule id="">
           <name/>
           <trash>0</trash>
         </schedule>
         <last_report>
           <report id="5496f417-9b3b-4582-b450-c05ca99009d8">
             <timestamp>2019-08-13T12:29:25+02:00</timestamp>
             <scan_start>2019-04-24T14:26:01+02:00</scan_start>
             <scan_end>2019-04-24T14:50:59+02:00</scan_end>
             <result_count>
               <critical>0</critical>
               <hole>1</hole>
               <high>1</high>
               <info>0</info>
               <low>0</low>
               <log>77</log>
               <warning>8</warning>
               <medium>8</medium>
               <false_positive>0</false_positive>
             </result_count>
             <severity>9.0</severity>
           </report>
         </last_report>
         <observers/>
         <preferences>
           <preference>
             <name>Maximum concurrently executed NVTs per host</name>
             <scanner_name>max_checks</scanner_name>
             <value>4</value>
           </preference>
           ...
         </preferences>
       </task>
       <filters id="">
         <term>
           apply_overrides=0 min_qod=70 uuid=f404781f-6d2b-420c-b7a1-0d3f27f1a43b first=1 rows=10 sort=name
         </term>
         <keywords>
           <keyword>
             <column>apply_overrides</column>
             <relation>=</relation>
             <value>0</value>
           </keyword>
           ...
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <tasks start="1"
              max="10"/>
       <task_count>
         21
         <filtered>1</filtered>
         <page>1</page>
       </task_count>
     </get_tasks_response>

### 7.88 Command `get_tickets`

In short: Get one or many tickets.

The client uses the get_tickets command to get ticket information.

#### 7.88.1 Structure

- Command
  - @ticket_id (uuid) ID of single ticket to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column severity (severity) Severity of the ticket result
    - column host (text) Host of the ticket result
    - column location (text) Location of the ticket result
    - column solution_type (text) Solution type of the ticket result
    - column status (ticket_status) Ticket status
    - column opened (iso_time) Time ticket was opened
    - column fixed (iso_time) Time ticket was fixed
    - column closed (iso_time) Time ticket was closed
    - column orphan (boolean) Whether the ticket is missing a task or report
    - column result_id (uuid) UUID of the result referenced by the ticket
  - @filt_id (uuid) ID of filter to use to filter query.
  - @trash (boolean) Whether to get the trashcan tickets instead.
- Response
  - @status (status)
  - @status_text (text)
  - <ticket> *
    - @id (uuid)
    - <owner>
      Owner of the ticket.
      - <name>
        The name of the owner.
    - <name>
      The name of ticket result's NVT.
    - <comment>
      The comment on the ticket.
    - <creation_time>
      Date and time the ticket was created.
    - <modification_time>
      Date and time the ticket was last modified.
    - <writable>
      Whether the ticket is writable.
    - <in_use>
      Whether the ticket is in use.
    - <permissions>
      Permissions that the current user has on the ticket.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the ticket.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <nvt>
      The NVT the ticket refers to.
      - @oid (oid) OID of the NVT.
    - <result> ?
      The ticket's result.
      - @id (uuid)
    - <assigned_to>
      - <user>
        The user the ticket is assigned to.
        - @id (uuid)
    - <task> ?
      The ticket's task.
      - @id (uuid)
    - <report> ?
      The ticket's report.
      - @id (uuid)
    - <severity>
      The ticket result's severity.
    - <host>
      The ticket result's host.
    - <location>
      The ticket result's location.
    - <solution_type>
      The ticket result's solution_type.
    - <status>
      The ticket's status.
    - <open_time>
      Date and time the ticket was opened.
    - <open_note>
      A note on the Closed status.
    - <fixed_time> ?
      Date and time the ticket was set to fixed.
    - <fixed_note> ?
      The note on the Fixed status.
    - <closed_time> ?
      Date and time the ticket was closed.
    - <closed_note> ?
      The note on the Closed status.
    - <fix_verified_time> ?
      Date and time the ticket was verified.
    - <fix_verified_report> ?
      The report that verified the ticket.
      - @id (uuid)
    - <orphan>
      Whether the ticket is an orphan.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <tickets>
    - @start (integer) First ticket.
    - @max (integer) Maximum number of tickets.
  - <ticket_count>
    - <filtered>
      Number of tickets after filtering.
    - <page>
      Number of tickets on current page.

#### 7.88.2 RNC

Command

    get_tickets
     = element get_tickets
         {
           attribute ticket_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute trash { boolean }?
         }

Response

    get_tickets_response
     = element get_tickets_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_tickets_response_ticket*
           & get_tickets_response_filters
           & get_tickets_response_sort
           & get_tickets_response_tickets
           & get_tickets_response_ticket_count
         }

    get_tickets_response_ticket
     = element ticket
         {
           attribute id { uuid }
           & get_tickets_response_ticket_owner
           & get_tickets_response_ticket_name
           & get_tickets_response_ticket_comment
           & get_tickets_response_ticket_creation_time
           & get_tickets_response_ticket_modification_time
           & get_tickets_response_ticket_writable
           & get_tickets_response_ticket_in_use
           & get_tickets_response_ticket_permissions
           & get_tickets_response_ticket_user_tags?
           & get_tickets_response_ticket_nvt
           & get_tickets_response_ticket_result?
           & get_tickets_response_ticket_assigned_to
           & get_tickets_response_ticket_task?
           & get_tickets_response_ticket_report?
           & get_tickets_response_ticket_severity
           & get_tickets_response_ticket_host
           & get_tickets_response_ticket_location
           & get_tickets_response_ticket_solution_type
           & get_tickets_response_ticket_status
           & get_tickets_response_ticket_open_time
           & get_tickets_response_ticket_open_note
           & get_tickets_response_ticket_fixed_time?
           & get_tickets_response_ticket_fixed_note?
           & get_tickets_response_ticket_closed_time?
           & get_tickets_response_ticket_closed_note?
           & get_tickets_response_ticket_fix_verified_time?
           & get_tickets_response_ticket_fix_verified_report?
           & get_tickets_response_ticket_orphan
         }

    get_tickets_response_ticket_owner
     = element owner
         {
           get_tickets_response_ticket_owner_name
         }

    get_tickets_response_ticket_owner_name
     = element name
         {
           name
         }

    get_tickets_response_ticket_name
     = element name
         {
           name
         }

    get_tickets_response_ticket_comment
     = element comment
         {
           text
         }

    get_tickets_response_ticket_creation_time
     = element creation_time
         {
           iso_time
         }

    get_tickets_response_ticket_modification_time
     = element modification_time
         {
           iso_time
         }

    get_tickets_response_ticket_writable
     = element writable
         {
           boolean
         }

    get_tickets_response_ticket_in_use
     = element in_use
         {
           boolean
         }

    get_tickets_response_ticket_permissions
     = element permissions
         {
           get_tickets_response_ticket_permissions_permission*
         }

    get_tickets_response_ticket_permissions_permission
     = element permission
         {
           get_tickets_response_ticket_permissions_permission_name
         }

    get_tickets_response_ticket_permissions_permission_name
     = element name
         {
           name
         }

    get_tickets_response_ticket_user_tags
     = element user_tags
         {
           get_tickets_response_ticket_user_tags_count
           & get_tickets_response_ticket_user_tags_tag*
         }

    get_tickets_response_ticket_user_tags_count
     = element count
         {
           integer
         }

    get_tickets_response_ticket_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_tickets_response_ticket_user_tags_tag_name
           & get_tickets_response_ticket_user_tags_tag_value
           & get_tickets_response_ticket_user_tags_tag_comment
         }

    get_tickets_response_ticket_user_tags_tag_name
     = element name
         {
           text
         }

    get_tickets_response_ticket_user_tags_tag_value
     = element value
         {
           text
         }

    get_tickets_response_ticket_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_tickets_response_ticket_nvt
     = element nvt
         {
           attribute oid { oid }
         }

    get_tickets_response_ticket_result
     = element result
         {
           attribute id { uuid }
         }

    get_tickets_response_ticket_assigned_to
     = element assigned_to
         {
           get_tickets_response_ticket_assigned_to_user
         }

    get_tickets_response_ticket_assigned_to_user
     = element user
         {
           attribute id { uuid }
         }

    get_tickets_response_ticket_task
     = element task
         {
           attribute id { uuid }
         }

    get_tickets_response_ticket_report
     = element report
         {
           attribute id { uuid }
         }

    get_tickets_response_ticket_severity
     = element severity
         {
           severity
         }

    get_tickets_response_ticket_host
     = element host
         {
           text
         }

    get_tickets_response_ticket_location
     = element location
         {
           text
         }

    get_tickets_response_ticket_solution_type
     = element solution_type
         {
           text
         }

    get_tickets_response_ticket_status
     = element status
         {
           ticket_status
         }

    get_tickets_response_ticket_open_time
     = element open_time
         {
           iso_time
         }

    get_tickets_response_ticket_open_note
     = element open_note
         {
           text
         }

    get_tickets_response_ticket_fixed_time
     = element fixed_time
         {
           iso_time
         }

    get_tickets_response_ticket_fixed_note
     = element fixed_note
         {
           text
         }

    get_tickets_response_ticket_closed_time
     = element closed_time
         {
           iso_time
         }

    get_tickets_response_ticket_closed_note
     = element closed_note
         {
           text
         }

    get_tickets_response_ticket_fix_verified_time
     = element fix_verified_time
         {
           iso_time
         }

    get_tickets_response_ticket_fix_verified_report
     = element fix_verified_report
         {
           attribute id { uuid }
         }

    get_tickets_response_ticket_orphan
     = element orphan
         {
           boolean
         }

    get_tickets_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_tickets_response_filters_term
           & get_tickets_response_filters_name?
           & get_tickets_response_filters_keywords
         }

    get_tickets_response_filters_term
     = element term
         {
           text
         }

    get_tickets_response_filters_name
     = element name
         {
           text
         }

    get_tickets_response_filters_keywords
     = element keywords
         {
           get_tickets_response_filters_keywords_keyword*
         }

    get_tickets_response_filters_keywords_keyword
     = element keyword
         {
           get_tickets_response_filters_keywords_keyword_column
           & get_tickets_response_filters_keywords_keyword_relation
           & get_tickets_response_filters_keywords_keyword_value
         }

    get_tickets_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_tickets_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_tickets_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_tickets_response_sort
     = element sort
         {
           text
           & get_tickets_response_sort_field
         }

    get_tickets_response_sort_field
     = element field
         {
           get_tickets_response_sort_field_order
         }

    get_tickets_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_tickets_response_tickets
     = element tickets
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_tickets_response_ticket_count
     = element ticket_count
         {
           get_tickets_response_ticket_count_filtered
           & get_tickets_response_ticket_count_page
         }

    get_tickets_response_ticket_count_filtered
     = element filtered
         {
           integer
         }

    get_tickets_response_ticket_count_page
     = element page
         {
           integer
         }

#### 7.88.3 Example: Get all tickets

Client

     <get_tickets/>

Manager

     <get_tickets_response status_text="OK"
                           status="200">
       <ticket id="93cd2f71-48c3-4cf2-b542-5b256f59cae0">
         <owner>
           <name>joe</name>
         </owner>
         <name>OpenSSH Denial of Service Vulnerability - Jan16</name>
         <comment/>
         <creation_time>2018-11-29T16:18:56Z</creation_time>
         <modification_time>2018-11-29T16:18:56Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <assigned_to>
           <user id="33e92d3e-a379-4c46-a4cf-88c8201ab710"/>
         </assigned_to>
         <task id="6f559abf-23ca-4dc8-a90a-3acba021f4ff"/>
         <report id="f0f063cd-07e4-470a-8c66-b5d095d190cd"/>
         <severity>5.0</severity>
         <host>127.0.0.1</host>
         <location>1111/tcp</location>
         <solution_type>VendorFix</solution_type>
         <status>Open</status>
         <open_time>2018-11-29T16:18:56Z</open_time>
         <open_note>Probably the new version fixes this</open_note>
         <result id="138c1216-4acb-4ded-bef3-7fab80eac8c7"/>
       </ticket>
       <filters id="">
         <term>first=1 rows=1000 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>1000</value>
           </keyword>
           <keyword>
             <column>sort</column>
             <relation>=</relation>
             <value>name</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <tickets max="1000"
                start="1"/>
       <ticket_count>
         2
         <filtered>2</filtered>
         <page>2</page>
       </ticket_count>
     </get_tickets_response>

### 7.89 Command `get_timezones`

In short: Get a list of supported timezones.

The client uses the "get_timezones" command to retrieve the list of supported timezones.

#### 7.89.1 Structure

- Command
  Empty single element.
- Response
  - @status (status)
  - @status_text (text)
  - <timezone> *
    A supported timezone.
    - <name>
      Name of the timezone.

#### 7.89.2 RNC

Command

    get_timezones
     = element get_timezones
         {
           ""
         }

Response

    get_timezones_response
     = element get_timezones_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_timezones_response_timezone*
         }

    get_timezones_response_timezone
     = element timezone
         {
           get_timezones_response_timezone_name
         }

    get_timezones_response_timezone_name
     = element name
         {
           text
         }

#### 7.89.3 Example: Get all supported timezones

Client

     <get_timezones/>

Manager

     <get_timezones_response status_text="OK"
                             status="200">
       <timezone>
         <name>Africa/Abidjan</name>
       </timezone>
       <truncate>...</truncate>
       <timezone>
         <name>UTC</name>
       </timezone>
     </get_timezones_response>

### 7.90 Command `get_tls_certificates`

In short: Get one or many TLS certificates.

The client uses the "get_tls_certificates" command to retrieve one or more TLS certificates.

#### 7.90.1 Structure

- Command
  - @tls_certificate_id (uuid) ID of single TLS certificate to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option host_id (uuid) UUID of the host asset where the certificate must be found
    - option report_id (uuid) UUID of the report the cerificate must appear in
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column subject_dn (text) Distinguished name (DN) of the certificate subject
    - column issuer_dn (text) Distinguished name (DN) of the certificate issuer
    - column sha256_fingerprint (text) SHA256 fingerprint of the certificate
    - column md5_fingerprint (text) MD5 fingerprint of the certificate
    - column time_status () Whether the certificate is valid, expired or not active yet
    - column activates (iso_time) Time before which the certificate is not valid
    - column expires (iso_time) Time after which the certificate is not valid
    - column valid (boolean) Whether the certificate is currently valid
    - column serial (text) Hexadecimal serial number of the certificate
    - column last_seen (iso_time) Most recent time the TLS certificate was imported or found in a scan
    - column certificate_format ("DER", "PEM" or "unknown") File format of the certificate
  - @filt_id (uuid) ID of filter to use to filter query.
  - @include_certificate_data (boolean) Whether to include certificate_data even if details are not requested.
- Response
  - @status (status)
  - @status_text (text)
  - <tls_certificate> *
    - @id (uuid) ID of TLS certificate.
    - <owner>
      Owner of the TLS certificate.
      - <name>
        The name of the owner.
    - <name>
      The name of the TLS certificate.
    - <comment>
      The comment on the TLS certificate.
    - <creation_time>
      Creation time of the TLS certificate.
    - <modification_time>
      Last time the TLS certificate was modified.
    - <writable>
      Whether the TLS certificate is writable.
    - <in_use>
      Whether this TLS certificate is currently in use.
    - <permissions>
      Permissions that the current user has on the TLS certificate.
      - <permission> *
        - <name>
          The name of the permission.
    - <certificate>
      The Base64 encoded certificate data if details are requested, empty otherwise.
      - @format ("DER", "PEM" or "unknown") The format of the certificate.
    - <sha256_fingerprint>
      The SHA256 fingerprint of the certificate.
    - <md5_fingerprint>
      The MD5 fingerprint of the certificate.
    - <trust>
      Whether the certificate is trusted.
    - <time_status>
      Whether the certificate is valid, expired or not active yet.
      One of:
      expired
      inactive
      unknown
      valid
    - <activation_time>
      Time before which the certificate is not valid.
    - <expiration_time>
      Time after which the certificate is not valid.
    - <subject_dn>
      Distinguished name (DN) of the certificate subject.
    - <issuer_dn>
      Distinguished name (DN) of the certificate issuer.
    - <serial>
      Hexadecimal serial number of the certificate.
    - <last_seen>
      Most recent time the TLS certificate was imported or found in a scan.
    - <sources> ?
      List of sources.
      - <source> *
        A certificate source.
        - @id (uuid) UUID of the source.
        - <timestamp>
          Time the certificate was found or imported.
        - <tls_versions>
          SSL and TLS versions of the service using the certificate, separated with ", ".
        - <location> ?
          A location where the certificate was found.
          - @id (uuid) UUID of the location.
          - <host>
            Host where the certificate was found.
            - <ip>
              IP address of the host.
            - <asset>
              Host asset.
              - @id (uuid) UUID of the host asset.
          - <port>
            Port where the certificate was found.
        - <origin>
          Origin of the certificate data, e.g. a scan report.
          - @id (uuid) UUID of the location.
          - <origin_type>
            Type of origin, e.g. "Import" or "Report".
          - <origin_id>
            Identifier of origin, e.g. a report UUID.
          - <origin_data>
            Extra origin data, e.g. OID of the detection NVT.
          - <report> ?
            Report data if the origin is a report.
            - @id (uuid) UUID of the report.
            - <date>
              Timestamp of the report.
            - <task>
              Task the report belongs to.
              - @id (uuid) UUID of the task.
              - <name>
                Name of the task.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <tls_certificates>
    - @start (integer) First TLS certificate.
    - @max (integer) Maximum number of TLS certificates.
  - <tls_certificate_count>
    - <filtered>
      Number of TLS certificate after filtering.
    - <page>
      Number of TLS certificate on current page.

#### 7.90.2 RNC

Command

    get_tls_certificates
     = element get_tls_certificates
         {
           attribute tls_certificate_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
           & attribute include_certificate_data { boolean }?
         }

Response

    get_tls_certificates_response
     = element get_tls_certificates_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_tls_certificates_response_tls_certificate*
           & get_tls_certificates_response_filters
           & get_tls_certificates_response_sort
           & get_tls_certificates_response_tls_certificates
           & get_tls_certificates_response_tls_certificate_count
         }

    get_tls_certificates_response_tls_certificate
     = element tls_certificate
         {
           attribute id { uuid }
           & get_tls_certificates_response_tls_certificate_owner
           & get_tls_certificates_response_tls_certificate_name
           & get_tls_certificates_response_tls_certificate_comment
           & get_tls_certificates_response_tls_certificate_creation_time
           & get_tls_certificates_response_tls_certificate_modification_time
           & get_tls_certificates_response_tls_certificate_writable
           & get_tls_certificates_response_tls_certificate_in_use
           & get_tls_certificates_response_tls_certificate_permissions
           & get_tls_certificates_response_tls_certificate_certificate
           & get_tls_certificates_response_tls_certificate_sha256_fingerprint
           & get_tls_certificates_response_tls_certificate_md5_fingerprint
           & get_tls_certificates_response_tls_certificate_trust
           & get_tls_certificates_response_tls_certificate_time_status
           & get_tls_certificates_response_tls_certificate_activation_time
           & get_tls_certificates_response_tls_certificate_expiration_time
           & get_tls_certificates_response_tls_certificate_subject_dn
           & get_tls_certificates_response_tls_certificate_issuer_dn
           & get_tls_certificates_response_tls_certificate_serial
           & get_tls_certificates_response_tls_certificate_last_seen
           & get_tls_certificates_response_tls_certificate_sources?
         }

    get_tls_certificates_response_tls_certificate_owner
     = element owner
         {
           get_tls_certificates_response_tls_certificate_owner_name
         }

    get_tls_certificates_response_tls_certificate_owner_name
     = element name
         {
           name
         }

    get_tls_certificates_response_tls_certificate_name
     = element name
         {
           text
         }

    get_tls_certificates_response_tls_certificate_comment
     = element comment
         {
           text
         }

    get_tls_certificates_response_tls_certificate_creation_time
     = element creation_time
         {
           iso_time
         }

    get_tls_certificates_response_tls_certificate_modification_time
     = element modification_time
         {
           iso_time
         }

    get_tls_certificates_response_tls_certificate_writable
     = element writable
         {
           boolean
         }

    get_tls_certificates_response_tls_certificate_in_use
     = element in_use
         {
           boolean
         }

    get_tls_certificates_response_tls_certificate_permissions
     = element permissions
         {
           get_tls_certificates_response_tls_certificate_permissions_permission*
         }

    get_tls_certificates_response_tls_certificate_permissions_permission
     = element permission
         {
           get_tls_certificates_response_tls_certificate_permissions_permission_name
         }

    get_tls_certificates_response_tls_certificate_permissions_permission_name
     = element name
         {
           name
         }

    get_tls_certificates_response_tls_certificate_certificate
     = element certificate
         {
           attribute format { xsd:token { pattern = "DER|PEM|unknown" } }
         }

    get_tls_certificates_response_tls_certificate_md5_fingerprint
     = element md5_fingerprint
         {
           text
         }

    get_tls_certificates_response_tls_certificate_sha256_fingerprint
     = element sha256_fingerprint
         {
           text
         }

    get_tls_certificates_response_tls_certificate_trust
     = element trust
         {
           boolean
         }

    get_tls_certificates_response_tls_certificate_valid
     = element valid
         {
           boolean
         }

    get_tls_certificates_response_tls_certificate_time_status
     = element time_status
         {
           xsd:token { pattern = "expired|inactive|unknown|valid" }
         }

    get_tls_certificates_response_tls_certificate_activation_time
     = element activation_time
         {
           iso_time
         }

    get_tls_certificates_response_tls_certificate_expiration_time
     = element expiration_time
         {
           iso_time
         }

    get_tls_certificates_response_tls_certificate_subject_dn
     = element subject_dn
         {
           text
         }

    get_tls_certificates_response_tls_certificate_issuer_dn
     = element issuer_dn
         {
           text
         }

    get_tls_certificates_response_tls_certificate_serial
     = element serial
         {
           text
         }

    get_tls_certificates_response_tls_certificate_last_seen
     = element last_seen
         {
           iso_time
         }

    get_tls_certificates_response_tls_certificate_sources
     = element sources
         {
           get_tls_certificates_response_tls_certificate_sources_source*
         }

    get_tls_certificates_response_tls_certificate_sources_source
     = element source
         {
           attribute id { uuid }
           & get_tls_certificates_response_tls_certificate_sources_source_timestamp
           & get_tls_certificates_response_tls_certificate_sources_source_tls_versions
           & get_tls_certificates_response_tls_certificate_sources_source_location?
           & get_tls_certificates_response_tls_certificate_sources_source_origin
         }

    get_tls_certificates_response_tls_certificate_sources_source_timestamp
     = element timestamp
         {
           iso_time
         }

    get_tls_certificates_response_tls_certificate_sources_source_tls_versions
     = element tls_versions
         {
           text
         }

    get_tls_certificates_response_tls_certificate_sources_source_location
     = element location
         {
           attribute id { uuid }
           & get_tls_certificates_response_tls_certificate_sources_source_location_host
           & get_tls_certificates_response_tls_certificate_sources_source_location_port
         }

    get_tls_certificates_response_tls_certificate_sources_source_location_host
     = element host
         {
           get_tls_certificates_response_tls_certificate_sources_source_location_host_ip
           & get_tls_certificates_response_tls_certificate_sources_source_location_host_asset
         }

    get_tls_certificates_response_tls_certificate_sources_source_location_host_ip
     = element ip
         {
           text
         }

    get_tls_certificates_response_tls_certificate_sources_source_location_host_asset
     = element asset
         {
           attribute id { uuid }?
         }

    get_tls_certificates_response_tls_certificate_sources_source_location_port
     = element port
         {
           integer
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin
     = element origin
         {
           attribute id { uuid }
           & get_tls_certificates_response_tls_certificate_sources_source_origin_origin_type
           & get_tls_certificates_response_tls_certificate_sources_source_origin_origin_id
           & get_tls_certificates_response_tls_certificate_sources_source_origin_origin_data
           & get_tls_certificates_response_tls_certificate_sources_source_origin_report?
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin_origin_type
     = element origin_type
         {
           text
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin_origin_id
     = element origin_id
         {
           text
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin_origin_data
     = element origin_data
         {
           text
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin_report
     = element report
         {
           attribute id { uuid }?
           & get_tls_certificates_response_tls_certificate_sources_source_origin_report_date
           & get_tls_certificates_response_tls_certificate_sources_source_origin_report_task
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin_report_date
     = element date
         {
           iso_time
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin_report_task
     = element task
         {
           attribute id { uuid }
           & get_tls_certificates_response_tls_certificate_sources_source_origin_report_task_name
         }

    get_tls_certificates_response_tls_certificate_sources_source_origin_report_task_name
     = element name
         {
           text
         }

    get_tls_certificates_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_tls_certificates_response_filters_term
           & get_tls_certificates_response_filters_name?
           & get_tls_certificates_response_filters_keywords
         }

    get_tls_certificates_response_filters_term
     = element term
         {
           text
         }

    get_tls_certificates_response_filters_name
     = element name
         {
           text
         }

    get_tls_certificates_response_filters_keywords
     = element keywords
         {
           get_tls_certificates_response_filters_keywords_keyword*
         }

    get_tls_certificates_response_filters_keywords_keyword
     = element keyword
         {
           get_tls_certificates_response_filters_keywords_keyword_column
           & get_tls_certificates_response_filters_keywords_keyword_relation
           & get_tls_certificates_response_filters_keywords_keyword_value
         }

    get_tls_certificates_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_tls_certificates_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_tls_certificates_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_tls_certificates_response_sort
     = element sort
         {
           text
           & get_tls_certificates_response_sort_field
         }

    get_tls_certificates_response_sort_field
     = element field
         {
           get_tls_certificates_response_sort_field_order
         }

    get_tls_certificates_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_tls_certificates_response_tls_certificates
     = element tls_certificates
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_tls_certificates_response_tls_certificate_count
     = element tls_certificate_count
         {
           get_tls_certificates_response_tls_certificate_count_filtered
           & get_tls_certificates_response_tls_certificate_count_page
         }

    get_tls_certificates_response_tls_certificate_count_filtered
     = element filtered
         {
           integer
         }

    get_tls_certificates_response_tls_certificate_count_page
     = element page
         {
           integer
         }

#### 7.90.3 Example: Get the TLS certificates

Client

     <get_tls_certificates/>

Manager

     <get_tls_certificates_response status="200"
                                    status_text="OK">
       <tls_certificate id="ba36ed15-92fa-4ae0-af53-bad8ce472f18">
         <owner>
           <name>admin</name>
         </owner>
         <name>Example Certificate</name>
         <comment/>
         <creation_time>2019-06-12T14:36:53Z</creation_time>
         <modification_time>2019-06-13T08:56:36Z</modification_time>
         <writable>1</writable>
         <in_use>0</in_use>
         <permissions>
           <permission>
             <name>Everything</name>
           </permission>
         </permissions>
         <certificate format="DER">MIIDNjCCAp+gAwIBAgIBATANBgkqhkiG9w0BAQQFADCBqTELM[...]</certificate>
         <md5_fingerprint>ba:ec:16:30:27:ca:99:17:ff:df:a4:4c:bc:bf:1b:98</md5_fingerprint>
         <trust>1</trust>
         <valid>1</valid>
         <activation_time>2019-02-26T14:24:15Z</activation_time>
         <expiration_time>2021-02-25T14:24:15Z</expiration_time>
         <subject_dn>CN=localhost,O=GVM Users,L=Osnabrueck,C=DE</subject_dn>
         <issuer_dn>
           OU=Certificate Authority for localhost,O=GVM Users,L=Osnabrueck,C=DE
         </issuer_dn>
       </tls_certificate>
       <filters id="">
         <term>first=1 rows=10 sort=name</term>
         <keywords>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>1000</value>
           </keyword>
           <keyword>
             <column>sort</column>
             <relation>=</relation>
             <value>name</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <tls_certificates start="1"
                         max="10"/>
       <tls_certificate_count>
         1
         <filtered>1</filtered>
         <page>1</page>
       </tls_certificate_count>
     </get_tls_certificates_response>

### 7.91 Command `get_users`

In short: Get one or many users.

The client uses the "get_users" command to retrieve the list of user accounts on the Scanner.

#### 7.91.1 Structure

- Command
  - @user_id (uuid) ID of single user to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column comment (text) Comment text
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column owner (name) Name of the owner
    - column method (text) Methods allowed for authentication
    - column roles (text) Comma-separated list of roles
    - column groups (text) Comma-separated list of groups
    - column hosts (text) List of host that are either allowed of forbidden
  - @filt_id (uuid) ID of filter to use to filter query.
- Response
  - @status (status)
  - @status_text (text)
  - <user> *
    - @id (uuid) ID of user.
    - <owner>
      Owner of the user.
      - <name>
        The name of the owner.
    - <name>
      The name of the user.
    - <comment>
      The comment on the user.
    - <creation_time>
      Creation time of the user.
    - <modification_time>
      Last time the user was modified.
    - <writable>
      Whether the user is writable.
    - <in_use>
      Whether this user is currently in use.
    - <role> *
      The role of the user.
      - @id (uuid)
      - <name>
        Name of role.
      - <permissions> ?
        Permissions the user has on the role.
    - <groups>
      The groups the user belongs to.
      - <group>
        - @id (uuid)
        - <name>
          Name of group.
        - <permissions> ?
          Permissions the user has on the group.
    - <hosts>
      Host access rule for the user.
      - @allow ("0", "1", "2" or "3") 0 forbidden, 1 allowed, 2 all allowed, 3 custom.
    - <permissions>
      Permissions that the current user has on the user.
      - <permission> *
        - <name>
          The name of the permission.
    - <user_tags> ?
      Info on tags attached to the user.
      - <count>
        Number of attached tags.
      - <tag> *
        Short info on an individual tag (only if details were requested).
        - @id (uuid) UUID of the tag.
        - <name>
          Name of the tag (usually namespace:predicate).
        - <value>
          Value of the tag.
        - <comment>
          Comment for the tag.
    - <sources>
      Sources allowed for authentication for this user.
      - <source> *
        Authentication source.
        One of:
        file
        ldap_connect
        radius_connect
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <users>
    - @start (integer) First user.
    - @max (integer) Maximum number of users.
  - <user_count>
    - <filtered>
      Number of users after filtering.
    - <page>
      Number of users on current page.

#### 7.91.2 RNC

Command

    get_users
     = element get_users
         {
           attribute user_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
         }

Response

    get_users_response
     = element get_users_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_users_response_user*
           & get_users_response_filters
           & get_users_response_sort
           & get_users_response_users
           & get_users_response_user_count
         }

    get_users_response_user
     = element user
         {
           attribute id { uuid }
           & get_users_response_user_owner
           & get_users_response_user_name
           & get_users_response_user_comment
           & get_users_response_user_creation_time
           & get_users_response_user_modification_time
           & get_users_response_user_writable
           & get_users_response_user_in_use
           & get_users_response_user_role*
           & get_users_response_user_groups
           & get_users_response_user_hosts
           & get_users_response_user_permissions
           & get_users_response_user_user_tags?
           & get_users_response_user_sources
         }

    get_users_response_user_owner
     = element owner
         {
           get_users_response_user_owner_name
         }

    get_users_response_user_owner_name
     = element name
         {
           name
         }

    get_users_response_user_name
     = element name
         {
           text
         }

    get_users_response_user_comment
     = element comment
         {
           text
         }

    get_users_response_user_creation_time
     = element creation_time
         {
           iso_time
         }

    get_users_response_user_modification_time
     = element modification_time
         {
           iso_time
         }

    get_users_response_user_writable
     = element writable
         {
           boolean
         }

    get_users_response_user_in_use
     = element in_use
         {
           boolean
         }

    get_users_response_user_role
     = element role
         {
           attribute id { uuid }
           & get_users_response_user_role_name
           & get_users_response_user_role_permissions?
         }

    get_users_response_user_role_name
     = element name
         {
           name
         }

    get_users_response_user_role_permissions
     = element permissions
         {
           ""
         }

    get_users_response_user_groups
     = element groups
         {
           get_users_response_user_groups_group
         }

    get_users_response_user_groups_group
     = element group
         {
           attribute id { uuid }
           & get_users_response_user_groups_group_name
           & get_users_response_user_groups_group_permissions?
         }

    get_users_response_user_groups_group_name
     = element name
         {
           name
         }

    get_users_response_user_groups_group_permissions
     = element permissions
         {
           ""
         }

    get_users_response_user_hosts
     = element hosts
         {
           text
           & attribute allow { xsd:token { pattern = "0|1|2|3" } }
         }

    get_users_response_user_permissions
     = element permissions
         {
           get_users_response_user_permissions_permission*
         }

    get_users_response_user_permissions_permission
     = element permission
         {
           get_users_response_user_permissions_permission_name
         }

    get_users_response_user_permissions_permission_name
     = element name
         {
           name
         }

    get_users_response_user_user_tags
     = element user_tags
         {
           get_users_response_user_user_tags_count
           & get_users_response_user_user_tags_tag*
         }

    get_users_response_user_user_tags_count
     = element count
         {
           integer
         }

    get_users_response_user_user_tags_tag
     = element tag
         {
           attribute id { uuid }
           & get_users_response_user_user_tags_tag_name
           & get_users_response_user_user_tags_tag_value
           & get_users_response_user_user_tags_tag_comment
         }

    get_users_response_user_user_tags_tag_name
     = element name
         {
           text
         }

    get_users_response_user_user_tags_tag_value
     = element value
         {
           text
         }

    get_users_response_user_user_tags_tag_comment
     = element comment
         {
           text
         }

    get_users_response_user_sources
     = element sources
         {
           get_users_response_user_sources_source*
         }

    get_users_response_user_sources_source
     = element source
         {
           xsd:token { pattern = "file|ldap_connect|radius_connect" }
         }

    get_users_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_users_response_filters_term
           & get_users_response_filters_name?
           & get_users_response_filters_keywords
         }

    get_users_response_filters_term
     = element term
         {
           text
         }

    get_users_response_filters_name
     = element name
         {
           text
         }

    get_users_response_filters_keywords
     = element keywords
         {
           get_users_response_filters_keywords_keyword*
         }

    get_users_response_filters_keywords_keyword
     = element keyword
         {
           get_users_response_filters_keywords_keyword_column
           & get_users_response_filters_keywords_keyword_relation
           & get_users_response_filters_keywords_keyword_value
         }

    get_users_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_users_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_users_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_users_response_sort
     = element sort
         {
           text
           & get_users_response_sort_field
         }

    get_users_response_sort_field
     = element field
         {
           get_users_response_sort_field_order
         }

    get_users_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_users_response_users
     = element users
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_users_response_user_count
     = element user_count
         {
           get_users_response_user_count_filtered
           & get_users_response_user_count_page
         }

    get_users_response_user_count_filtered
     = element filtered
         {
           integer
         }

    get_users_response_user_count_page
     = element page
         {
           integer
         }

#### 7.91.3 Example: Get the users

Client

     <get_users/>

Manager

     <get_users_response status="200"
                         status_text="OK">
       <user>
         <name>foobar</name>
         <role id="8d453140-b74d-11e2-b0be-406186ea4fc5">
           <name>User</name>
         </role>
         <hosts allow="2"/>
         <sources>
           <source>file</source>
         </sources>
       </user>
     </get_users_response>

### 7.92 Command `get_version`

In short: Get the Greenbone Management Protocol version.

#### 7.92.1 Structure

- Command
  Empty single element.
- Response
  - @status (status)
  - @status_text (text)
  - <version>

#### 7.92.2 RNC

Command

    get_version
     = element get_version
         {
           ""
         }

Response

    get_version_response
     = element get_version_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_version_response_version
         }

    get_version_response_version
     = element version
         {
           text
         }

#### 7.92.3 Example: Get the version

Client

     <get_version/>

Manager

     <get_version_response status="200"
                           status_text="OK">
       <version>1.0</version>
     </get_version_response>

### 7.93 Command `get_vulns`

In short: Get one or many vulnerabilities.

The client uses the "get_vulns" command to retrieve the list of vulnerabilities occurring in reports.

#### 7.93.1 Structure

- Command
  - @vuln_id (uuid) ID of single vulnerability to get.
  - @filter (text) Filter term to use to filter query.
    Keywords
    - option first (integer) Index of the first item returned, starting at 1 (e.g. first=5 starts at the 5th item)
    - option rows (integer) Number of items to return
    - option sort (text) Column to sort by in ascending order
    - option sort-reverse (text) Column to sort by in descending order
    - option min_qod (integer) Minimum QoD of the vulnerability
    - option task_id (UUID) UUID of the task to limit the selected vulnerabilities to
    - option report_id (UUID) UUID of the report to limit the selected vulnerabilities to
    - option host (text) IP address of the host to limit the selected vulnerabilities to
    - column tag (text) Name and optional "=" separted value of an attached tag (e.g. "mytag" or "mytag=myvalue")
    - column tag_id (UUID) UUID of an attached tag
    - column uuid (uuid) Unique ID
    - column name (name) Name
    - column created (iso_time) Creation time
    - column modified (iso_time) Modification time
    - column results (integer) Number of results
    - column hosts (integer) Number of hosts
    - column severity (severity) Severity of the vulnerability
    - column qod (integer) QoD of the vulnerability
    - column oldest (iso_time) Timestamp of the oldest result
    - column newest (iso_time) Timestamp of the newest result
    - column type (text) Type of vulnerability like NVT or CVE
  - @filt_id (uuid) ID of filter to use to filter query.
- Response
  - @status (status)
  - @status_text (text)
  - <vuln> *
    - @id (uuid) ID of vulnerability.
    - <name>
      The name of the user.
    - <creation_time>
      Creation time of the user.
    - <modification_time>
      Last time the user was modified.
    - <severity>
      Severity of the vulnerability.
    - <qod>
      Quality of detection (QoD) of the vulnerability.
    - <results>
      - <count>
        The number of results for the vulnerability.
      - <oldest>
        Timestamp of the oldest result.
      - <newest>
        Timestamp of the newest result.
    - <hosts>
      - <count>
        The number of hosts where the vulnerability was detected.
  - <filters>
    - @id (uuid) UUID of filter if any, else 0.
    - <term>
      Filter term.
    - <name> ?
      Filter name, if applicable.
    - <keywords>
      Filter broken down into keywords.
      - <keyword> *
        - <column>
          Column prefix.
        - <relation>
          Relation operator.
          One of:
          =
          :
          ~
          >
          <
        - <value>
          The filter text.
  - <sort>
    - <field>
      - <order>
        One of:
        ascending
        descending
  - <vulns>
    - @start (integer) First vulnerability.
    - @max (integer) Maximum number of vulnerabilities.
  - <vuln_count>
    - <filtered>
      Number of vulnerabilities after filtering.
    - <page>
      Number of vulnerabilities on current page.

#### 7.93.2 RNC

Command

    get_vulns
     = element get_vulns
         {
           attribute vuln_id { uuid }?
           & attribute filter { text }?
           & attribute filt_id { uuid }?
         }

Response

    get_vulns_response
     = element get_vulns_response
         {
           attribute status { status }
           & attribute status_text { text }
           & get_vulns_response_vuln*
           & get_vulns_response_filters
           & get_vulns_response_sort
           & get_vulns_response_vulns
           & get_vulns_response_vuln_count
         }

    get_vulns_response_vuln
     = element vuln
         {
           attribute id { uuid }
           & get_vulns_response_vuln_name
           & get_vulns_response_vuln_creation_time
           & get_vulns_response_vuln_modification_time
           & get_vulns_response_vuln_severity
           & get_vulns_response_vuln_qod
           & get_vulns_response_vuln_results
           & get_vulns_response_vuln_hosts
         }

    get_vulns_response_vuln_name
     = element name
         {
           text
         }

    get_vulns_response_vuln_type
     = element type
         {
           xsd:token { pattern = "nvt|cve" }
         }

    get_vulns_response_vuln_creation_time
     = element creation_time
         {
           iso_time
         }

    get_vulns_response_vuln_modification_time
     = element modification_time
         {
           iso_time
         }

    get_vulns_response_vuln_severity
     = element severity
         {
           severity
         }

    get_vulns_response_vuln_qod
     = element qod
         {
           integer
         }

    get_vulns_response_vuln_results
     = element results
         {
           get_vulns_response_vuln_results_count
           & get_vulns_response_vuln_results_oldest
           & get_vulns_response_vuln_results_newest
         }

    get_vulns_response_vuln_results_count
     = element count
         {
           integer
         }

    get_vulns_response_vuln_results_oldest
     = element oldest
         {
           iso_time
         }

    get_vulns_response_vuln_results_newest
     = element newest
         {
           iso_time
         }

    get_vulns_response_vuln_hosts
     = element hosts
         {
           get_vulns_response_vuln_hosts_count
         }

    get_vulns_response_vuln_hosts_count
     = element count
         {
           integer
         }

    get_vulns_response_filters
     = element filters
         {
           attribute id { uuid }
           & get_vulns_response_filters_term
           & get_vulns_response_filters_name?
           & get_vulns_response_filters_keywords
         }

    get_vulns_response_filters_term
     = element term
         {
           text
         }

    get_vulns_response_filters_name
     = element name
         {
           text
         }

    get_vulns_response_filters_keywords
     = element keywords
         {
           get_vulns_response_filters_keywords_keyword*
         }

    get_vulns_response_filters_keywords_keyword
     = element keyword
         {
           get_vulns_response_filters_keywords_keyword_column
           & get_vulns_response_filters_keywords_keyword_relation
           & get_vulns_response_filters_keywords_keyword_value
         }

    get_vulns_response_filters_keywords_keyword_column
     = element column
         {
           text
         }

    get_vulns_response_filters_keywords_keyword_relation
     = element relation
         {
           xsd:token { pattern = "=|:|~|>|<" }
         }

    get_vulns_response_filters_keywords_keyword_value
     = element value
         {
           text
         }

    get_vulns_response_sort
     = element sort
         {
           text
           & get_vulns_response_sort_field
         }

    get_vulns_response_sort_field
     = element field
         {
           get_vulns_response_sort_field_order
         }

    get_vulns_response_sort_field_order
     = element order
         {
           xsd:token { pattern = "ascending|descending" }
         }

    get_vulns_response_vulns
     = element vulns
         {
           attribute start { integer }
           & attribute max { integer }
         }

    get_vulns_response_vuln_count
     = element vuln_count
         {
           get_vulns_response_vuln_count_filtered
           & get_vulns_response_vuln_count_page
         }

    get_vulns_response_vuln_count_filtered
     = element filtered
         {
           integer
         }

    get_vulns_response_vuln_count_page
     = element page
         {
           integer
         }

#### 7.93.3 Example: Get the vulnerabilities

Client

     <get_vulns/>

Manager

     <get_vulns_response status="200"
                         status_text="OK">
       <vuln id="1.3.6.1.4.1.25623.1.0.808160">
         <name>
           7Zip UDF CInArchive::ReadFileItem Code Execution Vulnerability
         </name>
         <type>nvt</type>
         <creation_time>2016-06-13T12:57:54+01:00</creation_time>
         <modification_time>2016-12-07T07:43:41+01:00</modification_time>
         <severity>6.8</severity>
         <qod>97</qod>
         <results>
           <count>12</count>
           <oldest>2017-03-21T09:27:44+01:00</oldest>
           <newest>2017-03-21T09:46:42+01:00</newest>
         </results>
         <hosts>
           <count>1</count>
         </hosts>
       </vuln>
       <truncate>...</truncate>
       <filters id="0">
         <term>rows=10 first=1 sort=name</term>
         <keywords>
           <keyword>
             <column>rows</column>
             <relation>=</relation>
             <value>10</value>
           </keyword>
           <keyword>
             <column>first</column>
             <relation>=</relation>
             <value>1</value>
           </keyword>
           <keyword>
             <column>sort</column>
             <relation>=</relation>
             <value>name</value>
           </keyword>
         </keywords>
       </filters>
       <sort>
         <field>
           name
           <order>ascending</order>
         </field>
       </sort>
       <vulns start="1"
              max="10"/>
       <vuln_count>
         1648
         <filtered>1396</filtered>
         <page>10</page>
       </vuln_count>
     </get_vulns_response>

### 7.94 Command `help`

In short: Get the help text.

#### 7.94.1 Structure

- Command
  - @format ("html", "HTML", "rnc", "RNC", "text", "TEXT", "xml" or "XML") Required help format.
  - @type ("brief" or "") Help type, currently only blank or "brief" for XML format.
- Response
  - @status (status)
  - @status_text (text)
  - <schema> ?
    - <protocol>
      - @format (text) The help format.
      - @extension (text) The suggested file extension for the help.
      - @content_type (text) The MIME content-type of the help.
      - <name>
        The full name of the protocol.
      - <abbreviation> ?
        The abbreviated name of the protocol.
      - <summary> ?
        A summary of the protocol.
      - <version> ?
        The version number of the protocol.
      - <type> *
        A data type.
        - <name>
          The name of the data type.
        - <summary> ?
          A summary of the data type.
        - <description> ?
          A description of the data type.
          - <p> *
            A paragraph.
        - <pattern>
          The RNC pattern for the data type.
      - <command> *
        (command_definition)
        A command.

#### 7.94.2 RNC

Command

    help
     = element help
         {
           attribute format { xsd:token { pattern = "html|HTML|rnc|RNC|text|TEXT|xml|XML" } }?
           & attribute type { xsd:token { pattern = "brief|" } }?
         }

Response

    help_response
     = element help_response
         {
           text
           & attribute status { status }
           & attribute status_text { text }
           & help_response_schema?
         }

    help_response_schema
     = element schema
         {
           help_response_schema_protocol
         }

    help_response_schema_protocol
     = element protocol
         {
           attribute format { text }?
           & attribute extension { text }?
           & attribute content_type { text }?
           & help_response_schema_protocol_name
           & help_response_schema_protocol_abbreviation?
           & help_response_schema_protocol_summary?
           & help_response_schema_protocol_version?
           & help_response_schema_protocol_type*
           & help_response_schema_protocol_command*
         }

    help_response_schema_protocol_name
     = element name
         {
           text
         }

    help_response_schema_protocol_abbreviation
     = element abbreviation
         {
           text
         }

    help_response_schema_protocol_summary
     = element summary
         {
           text
         }

    help_response_schema_protocol_version
     = element version
         {
           text
         }

    help_response_schema_protocol_type
     = element type
         {
           help_response_schema_protocol_type_name
           & help_response_schema_protocol_type_summary?
           & help_response_schema_protocol_type_description?
           & help_response_schema_protocol_type_pattern
         }

    help_response_schema_protocol_type_name
     = element name
         {
           type_name
         }

    help_response_schema_protocol_type_summary
     = element summary
         {
           text
         }

    help_response_schema_protocol_type_description
     = element description
         {
           text
           & help_response_schema_protocol_type_description_p*
         }

    help_response_schema_protocol_type_description_p
     = element p
         {
           text
         }

    help_response_schema_protocol_type_pattern
     = element pattern
         {
           text
         }

    help_response_schema_protocol_command
     = element command    # type command_definition
         {
           command_definition_name
           & command_definition_summary?
           & command_definition_description?
           & ( ( command_definition_pattern
               & command_definition_response )
               | ( command_definition_type
               & command_definition_ele* ) )
           & command_definition_example*
         }

#### 7.94.3 Example: Get the help text

Client

     <help/>

Manager

     <help_response status="200"
                    status_text="OK">
        AUTHENTICATE           Authenticate with the manager.
        CREATE_ALERT           Create an alert.
        ...
        VERIFY_SCANNER         Verify a scanner.
     </help_response>

#### 7.94.3 Example: Get the GMP schema

Client

     <help format="XML"/>

Manager

     <help_response status="200"
                    status_text="OK">
       <schema format="XML"
               extension="xml"
               content_type="text/xml">
         <protocol>
           <name>Greenbone Management Protocol</name>
           <abbreviation>GMP</abbreviation>
           <summary>
             The management protocol of the Greenbone Vulnerability Manager
           </summary>
           <version>22.7</version>
           ...
           <type>
             <name>base64</name>
             <summary>Base64 encoded data</summary>
             <pattern>xsd:base64Binary</pattern>
           </type>
           ...
           <command>
             <name>authenticate</name>
             <summary>Authenticate with the manager</summary>
             ...
           </command>
           ...
         </protocol>
       </schema>
     </help_response>

### 7.95 Command `modify_alert`

In short: Modify an existing alert.

The client uses the modify_alert command to change an existing alert.

#### 7.95.1 Structure

- Command
  - @alert_id (uuid) ID of alert to modify.
  - <name> ?
    Name of alert.
  - <comment> ?
    Comment on alert.
  - <filter> ?
    Filter to apply when executing alert.
    - @id (uuid)
  - <event> ?
    The event that must happen for the alert to occur.
    - <data> *
      Some data that defines the event.
      - <name>
        The name of the event data.
  - <condition> ?
    The condition that must be satisfied for the alert to occur.
    - <data> *
      Some data that defines the condition.
      - <name>
        The name of the condition data.
  - <method> ?
    The method by which the user is alerted.
    - <data> *
      Some data that defines the method.
      - <name>
        The name of the method data.
- Response
  - @status (status)
  - @status_text (text)

#### 7.95.2 RNC

Command

    modify_alert
     = element modify_alert
         {
           attribute alert_id { uuid }
           & modify_alert_name?
           & modify_alert_comment?
           & modify_alert_filter?
           & modify_alert_event?
           & modify_alert_condition?
           & modify_alert_method?
         }

    modify_alert_name
     = element name
         {
           name
         }

    modify_alert_comment
     = element comment
         {
           text
         }

    modify_alert_condition
     = element condition
         {
           text
           & modify_alert_condition_data*
         }

    modify_alert_condition_data
     = element data
         {
           text
           & modify_alert_condition_data_name
         }

    modify_alert_condition_data_name
     = element name
         {
           text
         }

    modify_alert_event
     = element event
         {
           text
           & modify_alert_event_data*
         }

    modify_alert_event_data
     = element data
         {
           text
           & modify_alert_event_data_name
         }

    modify_alert_event_data_name
     = element name
         {
           text
         }

    modify_alert_method
     = element method
         {
           text
           & modify_alert_method_data*
         }

    modify_alert_method_data
     = element data
         {
           text
           & modify_alert_method_data_name
         }

    modify_alert_method_data_name
     = element name
         {
           text
         }

    modify_alert_filter
     = element filter
         {
           attribute id { uuid }
         }

Response

    modify_alert_response
     = element modify_alert_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.95.3 Example: Modify the name and report filter of an alert and the condition that triggers it

Client

     <modify_alert alert_id="914b59f8-25f5-4c8f-832c-2379cd625236">
       <name>Low Level Alert 2</name>
       <condition>
         Threat level at least
         <data>
           Low
           <name>level</name>
         </data>
       </condition>
       <filter id="7a06bd00-7e4a-4669-b7d7-8fe65ec64a41"/>
     </modify_alert>

Manager

     <modify_alert_response status="200"
                            status_text="OK"/>

### 7.96 Command `modify_asset`

In short: Modify an existing asset.

The client uses the modify_asset command to change an existing asset.

#### 7.96.1 Structure

- Command
  - @asset_id (uuid) ID of asset to modify.
  - <comment> ?
    Comment on asset.
- Response
  - @status (status)
  - @status_text (text)

#### 7.96.2 RNC

Command

    modify_asset
     = element modify_asset
         {
           attribute asset_id { uuid }
           & modify_asset_comment?
         }

    modify_asset_comment
     = element comment
         {
           text
         }

Response

    modify_asset_response
     = element modify_asset_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.96.3 Example: Modify the comment of an asset

Client

     <modify_asset asset_id="914b59f8-25f5-4c8f-832c-2379cd625236">
       <comment>New comment</comment>
     </modify_asset>

Manager

     <modify_asset_response status="200"
                            status_text="OK"/>

### 7.97 Command `modify_auth`

In short: Modify the authentication methods.

The client uses the "modify_auth" command to modify the authentication methods.

#### 7.97.1 Structure

- Command
  - <group>
    - <auth_conf_setting> *
      - <key>
        Setting name.
      - <value>
        Setting value.
- Response
  - @status (status)
  - @status_text (text)

#### 7.97.2 RNC

Command

    modify_auth
     = element modify_auth
         {
           modify_auth_group
         }

    modify_auth_group
     = element group
         {
           modify_auth_group_auth_conf_setting*
         }

    modify_auth_group_auth_conf_setting
     = element auth_conf_setting
         {
           modify_auth_group_auth_conf_setting_key
           & modify_auth_group_auth_conf_setting_value
         }

    modify_auth_group_auth_conf_setting_key
     = element key
         {
           text
         }

    modify_auth_group_auth_conf_setting_value
     = element value
         {
           text
         }

Response

    modify_auth_response
     = element modify_auth_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.97.3 Example: Modify a single setting for an authentication method

Client

     <modify_auth>
       <group name="Foo">
         <auth_conf_setting>
           <key>Bar</key>
           <value>Baz</value>
         </auth_conf_setting>
       </group>
     </modify_auth>

Manager

     <modify_auth_response status="200"
                           status_text="OK"/>

### 7.98 Command `modify_config`

In short: Modify an existing config.

This command can perform four types of actions: 1) modifying preferences, 2) changing the family selection, 3) changing the NVT selection of families, or 4) modifying basic fields like the name or comment.

Since version 21.04 it is possible to perform multiple of these actions at once in the order they appear in the command. Note that the changes can influence each other, so this can change the overall result.

The first type modifies the preferences on the config. If a preference includes an NVT, then the preference is an NVT preference, otherwise the preference is a scanner preference. If the preference includes a value then the manager updates the value of the preference, otherwise the manager removes the preference. The value must be base64 encoded.

The second type, with a family selection, lets the client modify the NVTs selected by the config at a family level. The idea is that the client modifies the entire family selection at once, so a client will often need to include many families in a family selection.

The family_selection may include a growing element to indicate whether new families should be added to the selection. It may also include any number of family elements.

A family element must always include a name and may include a growing element and an all element. The all element indicates whether all NVTs in the family should be selected. The growing element indicates whether new NVTs in the family should be added to the selection as they arrive. Leaving a family out of the family_selection is equivalent to including the family with all 0 and growing 0.

The effect of the all 0 and growing 0 case is subtle: if all NVTs were selected then all are removed (effectively removing the family from the config). However if some NVTs were selected then they remain selected. As a result the client must include in the family_selection all families that must have all NVTs selected.

The third option, NVT selections, must include a family and may include any number of NVTs. The manager updates each given family in the config to include only the given NVTs. If the family selection is also changed, this should be done first as it can also change the NVT selection of families.

If there was no error with the command sent by the client, the manager will apply the changes to the config and will reply with a response code indicating success.

#### 7.98.1 Structure

- Command
  - @config_id (uuid) ID of config to modify.
  - <name> ?
    New name for the config.
  - <comment> ?
    New comment for the config.
  - <preference> *
    - <name>
      The name of the preference to modify.
    - <nvt> ?
      NVT associated with preference to modify.
      - @oid (oid)
      More Details
      If this element is present then the preference is an NVT preference, otherwise it is a Scanner preference.
    - <value> ?
      New value for preference.
  - <family_selection> ?
    - <growing> ?
      Whether new families should be added to the config.
    - <family> *
      - <all> ?
        Whether to select all NVTs initially.
      - <growing> ?
        Whether to add newly arrived nvts to the selection.
      - <name>
  - <nvt_selection> *
    - <family>
      Name of family to modify.
    - <nvt> *
      - @oid (oid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.98.2 RNC

Command

    modify_config
     = element modify_config
         {
           attribute config_id { uuid }
           & modify_config_name?
           & modify_config_comment?
           & modify_config_preference*
           & modify_config_family_selection?
           & modify_config_nvt_selection*
         }

    modify_config_name
     = element name
         {
           name
         }

    modify_config_comment
     = element comment
         {
           text
         }

    modify_config_preference
     = element preference
         {
           modify_config_preference_name
           & modify_config_preference_nvt?
           & modify_config_preference_value?
         }

    modify_config_preference_name
     = element name
         {
           name
         }

    modify_config_preference_nvt
     = element nvt
         {
           attribute oid { oid }
         }

    modify_config_preference_value
     = element value
         {
           base64
         }

    modify_config_family_selection
     = element family_selection
         {
           modify_config_family_selection_growing?
           & modify_config_family_selection_family*
         }

    modify_config_family_selection_growing
     = element growing
         {
           boolean_atoi
         }

    modify_config_family_selection_family
     = element family
         {
           modify_config_family_selection_family_all?
           & modify_config_family_selection_family_growing?
           & modify_config_family_selection_family_name
         }

    modify_config_family_selection_family_all
     = element all
         {
           boolean_atoi
         }

    modify_config_family_selection_family_growing
     = element growing
         {
           boolean_atoi
         }

    modify_config_family_selection_family_name
     = element name
         {
           name
         }

    modify_config_nvt_selection
     = element nvt_selection
         {
           modify_config_nvt_selection_family
           & modify_config_nvt_selection_nvt*
         }

    modify_config_nvt_selection_family
     = element family
         {
           name
         }

    modify_config_nvt_selection_nvt
     = element nvt
         {
           attribute oid { oid }
         }

Response

    modify_config_response
     = element modify_config_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.98.3 Example: Modify a config NVT preference

Client

     <modify_config config_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <preference>
         <nvt oid="1.3.6.1.4.1.25623.1.0.14259"/>
         <name>1.3.6.1.4.1.25623.1.0.14259:1:checkbox:UDP port scan</name>
         <value>eWVz</value>
       </preference>
     </modify_config>

Manager

     <modify_config_response status="200"
                             status_text="OK"/>

#### 7.98.3 Example: Modify a config Scanner preference

Client

     <modify_config config_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <preference>
         <name>scanner:scanner:scanner:vhosts</name>
         <value>ZXhhbXBsZQ==</value>
       </preference>
     </modify_config>

Manager

     <modify_config_response status="200"
                             status_text="OK"/>

#### 7.98.3 Example: Modify the families that a config selects

The outer "growing" element sets the config to add any new families that arrive.

The client requests the Manager to keep a single selected family (Debian Local Security Checks), to select all NVTs in this family, and to automatically add any new NVTs in this family to the config.

Client

     <modify_config config_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <family_selection>
         <growing>1</growing>
         <family>
           <name>Debian Local Security Checks</name>
           <all>1</all>
           <growing>1</growing>
         </family>
       </family_selection>
     </modify_config>

Manager

     <modify_config_response status="200"
                             status_text="OK"/>

#### 7.98.3 Example: Modify the NVTs that a config selects in a particular family

Client

     <modify_config config_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <nvt_selection>
         <family>Debian Local Security Checks</family>
         <nvt oid="1.3.6.1.4.1.25623.1.0.53797"/>
         <nvt oid="1.3.6.1.4.1.25623.1.0.63272"/>
         <nvt oid="1.3.6.1.4.1.25623.1.0.55615"/>
         <nvt oid="1.3.6.1.4.1.25623.1.0.53546"/>
       </nvt_selection>
     </modify_config>

Manager

     <modify_config_response status="200"
                             status_text="OK"/>

### 7.99 Command `modify_credential`

In short: Modify an existing credential.

The client uses the modify_credential command to change an existing credential.

The login and password can only be changed for password credentials. Modification of login or password on package credentials is forbidden.

#### 7.99.1 Structure

- Command
  - @credential_id (uuid) ID of credential to modify.
  - <comment> ?
    A comment on the credential.
  - <name> ?
    A name for the credential.
  - <allow_insecure> ?
    Whether to allow insecure use of the credential.
  - <certificate> ?
    The certificate for the credential.
  - <kdc> ?
    Deprecated: This element is deprecated. Use kdcs instead. The Kerberos KDC (key distribution center(s)).
  - <kdcs> ?
    Multiple Kerberos KDCs.
    - <kdc> *
      A single Kerberos Key Distribution Center.
    More Details
    List of one or more Kerberos Key Distribution Centers (KDCs).
  - <key> ?
    - <phrase> ?
      Key passphrase.
    - One of
      - <private>
        Private key.
      - <public>
        Public key.
  - <login> ?
    The user name of the credential.
  - <password> ?
    The password for the credential login.
  - <community> ?
    The SNMP community.
  - <auth_algorithm> ?
    Authentication algorithm for SNMP, either md5 or sha1.
    One of:
    md5
    sha1
  - <privacy> ?
    - <algorithm>
      The SNMP privacy algorithm, either aes or des.
      One of:
      aes
      des
    - <password>
      The SNMP privacy password.
  - <realm> ?
    The Kerberos realm.
- Response
  - @status (status)
  - @status_text (text)

#### 7.99.2 RNC

Command

    modify_credential
     = element modify_credential
         {
           attribute credential_id { uuid }
           & modify_credential_comment?
           & modify_credential_name?
           & modify_credential_allow_insecure?
           & modify_credential_certificate?
           & modify_credential_kdc?
           & modify_credential_kdcs?
           & modify_credential_key?
           & modify_credential_login?
           & modify_credential_password?
           & modify_credential_community?
           & modify_credential_auth_algorithm?
           & modify_credential_privacy?
           & modify_credential_realm?
         }

    modify_credential_name
     = element name
         {
           name
         }

    modify_credential_comment
     = element comment
         {
           text
         }

    modify_credential_allow_insecure
     = element allow_insecure
         {
           boolean
         }

    modify_credential_certificate
     = element certificate
         {
           text
         }

    modify_credential_kdc
     = element kdc
         {
           text
         }

    modify_credential_kdcs
     = element kdcs
         {
           modify_credential_kdcs_kdc*
         }

    modify_credential_kdcs_kdc
     = element kdc
         {
           text
         }

    modify_credential_key
     = element key
         {
           modify_credential_key_phrase?
           & ( modify_credential_key_private
               | modify_credential_key_public )
         }

    modify_credential_key_phrase
     = element phrase
         {
           text
         }

    modify_credential_key_private
     = element private
         {
           text
         }

    modify_credential_key_public
     = element public
         {
           text
         }

    modify_credential_login
     = element login
         {
           text
         }

    modify_credential_password
     = element password
         {
           text
         }

    modify_credential_community
     = element community
         {
           text
         }

    modify_credential_auth_algorithm
     = element auth_algorithm
         {
           xsd:token { pattern = "md5|sha1" }
         }

    modify_credential_privacy
     = element privacy
         {
           modify_credential_privacy_algorithm
           & modify_credential_privacy_password
         }

    modify_credential_privacy_algorithm
     = element algorithm
         {
           xsd:token { pattern = "aes|des" }
         }

    modify_credential_privacy_password
     = element password
         {
           text
         }

    modify_credential_realm
     = element realm
         {
           text
         }

Response

    modify_credential_response
     = element modify_credential_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.99.3 Example: Modify the comment of an credential

Client

     <modify_credential credential_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <comment>Credential for all machines in lab 4.</comment>
     </modify_credential>

Manager

     <modify_credential_response status="200"
                                 status_text="OK"/>

### 7.100 Command `modify_filter`

In short: Modify an existing filter.

The client uses the modify_filter command to change an existing filter.

#### 7.100.1 Structure

- Command
  - @filter_id (uuid) ID of filter to modify.
  - <comment> ?
    Comment on filter.
  - <name> ?
    Name of filter.
  - <term> ?
    Filter term.
  - <type> ?
    Resource type filter applies to.
- Response
  - @status (status)
  - @status_text (text)

#### 7.100.2 RNC

Command

    modify_filter
     = element modify_filter
         {
           attribute filter_id { uuid }
           & modify_filter_comment?
           & modify_filter_name?
           & modify_filter_term?
           & modify_filter_type?
         }

    modify_filter_comment
     = element comment
         {
           text
         }

    modify_filter_name
     = element name
         {
           name
         }

    modify_filter_term
     = element term
         {
           text
         }

    modify_filter_type
     = element type
         {
           text
         }

Response

    modify_filter_response
     = element modify_filter_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.100.3 Example: Modify the term of a filter

Client

     <modify_filter filter_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <term>name=local</term>
     </modify_filter>

Manager

     <modify_filter_response status="200"
                             status_text="OK"/>

### 7.101 Command `modify_group`

In short: Modify an existing group.

The client uses the modify_group command to change an existing group.

#### 7.101.1 Structure

- Command
  - @group_id (uuid) ID of group to modify.
  - <name> ?
    Name of group.
  - <comment> ?
    Comment on group.
  - <users> ?
    Comma separated list of user names.
- Response
  - @status (status)
  - @status_text (text)

#### 7.101.2 RNC

Command

    modify_group
     = element modify_group
         {
           attribute group_id { uuid }
           & modify_group_name?
           & modify_group_comment?
           & modify_group_users?
         }

    modify_group_name
     = element name
         {
           name
         }

    modify_group_comment
     = element comment
         {
           text
         }

    modify_group_users
     = element users
         {
           text
         }

Response

    modify_group_response
     = element modify_group_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.101.3 Example: Modify the name of a group

Client

     <modify_group group_id="d94211b6-ba40-11e3-bcb1-406186ea4fc5">
       <name>Line Managers</name>
     </modify_group>

Manager

     <modify_group_response status="200"
                            status_text="OK"/>

### 7.102 Command `modify_integration_config`

In short: Modify an integration configuration.

The client uses the modify_integration_config command to modify an existing integration configuration.

#### 7.102.1 Structure

- Command
  - @uuid (uuid)
  - <service>
    Service configuration.
    - <url>
      Service URL.
    - <cacert> ?
      CA certificate used to validate the service endpoint.
  - <oidc>
    OIDC configuration.
    - <url>
      OIDC provider URL.
    - <client>
      OIDC client configuration.
      - <id>
        OIDC client ID.
      - <secret>
        OIDC client secret.
- Response
  - @status (status)
  - @status_text (text)

#### 7.102.2 RNC

Command

    modify_integration_config
     = element modify_integration_config
         {
           attribute uuid { uuid }
           & modify_integration_config_service
           & modify_integration_config_oidc
         }

    modify_integration_config_service
     = element service
         {
           modify_integration_config_service_url
           & modify_integration_config_service_cacert?
         }

    modify_integration_config_service_url
     = element url
         {

            ERROR

         }

    modify_integration_config_service_cacert
     = element cacert
         {

            ERROR

         }

    modify_integration_config_oidc
     = element oidc
         {
           modify_integration_config_oidc_url
           & modify_integration_config_oidc_client
         }

    modify_integration_config_oidc_url
     = element url
         {

            ERROR

         }

    modify_integration_config_oidc_client
     = element client
         {
           modify_integration_config_oidc_client_id
           & modify_integration_config_oidc_client_secret
         }

    modify_integration_config_oidc_client_id
     = element id
         {

            ERROR

         }

    modify_integration_config_oidc_client_secret
     = element secret
         {

            ERROR

         }

Response

    modify_integration_config_response
     = element modify_integration_config_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.102.3 Example: Modify an integration configuration

Client

     <modify_integration_config uuid="1e1ee952-84b6-42cf-8431-2db3c5b5ca73">
       <service>
         <url>https://osi.example.com</url>
         <cacert>--- Certificate content ---</cacert>
       </service>
       <oidc>
         <url>https://oidc.example.com</url>
         <client>
           <id>client-id</id>
           <secret>client-secret</secret>
         </client>
       </oidc>
     </modify_integration_config>

Manager

     <modify_integration_config_response status="200"
                                         status_text="OK"/>

### 7.103 Command `modify_license`

In short: Modify the existing license.

The client uses the modify_license command to change the current license.

The license has to be provided as a valid base64 encoded license file.

This command is only available if gvmd is built with the licensing library (libtheia).

#### 7.103.1 Structure

- Command
  - @allow_empty (boolean) Whether to allow an empty file.
  - <file>
    The license file in base64 encoded form.
- Response
  - @status (status)
  - @status_text (text)

#### 7.103.2 RNC

Command

    modify_license
     = element modify_license
         {
           attribute allow_empty { boolean }?
           & modify_license_file
         }

    modify_license_file
     = element file
         {
           text
         }

Response

    modify_license_response
     = element modify_license_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.103.3 Example: Upload an new license file

Client

     <modify_license>
       <file>[...]</file>
     </modify_license>

Manager

     <modify_license_response status="200"
                              status_text="OK"/>

### 7.104 Command `modify_note`

In short: Modify an existing note.

The client uses the modify_note command to change an existing note.

If an optional element is left out, the existing value will be cleared, generalising that constraint.

#### 7.104.1 Structure

- Command
  - @note_id (uuid) ID of note to modify.
  - <active> ?
    Days note will be active. -1 on always, 0 off.
  - <nvt> ?
    NVT to which note applies.
    - @oid (oid)
  - <hosts> ?
    A comma-separated list of hosts.
  - <port> ?
    Port (location) to which note applies.
  - <result> ?
    Result to which note applies.
    - @id (uuid)
  - <severity> ?
    Severity to which note applies.
  - <task> ?
    Task to which note applies.
    - @id (uuid)
  - <text>
    The text of the note.
- Response
  - @status (status)
  - @status_text (text)

#### 7.104.2 RNC

Command

    modify_note
     = element modify_note
         {
           attribute note_id { uuid }
           & modify_note_active?
           & modify_note_nvt?
           & modify_note_hosts?
           & modify_note_port?
           & modify_note_result?
           & modify_note_severity?
           & modify_note_task?
           & modify_note_text
         }

    modify_note_active
     = element active
         {
           integer
         }

    modify_note_nvt
     = element nvt
         {
           attribute oid { oid }
         }

    modify_note_hosts
     = element hosts
         {
           text
         }

    modify_note_port
     = element port
         {
           text
         }

    modify_note_severity
     = element severity
         {
           severity
         }

    modify_note_text
     = element text
         {
           text
         }

    modify_note_task
     = element task
         {
           attribute id { uuid }
         }

    modify_note_result
     = element result
         {
           attribute id { uuid }
         }

Response

    modify_note_response
     = element modify_note_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.104.3 Example: Modify the text and result of a note

Client

     <modify_note note_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <text>This issue should be resolved after the upgrade.</text>
       <result result_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c"/>
     </modify_note>

Manager

     <modify_note_response status="200"
                           status_text="OK"/>

### 7.105 Command `modify_override`

In short: Modify an existing override.

The client uses the modify_override command to change an existing override.

If an optional element is left out, the existing value will be cleared, generalising that constraint.

#### 7.105.1 Structure

- Command
  - @override_id (uuid) ID of override to modify.
  - <active> ?
    Days override will be active. -1 on always, 0 off.
  - <nvt> ?
    NVT to which override applies.
    - @oid (oid)
  - <hosts> ?
    A comma-separated list of hosts.
  - <new_severity> ?
    New severity score for result.
  - <new_threat> ?
    New threat level for result.
  - <port> ?
    Port (location) to which override applies.
  - <result> ?
    Result to which override applies.
    - @id (uuid)
  - <task> ?
    Task to which override applies.
    - @id (uuid)
  - <text>
    Text describing the override.
  - <severity> ?
    Severity score to which override applies.
  - <threat> ?
    Threat level to which override applies.
- Response
  - @status (status)
  - @status_text (text)

#### 7.105.2 RNC

Command

    modify_override
     = element modify_override
         {
           attribute override_id { uuid }
           & modify_override_active?
           & modify_override_nvt?
           & modify_override_hosts?
           & modify_override_new_severity?
           & modify_override_new_threat?
           & modify_override_port?
           & modify_override_result?
           & modify_override_task?
           & modify_override_text
           & modify_override_severity?
           & modify_override_threat?
         }

    modify_override_active
     = element active
         {
           integer
         }

    modify_override_nvt
     = element nvt
         {
           attribute oid { oid }
         }

    modify_override_hosts
     = element hosts
         {
           text
         }

    modify_override_new_severity
     = element new_severity
         {
           severity
         }

    modify_override_new_threat
     = element new_threat
         {
           threat
         }

    modify_override_port
     = element port
         {
           text
         }

    modify_override_text
     = element text
         {
           text
         }

    modify_override_severity
     = element severity
         {
           severity
         }

    modify_override_threat
     = element threat
         {
           threat
         }

    modify_override_task
     = element task
         {
           attribute id { uuid }
         }

    modify_override_result
     = element result
         {
           attribute id { uuid }
         }

Response

    modify_override_response
     = element modify_override_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.105.3 Example: Set the override threat to Low

Client

     <modify_override override_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <text>This issue is less important in our setup.</text>
       <new_threat>Low</new_threat>
     </modify_override>

Manager

     <modify_override_response status="200"
                               status_text="OK"/>

### 7.106 Command `modify_permission`

In short: Modify a permission.

The client uses the modify_permission command to change an existing permission.

#### 7.106.1 Structure

- Command
  - @permission_id (uuid)
  - <name> ?
    Permission name, currently the name of a command.
  - <comment> ?
    The comment on the permission.
  - <resource> ?
    A resource to which the permission applies.
    - @id (uuid) UUID if permission applies to resource, else 0.
    - <type>
      GMP type, for Super permissions: user, group or role.
  - <subject> ?
    A subject to whom the permission is granted.
    - @id (uuid)
    - <type>
      GMP type of the subject: user, group or role.
- Response
  - @status (status)
  - @status_text (text)

#### 7.106.2 RNC

Command

    modify_permission
     = element modify_permission
         {
           attribute permission_id { uuid }
           & modify_permission_name?
           & modify_permission_comment?
           & modify_permission_resource?
           & modify_permission_subject?
         }

    modify_permission_name
     = element name
         {
           text
         }

    modify_permission_comment
     = element comment
         {
           text
         }

    modify_permission_resource
     = element resource
         {
           attribute id { uuid }?
           & modify_permission_resource_type
         }

    modify_permission_resource_type
     = element type
         {
           text
         }

    modify_permission_subject
     = element subject
         {
           attribute id { uuid }?
           & modify_permission_subject_type
         }

    modify_permission_subject_type
     = element type
         {
           text
         }

Response

    modify_permission_response
     = element modify_permission_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.106.3 Example: Change user of a permission

Client

     <modify_permission permission_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <subject id="76e47468-c095-11e3-9285-406186ea4fc5">
         <type>user</type>
       </subject>
     </modify_permission>

Manager

     <modify_permission_response status="200"
                                 status_text="OK"/>

### 7.107 Command `modify_port_list`

In short: Modify an existing port list.

The client uses the modify_port_list command to change an existing port list.

#### 7.107.1 Structure

- Command
  - @port_list_id (uuid) ID of port list to modify.
  - <name> ?
    Name of port list.
  - <comment> ?
    Comment on port list.
- Response
  - @status (status)
  - @status_text (text)

#### 7.107.2 RNC

Command

    modify_port_list
     = element modify_port_list
         {
           attribute port_list_id { uuid }
           & modify_port_list_name?
           & modify_port_list_comment?
         }

    modify_port_list_name
     = element name
         {
           name
         }

    modify_port_list_comment
     = element comment
         {
           text
         }

Response

    modify_port_list_response
     = element modify_port_list_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.107.3 Example: Modify the name of a port list

Client

     <modify_port_list port_list_id="27140836-05ae-4e8b-9abf-f725ddc2888f">
       <name>PL-WS1</name>
       <comment>Port List for Web Server 1</comment>
     </modify_port_list>

Manager

     <modify_port_list_response status="200"
                                status_text="OK"/>

### 7.108 Command `modify_report_config`

In short: Modify an existing report config.

The client uses the modify_report_config command to change an existing report config.

#### 7.108.1 Structure

- Command
  - <name> ?
    A name for the report config. Omit to keep current one.
  - <comment> ?
    A comment on the report config. Omit to keep current one.
  - <param> *
    A parameter to pass to the report format. Omit params to keep current value.
    - <name>
      Name of the parameter.
    - <value>
      Value of the parameter.
      - @use_default (boolean) Whether to use the default instead of the given value.
- Response
  - @status (status)
  - @status_text (text)
  - @id (uuid)

#### 7.108.2 RNC

Command

    modify_report_config
     = element modify_report_config
         {
           modify_report_config_name?
           & modify_report_config_comment?
           & modify_report_config_param*
         }

    modify_report_config_name
     = element name
         {
           name
         }

    modify_report_config_comment
     = element comment
         {
           text
         }

    modify_report_config_param
     = element param
         {
           modify_report_config_param_name
           & modify_report_config_param_value
         }

    modify_report_config_param_name
     = element name
         {
           text
         }

    modify_report_config_param_value
     = element value
         {
           text
           & attribute use_default { boolean }?
         }

Response

    modify_report_config_response
     = element modify_report_config_response
         {
           attribute status { status }
           & attribute status_text { text }
           & attribute id { uuid }
         }

#### 7.108.3 Example: Rename a report config and reset a param to default

Client

     <modify_report_config>
       <name>Renamed config</name>
       <param>
         <name>Node Distance</name>
         <value use_default="1"/>
       </param>
     </modify_report_config>

Manager

     <modify_report_config_response status="200"
                                    status_text="OK"/>

### 7.109 Command `modify_report_format`

In short: Update an existing report format.

The client uses the modify_report_format command to change an existing report format.

#### 7.109.1 Structure

- Command
  - @report_format_id (uuid) ID of report format to modify.
  - One of
    - <active>
      Whether the report format is active.
    - <name>
      The name of the report format.
    - <summary>
      A summary of the report format.
    - <param>
      - <name>
        The name of the param.
      - <value> ?
        New value for the param.
      More Details
      If the value element is missing, then the value becomes the empty string.
- Response
  - @status (status)
  - @status_text (text)

#### 7.109.2 RNC

Command

    modify_report_format
     = element modify_report_format
         {
           attribute report_format_id { uuid }
           & ( modify_report_format_active
               | modify_report_format_name
               | modify_report_format_summary
               | modify_report_format_param )
         }

    modify_report_format_active
     = element active
         {
           boolean
         }

    modify_report_format_name
     = element name
         {
           name
         }

    modify_report_format_summary
     = element summary
         {
           text
         }

    modify_report_format_param
     = element param
         {
           modify_report_format_param_name
           & modify_report_format_param_value?
         }

    modify_report_format_param_name
     = element name
         {
           name
         }

    modify_report_format_param_value
     = element value
         {
           base64
         }

Response

    modify_report_format_response
     = element modify_report_format_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.109.3 Example: Modify a report format param

Client

     <modify_report_format report_format_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <param>
         <name>Background Colour</name>
         <value>cmVk</value>
       </param>
     </modify_report_format>

Manager

     <modify_report_format_response status="200"
                                    status_text="OK"/>

#### 7.109.3 Example: Modify the name of a report format

Client

     <modify_report_format report_format_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <name>New name</name>
     </modify_report_format>

Manager

     <modify_report_format_response status="200"
                                    status_text="OK"/>

### 7.110 Command `modify_role`

In short: Modify an existing role.

The client uses the modify_role command to change an existing role.

#### 7.110.1 Structure

- Command
  - @role_id (uuid) ID of role to modify.
  - <name> ?
    Name of role.
  - <comment> ?
    Comment on role.
  - <users> ?
    Comma separated list of user names.
- Response
  - @status (status)
  - @status_text (text)

#### 7.110.2 RNC

Command

    modify_role
     = element modify_role
         {
           attribute role_id { uuid }
           & modify_role_name?
           & modify_role_comment?
           & modify_role_users?
         }

    modify_role_name
     = element name
         {
           name
         }

    modify_role_comment
     = element comment
         {
           text
         }

    modify_role_users
     = element users
         {
           text
         }

Response

    modify_role_response
     = element modify_role_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.110.3 Example: Modify the name of a role

Client

     <modify_role role_id="914b59f8-25f5-4c8f-832c-2379cd625236">
       <name>SCAP User</name>
     </modify_role>

Manager

     <modify_role_response status="200"
                           status_text="OK"/>

### 7.111 Command `modify_scanner`

In short: Modify an existing scanner.

The client uses the modify_scanner command to change an existing scanner.

#### 7.111.1 Structure

- Command
  - @scanner_id (uuid) ID of scanner to modify.
  - <comment> ?
    Comment on scanner.
  - <name> ?
    Name of scanner.
  - <host>
    Host of the scanner.
  - <port>
    Port of the scanner.
  - <type>
    Type of the scanner. '1' for OSP, '2' for OpenVAS (classic) Scanner.
  - <ca_pub> ?
    Certificate of CA to verify scanner's certificate.
  - <credential> ?
    Client certificate credential for the Scanner.
    - @id (uuid) UUID of the credential.
  - <relay_host> ?
    Optional relay host of the scanner.
  - <relay_port> ?
    Optional relay port of the scanner.
- Response
  - @status (status)
  - @status_text (text)

#### 7.111.2 RNC

Command

    modify_scanner
     = element modify_scanner
         {
           attribute scanner_id { uuid }
           & modify_scanner_comment?
           & modify_scanner_name?
           & modify_scanner_host
           & modify_scanner_port
           & modify_scanner_type
           & modify_scanner_ca_pub?
           & modify_scanner_credential?
           & modify_scanner_relay_host?
           & modify_scanner_relay_port?
         }

    modify_scanner_comment
     = element comment
         {
           text
         }

    modify_scanner_name
     = element name
         {
           name
         }

    modify_scanner_host
     = element host
         {
           text
         }

    modify_scanner_port
     = element port
         {
           text
         }

    modify_scanner_type
     = element type
         {
           text
         }

    modify_scanner_ca_pub
     = element ca_pub
         {
           text
         }

    modify_scanner_credential
     = element credential
         {
           attribute id { uuid }
         }

    modify_scanner_relay_host
     = element relay_host
         {
           text
         }

    modify_scanner_relay_port
     = element relay_port
         {
           text
         }

Response

    modify_scanner_response
     = element modify_scanner_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.111.3 Example: Modify the name of a scanner

Client

     <modify_scanner scanner_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <name>Weekly Scan</name>
     </modify_scanner>

Manager

     <modify_scanner_response status="200"
                              status_text="OK"/>

### 7.112 Command `modify_schedule`

In short: Modify an existing schedule.

The client uses the modify_schedule command to change an existing schedule.

#### 7.112.1 Structure

- Command
  - @schedule_id (uuid) ID of schedule to modify.
  - <comment> ?
    Comment on schedule.
  - <name> ?
    Name of schedule.
  - <icalendar> ?
    iCalendar text containing the time data. Replaces first_time, duration and period.
  - <timezone> ?
    The timezone the schedule will follow. User's timezone is used if omitted.
- Response
  - @status (status)
  - @status_text (text)

#### 7.112.2 RNC

Command

    modify_schedule
     = element modify_schedule
         {
           attribute schedule_id { uuid }
           & modify_schedule_comment?
           & modify_schedule_name?
           & modify_schedule_icalendar?
           & modify_schedule_timezone?
         }

    modify_schedule_comment
     = element comment
         {
           text
         }

    modify_schedule_name
     = element name
         {
           name
         }

    modify_schedule_icalendar
     = element icalendar
         {
           text
         }

    modify_schedule_timezone
     = element timezone
         {
           timezone
         }

Response

    modify_schedule_response
     = element modify_schedule_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.112.3 Example: Modify the name of a schedule

Client

     <modify_schedule schedule_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <name>Weekly Scan</name>
     </modify_schedule>

Manager

     <modify_schedule_response status="200"
                               status_text="OK"/>

### 7.113 Command `modify_setting`

In short: Modify an existing setting.

The client uses the modify_setting command to change an existing setting. These are user settings that can be controlled via GMP. The settings "Password" and "Timezone" can be modified by name, the rest by UUID.

#### 7.113.1 Structure

- Command
  - @setting_id (uuid)
  - <name>
    The name of the setting.
  - <value>
    The value of the setting, in base64 encoding.
- Response
  - @status (status)
  - @status_text (text)

#### 7.113.2 RNC

Command

    modify_setting
     = element modify_setting
         {
           attribute setting_id { uuid }?
           & modify_setting_name
           & modify_setting_value
         }

    modify_setting_name
     = element name
         {
           text
         }

    modify_setting_value
     = element value
         {
           base64
         }

Response

    modify_setting_response
     = element modify_setting_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.113.3 Example: Modify the timezone

Client

     <modify_setting>
       <name>Timezone</name>
       <value>QWZyaWNhL0pvaGFubmVzYnVyZw==</value>
     </modify_setting>

Manager

     <modify_setting_response status="200"
                              status_text="OK"/>

### 7.114 Command `modify_tag`

In short: Modify a tag.

The client uses the modify_tag command to change an existing tag.

#### 7.114.1 Structure

- Command
  - @tag_id (uuid)
  - <name> ?
    A full tag name consisting of namespace and predicate.
  - <resources> ?
    Identifies the resources the tag is to be attached to.
    - @action ("", "add", "set" or "remove") Whether to add or remove resources instead of overwriting.
    - @filter (text) Filter term to select resources the tag is to be attached to.
    - <resource> *
      - @id (uuid) ID of a resource the tag is to be attached to.
    - <type>
      GMP type of the resources the tag is to be attached to.
  - <value> ?
    Value associated with the tag.
  - <comment> ?
    Comment to add to the tag.
  - <active> ?
    Whether the tag is active.
- Response
  - @status (status)
  - @status_text (text)

#### 7.114.2 RNC

Command

    modify_tag
     = element modify_tag
         {
           attribute tag_id { uuid }
           & modify_tag_name?
           & modify_tag_resources?
           & modify_tag_value?
           & modify_tag_comment?
           & modify_tag_active?
         }

    modify_tag_name
     = element name
         {
           text
         }

    modify_tag_resources
     = element resources
         {
           attribute action { xsd:token { pattern = "|add|set|remove" } }?
           & attribute filter { text }?
           & modify_tag_resources_resource*
           & modify_tag_resources_type
         }

    modify_tag_resources_resource
     = element resource
         {
           attribute id { uuid }?
         }

    modify_tag_resources_type
     = element type
         {
           text
         }

    modify_tag_value
     = element value
         {
           text
         }

    modify_tag_comment
     = element comment
         {
           text
         }

    modify_tag_active
     = element active
         {
           boolean
         }

Response

    modify_tag_response
     = element modify_tag_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.114.3 Example: Deactivate a tag

Client

     <modify_tag tag_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <active>0</active>
     </modify_tag>

Manager

     <modify_tag_response status="200"
                          status_text="OK"/>

### 7.115 Command `modify_target`

In short: Modify an existing target.

The client uses the modify_target command to change an existing target.

If the SSH elevate credential is set, the SSH credential must also be set. The SSH elevate credential and the SSH credential must differ.

#### 7.115.1 Structure

- Command
  - @target_id (uuid) ID of target to modify.
  - <comment> ?
    Comment on target.
  - <name> ?
    Name of target.
  - <hosts> ?
    Comma-separated list of target hosts.
  - <exclude_hosts> ?
    Comma-separated list of hosts to exclude.
  - <ssh_credential> ?
    SSH credential to use on target.
    - @id (uuid)
  - <ssh_elevate_credential> ?
    SSH elevate credential to use on target.
    - @id (uuid)
  - One of?
    - <krb5_credential>
      Kerberos 5 login credentials for target.
      - @id (uuid)
    - <smb_credential>
      SMB credential to use on target.
      - @id (uuid)
  - <esxi_credential> ?
    ESXi credential to use on target.
    - @id (uuid)
  - <snmp_credential> ?
    SNMP credential to use on target.
    - @id (uuid)
  - <ssh_lsc_credential> ?
    Deprecated: use ssh_credential. SSH credential.
    - @id (uuid)
  - <smb_lsc_credential> ?
    Deprecated: use ssh_credential. SMB credential.
    - @id (uuid)
  - <esxi_lsc_credential> ?
    Deprecated: use esxi_credential. ESXi credential.
    - @id (uuid)
  - <port_list> ?
    Port List describing ports to scan.
    - @id (uuid)
  - <alive_tests> ?
    Which alive tests to use.
    - <alive_test> *
      A single alive test to use. "Scan Config Default" and "Consider Alive" can only be used alone.
    More Details
    Instead of the sub-elements a string representation of the old predefined alive test selections can be used, but this is deprecated.
  - <reverse_lookup_only> ?
    Whether to scan only hosts that have names.
  - <reverse_lookup_unify> ?
    Whether to scan only one IP when multiple IPs have the same name.
  - <allow_simultaneous_ips> ?
    Whether to scan multiple IPs of the same host simultaneously.
- Response
  - @status (status)
  - @status_text (text)

#### 7.115.2 RNC

Command

    modify_target
     = element modify_target
         {
           attribute target_id { uuid }
           & modify_target_comment?
           & modify_target_name?
           & modify_target_hosts?
           & modify_target_exclude_hosts?
           & modify_target_ssh_credential?
           & modify_target_ssh_elevate_credential?
           & ( modify_target_krb5_credential
               | modify_target_smb_credential )?
           & modify_target_esxi_credential?
           & modify_target_snmp_credential?
           & modify_target_ssh_lsc_credential?
           & modify_target_smb_lsc_credential?
           & modify_target_esxi_lsc_credential?
           & modify_target_port_list?
           & modify_target_alive_tests?
           & modify_target_reverse_lookup_only?
           & modify_target_reverse_lookup_unify?
           & modify_target_allow_simultaneous_ips?
         }

    modify_target_comment
     = element comment
         {
           text
         }

    modify_target_name
     = element name
         {
           name
         }

    modify_target_hosts
     = element hosts
         {
           text
         }

    modify_target_exclude_hosts
     = element exclude_hosts
         {
           text
         }

    modify_target_ssh_credential
     = element ssh_credential
         {
           attribute id { uuid }
         }

    modify_target_ssh_elevate_credential
     = element ssh_elevate_credential
         {
           attribute id { uuid }
         }

    modify_target_smb_credential
     = element smb_credential
         {
           attribute id { uuid }
         }

    modify_target_krb5_credential
     = element krb5_credential
         {
           attribute id { uuid }
         }

    modify_target_esxi_credential
     = element esxi_credential
         {
           attribute id { uuid }
         }

    modify_target_snmp_credential
     = element snmp_credential
         {
           attribute id { uuid }
         }

    modify_target_ssh_lsc_credential
     = element ssh_lsc_credential
         {
           attribute id { uuid }
         }

    modify_target_smb_lsc_credential
     = element smb_lsc_credential
         {
           attribute id { uuid }
         }

    modify_target_esxi_lsc_credential
     = element esxi_lsc_credential
         {
           attribute id { uuid }
         }

    modify_target_port_list
     = element port_list
         {
           attribute id { uuid }
         }

    modify_target_alive_tests
     = element alive_tests
         {
           modify_target_alive_tests_alive_test*
         }

    modify_target_alive_tests_alive_test
     = element alive_test
         {
           alive_test
         }

    modify_target_reverse_lookup_only
     = element reverse_lookup_only
         {
           boolean
         }

    modify_target_reverse_lookup_unify
     = element reverse_lookup_unify
         {
           boolean
         }

    modify_target_allow_simultaneous_ips
     = element allow_simultaneous_ips
         {
           boolean
         }

Response

    modify_target_response
     = element modify_target_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.115.3 Example: Modify the name of a target

Client

     <modify_target target_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <name>Upstairs Lab</name>
     </modify_target>

Manager

     <modify_target_response status="200"
                             status_text="OK"/>

### 7.116 Command `modify_task`

In short: Modify an existing task.

The client uses the modify_task command to change an existing task.

#### 7.116.1 Structure

- Command
  - @task_id (uuid) ID of task to modify.
  - One of
    - <comment>
      The comment on the task.
    - <alert> *
      Task alert.
      - @id (uuid)
    - <config>
      The scan configuration used by the task.
      - @id (uuid)
    - <name>
      The name of the task.
    - <observers>
      Users allowed to observe this task.
    - <preferences>
      - <preference> *
        - <scanner_name>
          Compact name of preference, from scanner.
        - <value>
    - <schedule>
      Task schedule.
      - @id (uuid)
    - <schedule_periods>
      A limit to the number of times the task will be scheduled, or 0 for no limit.
    - <scanner>
      Task scanner.
      - @id (uuid)
    - <target>
      The hosts scanned by the task.
      - @id (uuid)
    - <file>
      File to attach to task.
      - @name (text)
      - @action ("update" or "remove")
- Response
  - @status (status)
  - @status_text (text)

#### 7.116.2 RNC

Command

    modify_task
     = element modify_task
         {
           attribute task_id { uuid }
           & ( modify_task_comment
               | modify_task_alert*
               | modify_task_config
               | modify_task_name
               | modify_task_observers
               | modify_task_preferences
               | modify_task_schedule
               | modify_task_schedule_periods
               | modify_task_scanner
               | modify_task_target
               | modify_task_file )
         }

    modify_task_comment
     = element comment
         {
           text
         }

    modify_task_alert
     = element alert
         {
           attribute id { uuid }
         }

    modify_task_config
     = element config
         {
           attribute id { uuid }
         }

    modify_task_name
     = element name
         {
           name
         }

    modify_task_observers
     = element observers
         {
           user_list
         }

    modify_task_preferences
     = element preferences
         {
           modify_task_preferences_preference*
         }

    modify_task_preferences_preference
     = element preference
         {
           modify_task_preferences_preference_scanner_name
           & modify_task_preferences_preference_value
         }

    modify_task_preferences_preference_scanner_name
     = element scanner_name
         {
           text
         }

    modify_task_preferences_preference_value
     = element value
         {
           text
         }

    modify_task_schedule
     = element schedule
         {
           attribute id { uuid }
         }

    modify_task_schedule_periods
     = element schedule_periods
         {
           integer
         }

    modify_task_scanner
     = element scanner
         {
           attribute id { uuid }
         }

    modify_task_target
     = element target
         {
           attribute id { uuid }
         }

    modify_task_file
     = element file
         {
           text # RNC limitation: base64
           & attribute name { text }
           & attribute action { xsd:token { pattern = "update|remove" } }
         }

Response

    modify_task_response
     = element modify_task_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.116.3 Example: Modify a task comment

Client

     <modify_task task_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <comment>Monthly scan of the webserver.</comment>
     </modify_task>

Manager

     <modify_task_response status="200"
                           status_text="OK"/>

### 7.117 Command `modify_ticket`

In short: Modify an existing ticket.

The client uses the modify_ticket command to change an existing ticket.

#### 7.117.1 Structure

- Command
  - @ticket_id (uuid) ID of ticket to modify.
  - <comment> ?
    Comment on ticket.
  - <status> ?
    Ticket status.
  - <open_note> ?
    Note, required when status is Open.
  - <fixed_note> ?
    Note, required when status is Fixed.
  - <closed_note> ?
    Note, required when status is Closed.
  - <assigned_to> ?
    - <user>
      The user the ticket is assigned to.
      - @id (uuid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.117.2 RNC

Command

    modify_ticket
     = element modify_ticket
         {
           attribute ticket_id { uuid }
           & modify_ticket_comment?
           & modify_ticket_status?
           & modify_ticket_open_note?
           & modify_ticket_fixed_note?
           & modify_ticket_closed_note?
           & modify_ticket_assigned_to?
         }

    modify_ticket_comment
     = element comment
         {
           text
         }

    modify_ticket_status
     = element status
         {
           ticket_status
         }

    modify_ticket_open_note
     = element open_note
         {
           text
         }

    modify_ticket_fixed_note
     = element fixed_note
         {
           text
         }

    modify_ticket_closed_note
     = element closed_note
         {
           text
         }

    modify_ticket_assigned_to
     = element assigned_to
         {
           modify_ticket_assigned_to_user
         }

    modify_ticket_assigned_to_user
     = element user
         {
           attribute id { uuid }
         }

Response

    modify_ticket_response
     = element modify_ticket_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.117.3 Example: Modify the status of a ticket

Client

     <modify_ticket ticket_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6">
       <status>Closed</status>
       <closed_note>Resolved with January update</closed_note>
     </modify_ticket>

Manager

     <modify_ticket_response status="200"
                             status_text="OK"/>

### 7.118 Command `modify_tls_certificate`

In short: Create a TLS certificate.

The client uses the modify_tls_certificate command to modify an existing TLS certificate.

#### 7.118.1 Structure

- Command
  - @tls_certificate_id (uuid)
  - <comment> ?
    A comment on the TLS certificate.
  - <copy> ?
    The UUID of an existing TLS certificate.
  - <name> ?
    The name of the certificate, defaulting to the MD5 fingerprint.
  - <trust> ?
    Whether the certificate is trusted.
- Response
  - @status (status)
  - @status_text (text)

#### 7.118.2 RNC

Command

    modify_tls_certificate
     = element modify_tls_certificate
         {
           attribute tls_certificate_id { uuid }
           & modify_tls_certificate_comment?
           & modify_tls_certificate_copy?
           & modify_tls_certificate_name?
           & modify_tls_certificate_trust?
         }

    modify_tls_certificate_comment
     = element comment
         {
           text
         }

    modify_tls_certificate_copy
     = element copy
         {
           uuid
         }

    modify_tls_certificate_name
     = element name
         {
           text
         }

    modify_tls_certificate_trust
     = element trust
         {
           boolean
         }

Response

    modify_tls_certificate_response
     = element modify_tls_certificate_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.118.3 Example: Modify the name of a TLS certificate

Client

     <modify_tls_certificate tls_certificate_id="8a925978-59d0-494b-a837-40b271569727">
       <name>Renamed Example Certificate</name>
     </modify_tls_certificate>

Manager

     <modify_tls_certificate_response status="200"
                                      status_text="OK"/>

### 7.119 Command `modify_user`

In short: Modify an existing user.

The client uses the modify_user command to change an existing user.

#### 7.119.1 Structure

- Command
  - @user_id (uuid) ID of the user to be modified. Overrides NAME element.
  - <name>
    The name of the user to be modified.
  - <new_name> ?
    The new name for the user.
  - <comment> ?
    Comment for the user.
  - <password> ?
    The password for the user.
    - @modify (boolean) If 0 then password is left alone, otherwise password is modified.
  - <role> *
    A role of the user.
    - @id (uuid)
  - <hosts> ?
    User access rules: a comma-separated list of hosts.
    - @allow (boolean) If 1, allow only listed, otherwise forbid listed.
    More Details
    User is allowed to access any host if this element is missing.
  - <sources> ?
    Authentication source for this user (if omitted, no changes).
    - <source> ?
      Authentication source.
      One of:
      file
      ldap_connect
      radius_connect
    More Details
    'file' means to store the user in the database.
    The element is called SOURCES for historic reasons. Only one SOURCE is allowed.
- Response
  - @status (status)
  - @status_text (text)

#### 7.119.2 RNC

Command

    modify_user
     = element modify_user
         {
           attribute user_id { uuid }
           & modify_user_name
           & modify_user_new_name?
           & modify_user_comment?
           & modify_user_password?
           & modify_user_role*
           & modify_user_hosts?
           & modify_user_sources?
         }

    modify_user_name
     = element name
         {
           text
         }

    modify_user_new_name
     = element new_name
         {
           text
         }

    modify_user_comment
     = element comment
         {
           text
         }

    modify_user_hosts
     = element hosts
         {
           text
           & attribute allow { boolean }?
         }

    modify_user_password
     = element password
         {
           text
           & attribute modify { boolean }?
         }

    modify_user_role
     = element role
         {
           attribute id { uuid }
         }

    modify_user_sources
     = element sources
         {
           modify_user_sources_source?
         }

    modify_user_sources_source
     = element source
         {
           xsd:token { pattern = "file|ldap_connect|radius_connect" }
         }

Response

    modify_user_response
     = element modify_user_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.119.3 Example: Modify a user

Client

     <modify_user>
       <name>Foobar</name>
       <password modify="0"/>
       <role id="8d453140-b74d-11e2-b0be-406186ea4fc5"/>
       <hosts allow="0"/>
     </modify_user>

Manager

     <modify_user_response status="200"
                           status_text="OK"/>

### 7.120 Command `move_task`

In short: Moves an existing task to another slave scanner or the master.

If a scan is running, this command will stop the task and resume it after reassigning to the new scanner or master. Note that in this case, the command will wait until the task has been requested to resume.

#### 7.120.1 Structure

- Command
  - @task_id (uuid) ID of task to reassign.
  - @slave_id (uuid) ID of slave to reassign to, empty for master.
- Response
  - @status (status)
  - @status_text (text)

#### 7.120.2 RNC

Command

    move_task
     = element move_task
         {
           attribute task_id { uuid }
           & attribute slave_id { uuid }
         }

Response

    move_task_response
     = element move_task_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.120.3 Example: Move a task to a slave

Client

     <move_task task_id="254cd3ef-bbe1-4d58-859d-21b8d0c046c6"
                slave_id="97390ade-e075-11df-9973-002264764cea"/>

Manager

     <move_task_response status="200"
                         status_text="OK"/>

### 7.121 Command `restore`

In short: Restore a resource.

The client uses the restore command to restore a resource from the trashcan.

#### 7.121.1 Structure

- Command
  - @id (uuid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.121.2 RNC

Command

    restore
     = element restore
         {
           attribute id { uuid }
         }

Response

    restore_response
     = element restore_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.121.3 Example: Restore a target

Client

     <restore id="97390ade-e075-11df-9973-002264764cea"/>

Manager

     <restore_response status="200"
                       status_text="OK"/>

### 7.122 Command `resume_task`

In short: Resume a task.

The client uses the resume_task command to manually resume a stopped task.

#### 7.122.1 Structure

- Command
  - @task_id (uuid)
- Response
  - @status (status)
  - @status_text (text)
  - <report_id>
    The id of the report.

#### 7.122.2 RNC

Command

    resume_task
     = element resume_task
         {
           attribute task_id { uuid }
         }

Response

    resume_task_response
     = element resume_task_response
         {
           attribute status { status }
           & attribute status_text { text }
           & resume_task_response_report_id
         }

    resume_task_response_report_id
     = element report_id
         {
           uuid
         }

#### 7.122.3 Example: Resume a task

Client

     <resume_task task_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <resume_task_response status="200"
                           status_text="OK">
       <report_id>330ee785-c2c0-4d4c-ab96-725142c9b789</report_id>
     </resume_task_response>

### 7.123 Command `run_wizard`

In short: Run a wizard.

The client uses the run_wizard command to run a wizard.

#### 7.123.1 Structure

- Command
  - <mode> ?
    The mode to run the wizard in.
  - <name>
    The name of the wizard.
  - <params>
    Parameters for the wizard.
    - <param> *
      - <name>
        Parameter name.
      - <value>
        Value of parameter.
  - @read_only (boolean) Whether to only run wizards marked as read only.
- Response
  - @status (status)
  - @status_text (text)
  - <response>
    Contains the response of the command run in the last step.

#### 7.123.2 RNC

Command

    run_wizard
     = element run_wizard
         {
           run_wizard_mode?
           & run_wizard_name
           & run_wizard_params
           & attribute read_only { boolean }?
         }

    run_wizard_mode
     = element mode
         {
           text
         }

    run_wizard_name
     = element name
         {
           name
         }

    run_wizard_params
     = element params
         {
           run_wizard_params_param*
         }

    run_wizard_params_param
     = element param
         {
           run_wizard_params_param_name
           & run_wizard_params_param_value
         }

    run_wizard_params_param_name
     = element name
         {
           text
         }

    run_wizard_params_param_value
     = element value
         {
           text
         }

Response

    run_wizard_response
     = element run_wizard_response
         {
           attribute status { status }
           & attribute status_text { text }
           & run_wizard_response_response
         }

    run_wizard_response_response
     = element response
         {
           ""
         }

#### 7.123.3 Example: Run the Quick Start wizard to scan localhost

Client

     <run_wizard>
       <name>quick_first_scan</name>
       <params>
         <param>
           <name>hosts</name>
           <value>localhost</value>
         </param>
       </params>
     </run_wizard>

Manager

     <run_wizard_response status="202"
                          status_text="OK, request submitted">
       <response>
         <start_task_response status="202"
                              status_text="OK, request submitted">
           <report_id>a06d21f7-8e2f-4d7f-bceb-1df852d8b37d</report_id>
         </start_task_response>
       </response>
     </run_wizard_response>

### 7.124 Command `start_task`

In short: Manually start an existing task.

The client uses the start_task command to manually start an existing task.

#### 7.124.1 Structure

- Command
  - @task_id (uuid)
- Response
  - @status (status)
  - @status_text (text)
  - <report_id>
    The id of the report.

#### 7.124.2 RNC

Command

    start_task
     = element start_task
         {
           attribute task_id { uuid }
         }

Response

    start_task_response
     = element start_task_response
         {
           attribute status { status }
           & attribute status_text { text }
           & start_task_response_report_id
         }

    start_task_response_report_id
     = element report_id
         {
           uuid
         }

#### 7.124.3 Example: Start a task

Client

     <start_task task_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <start_task_response status="200"
                          status_text="OK">
       <report_id>330ee785-c2c0-4d4c-ab96-725142c9b789</report_id>
     </start_task_response>

### 7.125 Command `stop_task`

In short: Stop a running task.

The client uses the stop_task command to manually stop a running task.

#### 7.125.1 Structure

- Command
  - @task_id (uuid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.125.2 RNC

Command

    stop_task
     = element stop_task
         {
           attribute task_id { uuid }
         }

Response

    stop_task_response
     = element stop_task_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.125.3 Example: Stop a running task

Client

     <stop_task task_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <stop_task_response status="200"
                         status_text="OK"/>

### 7.126 Command `sync_config`

In short: Synchronize a config with a scanner.

The client uses the "sync_config" command to request an OSP config synchronization with a scanner, adding new parameters and removing old ones.

#### 7.126.1 Structure

- Command
  Empty single element.
- Response
  - @status (status)
  - @status_text (text)

#### 7.126.2 RNC

Command

    sync_config
     = element sync_config
         {
           ""
         }

Response

    sync_config_response
     = element sync_config_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.126.3 Example: Sync the config

Client

     <sync_config/>

Manager

     <sync_config_response status="202"
                           status_text="OK, request submitted"/>

### 7.127 Command `test_alert`

In short: Run an alert.

The client uses the test_alert command to invoke a test run of an alert.

#### 7.127.1 Structure

- Command
  - @alert_id (uuid)
- Response
  - @status (status)
  - @status_text (text)
  - <status_details> ?
    .

#### 7.127.2 RNC

Command

    test_alert
     = element test_alert
         {
           attribute alert_id { uuid }
         }

Response

    test_alert_response
     = element test_alert_response
         {
           attribute status { status }
           & attribute status_text { text }
           & status_details?
         }

#### 7.127.3 Example: Test an alert

Client

     <test_alert alert_id="97390ade-e075-11df-9973-002264764cea"/>

Manager

     <test_alert_response status="200"
                          status_text="OK"/>

### 7.128 Command `verify_report_format`

In short: Verify a report format.

The client uses the verify_report_format command to verify the trust level of an existing report format.

The Manager checks whether the signature of the report format currently matches the report format. This includes the script and files used to generate reports of this format. The Manager searches for the signature first in the feed, then in the report format itself.

#### 7.128.1 Structure

- Command
  - @report_format_id (uuid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.128.2 RNC

Command

    verify_report_format
     = element verify_report_format
         {
           attribute report_format_id { uuid }
         }

Response

    verify_report_format_response
     = element verify_report_format_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.128.3 Example: Verify a report format

Client

     <verify_report_format report_format_id="267a3405-e84a-47da-97b2-5fa0d2e8995e"/>

Manager

     <verify_report_format_response status="200"
                                    status_text="OK"/>

### 7.129 Command `verify_scanner`

In short: Verify a scanner.

The client uses the verify_scanner command to verify whether it is possible to connect to an existing scanner.

#### 7.129.1 Structure

- Command
  - @scanner_id (uuid)
- Response
  - @status (status)
  - @status_text (text)

#### 7.129.2 RNC

Command

    verify_scanner
     = element verify_scanner
         {
           attribute scanner_id { uuid }
         }

Response

    verify_scanner_response
     = element verify_scanner_response
         {
           attribute status { status }
           & attribute status_text { text }
         }

#### 7.129.3 Example: Verify a scanner

Client

     <verify_scanner scanner_id="6acd0832-df90-11e4-b9d5-28d24461215b"/>

Manager

     <verify_scanner_response status="200"
                              status_text="OK">
       <version>OTP/2.0</version>
     </verify_scanner_response>

## 8 Compatibility Changes in Version 22.7

### 8.1 Change in `GET_REPORTS, GET_TASKS`

In short: Include the CVSS3 rating instead of the deprecated CVSS2 rating.

The commands GET_REPORTS and GET_TASKS as well as the element report and the data type levels now include the CVSS3 rating.

This file was automatically generated.