> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/xsiam-api/netscan/models.md).

# Models

## The AssetGroup object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"AssetGroup":{"type":"object","required":["id"],"properties":{"id":{"type":"integer"},"name":{"type":"string"},"count":{"type":"integer"}},"additionalProperties":false}}}}
```

## The ScanTime object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"ScanTime":{"type":"object","description":"Time of day specification for scan scheduling","required":["hour","minute","second"],"properties":{"hour":{"type":"integer","description":"Hour of the day (0-23)","minimum":0,"maximum":23},"minute":{"type":"integer","description":"Minute of the hour (0-59)","minimum":0,"maximum":59},"second":{"type":"integer","description":"Second of the minute (0-59)","minimum":0,"maximum":59}}}}}}
```

## The FieldAndMessage object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"FieldAndMessage":{"type":"object","description":"Field-level error detail","properties":{"field":{"type":"string","description":"Name of the field that caused the error"},"message":{"type":"string","description":"Error message for the field"}}}}}}
```

## The ErrorMetadata object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"ErrorMetadata":{"type":"object","description":"Additional error context with field-level details","properties":{"err_extra":{"type":"array","items":{"$ref":"#/components/schemas/FieldAndMessage"},"description":"List of field-level error details"}}},"FieldAndMessage":{"type":"object","description":"Field-level error detail","properties":{"field":{"type":"string","description":"Name of the field that caused the error"},"message":{"type":"string","description":"Error message for the field"}}}}}}
```

## The ErrorResponseBody object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"ErrorResponseBody":{"type":"object","description":"Standard error response returned for all error status codes","required":["err_msg"],"properties":{"err_msg":{"type":"string","description":"Human-readable error message"},"metadata":{"$ref":"#/components/schemas/ErrorMetadata"}}},"ErrorMetadata":{"type":"object","description":"Additional error context with field-level details","properties":{"err_extra":{"type":"array","items":{"$ref":"#/components/schemas/FieldAndMessage"},"description":"List of field-level error details"}}},"FieldAndMessage":{"type":"object","description":"Field-level error detail","properties":{"field":{"type":"string","description":"Name of the field that caused the error"},"message":{"type":"string","description":"Error message for the field"}}}}}}
```

## The ScanSettingsPayload object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"ScanSettingsPayload":{"type":"object","description":"Scan engine settings controlling port scanning, timeouts, and host discovery behavior","required":["port_list_id","scan_ports"],"properties":{"port_list_id":{"type":"integer","description":"Port list ID to use","minimum":1},"scan_ports":{"type":"array","items":{"type":"object"},"description":"Custom list of ports to scan (overrides `port_list_id` if provided)"},"auth_port_ssh":{"type":"integer","description":"SSH authentication port","minimum":1,"maximum":65535},"disable_cgi_cache":{"type":"string","description":"Disable CGI cache (`0` = enabled, `1` = disabled)","enum":["0","1"]},"plugins_timeout":{"type":"integer","description":"Plugin timeout in minutes","minimum":1},"checks_read_timeout":{"type":"integer","description":"Checks read timeout in minutes","minimum":1},"max_hosts":{"type":"integer","description":"Maximum number of hosts to scan simultaneously","minimum":1},"max_checks":{"type":"integer","description":"Maximum number of checks per host","minimum":1},"scanner_plugins_timeout":{"type":"integer","description":"Scanner plugins timeout in seconds","minimum":1},"timeout_retry":{"type":"integer","description":"Number of timeout retries","minimum":0},"open_sock_max_attempts":{"type":"integer","description":"Maximum attempts to open socket","minimum":1},"non_simult_ports":{"type":"string","description":"Ports that should not be scanned simultaneously (comma-separated)"},"strict_unauthenticated":{"type":"string","description":"Strict unauthenticated mode (`0` = disabled, `1` = enabled)","enum":["0","1"]},"optimize_test":{"type":"string","description":"Optimize test execution (`0` = disabled, `1` = enabled)","enum":["0","1"]},"expand_vhosts":{"type":"string","description":"Expand virtual hosts (`0` = disabled, `1` = enabled)","enum":["0","1"]},"exclude_fragile_devices":{"type":"string","description":"Exclude fragile devices (`0` = disabled, `1` = enabled)","enum":["0","1"]},"exclude_printers":{"type":"string","description":"Exclude printers (`0` = disabled, `1` = enabled)","enum":["0","1"]},"safe_checks":{"type":"string","description":"Enable safe checks (`0` = disabled, `1` = enabled)","enum":["0","1"]},"disable_win_cmd_exec":{"type":"string","description":"Disable Windows command execution (`0` = disabled, `1` = enabled)","enum":["0","1"]},"disable_wmi_search":{"type":"string","description":"Disable WMI search (`0` = disabled, `1` = enabled)","enum":["0","1"]},"alive_test_methods":{"type":"array","items":{"type":"string","enum":["arp","icmp","tcp_ack","tcp_syn","consider_alive"]},"description":"Methods to test if hosts are alive"},"alive_test_ports":{"type":"string","description":"Ports to use for alive testing (comma-separated or ranges)"}}}}}}
```

## The ScanDefinitionPayload object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"ScanDefinitionPayload":{"description":"Complete scan definition including scan settings, targets, schedule, and credentials","allOf":[{"$ref":"#/components/schemas/ScanSettingsPayload"},{"type":"object","required":["vt_config_id","name","description","network_scanner_ids","network","credential_ids","schedule_cadence","schedule_days","schedule_dates","schedule_start_date","schedule_time","schedule_quiet_hours","schedule_timezone","override_target_exclusions","target_ids","targets","excluded_targets","enable_report"],"properties":{"definition_id":{"type":"integer","description":"ID of existing definition (for updates)"},"vt_config_id":{"type":"integer","description":"Vulnerability test configuration template ID","minimum":1},"name":{"type":"string","description":"Name of the scan definition","minLength":1,"maxLength":100},"description":{"type":"string","description":"Description of the scan definition","maxLength":500},"network_scanner_ids":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Array of network scanner UUIDs to use for this scan","minItems":1},"network":{"type":"integer","description":"Network ID","minimum":1},"credential_ids":{"type":"array","items":{"type":"integer"},"description":"Array of credential IDs for authenticated scanning"},"schedule_cadence":{"type":"string","description":"Schedule cadence frequency","enum":["DAILY","WEEKLY","MONTHLY","ONCE"]},"schedule_days":{"type":"integer","description":"Scheduled days as bitmask (127 = all days)","minimum":0,"maximum":127},"schedule_dates":{"type":"array","items":{"type":"integer"},"description":"Array of scheduled dates (for monthly cadence)"},"schedule_start_date":{"type":"integer","format":"int64","description":"Schedule start date as Unix timestamp in milliseconds","minimum":0},"schedule_time":{"$ref":"#/components/schemas/ScanTime"},"schedule_quiet_hours":{"type":"array","items":{"type":"object","required":["start","end"],"properties":{"start":{"$ref":"#/components/schemas/ScanTime"},"end":{"$ref":"#/components/schemas/ScanTime"}}},"description":"Array of quiet hours periods when scanning should not run"},"schedule_timezone":{"type":"string","description":"Timezone for scheduling (IANA timezone format)"},"override_target_exclusions":{"type":"boolean","description":"Whether to override global target exclusions"},"target_ids":{"type":"array","items":{"type":"integer"},"description":"Array of target group IDs"},"targets":{"type":"array","items":{"type":"string"},"description":"Array of target hosts or IP ranges (CIDR notation)"},"excluded_targets":{"type":"array","items":{"type":"string"},"description":"Array of excluded targets"},"enable_report":{"type":"boolean","description":"Whether to enable scan reporting"},"asset_groups":{"type":"array","items":{"$ref":"#/components/schemas/AssetGroup"}}}}]},"ScanSettingsPayload":{"type":"object","description":"Scan engine settings controlling port scanning, timeouts, and host discovery behavior","required":["port_list_id","scan_ports"],"properties":{"port_list_id":{"type":"integer","description":"Port list ID to use","minimum":1},"scan_ports":{"type":"array","items":{"type":"object"},"description":"Custom list of ports to scan (overrides `port_list_id` if provided)"},"auth_port_ssh":{"type":"integer","description":"SSH authentication port","minimum":1,"maximum":65535},"disable_cgi_cache":{"type":"string","description":"Disable CGI cache (`0` = enabled, `1` = disabled)","enum":["0","1"]},"plugins_timeout":{"type":"integer","description":"Plugin timeout in minutes","minimum":1},"checks_read_timeout":{"type":"integer","description":"Checks read timeout in minutes","minimum":1},"max_hosts":{"type":"integer","description":"Maximum number of hosts to scan simultaneously","minimum":1},"max_checks":{"type":"integer","description":"Maximum number of checks per host","minimum":1},"scanner_plugins_timeout":{"type":"integer","description":"Scanner plugins timeout in seconds","minimum":1},"timeout_retry":{"type":"integer","description":"Number of timeout retries","minimum":0},"open_sock_max_attempts":{"type":"integer","description":"Maximum attempts to open socket","minimum":1},"non_simult_ports":{"type":"string","description":"Ports that should not be scanned simultaneously (comma-separated)"},"strict_unauthenticated":{"type":"string","description":"Strict unauthenticated mode (`0` = disabled, `1` = enabled)","enum":["0","1"]},"optimize_test":{"type":"string","description":"Optimize test execution (`0` = disabled, `1` = enabled)","enum":["0","1"]},"expand_vhosts":{"type":"string","description":"Expand virtual hosts (`0` = disabled, `1` = enabled)","enum":["0","1"]},"exclude_fragile_devices":{"type":"string","description":"Exclude fragile devices (`0` = disabled, `1` = enabled)","enum":["0","1"]},"exclude_printers":{"type":"string","description":"Exclude printers (`0` = disabled, `1` = enabled)","enum":["0","1"]},"safe_checks":{"type":"string","description":"Enable safe checks (`0` = disabled, `1` = enabled)","enum":["0","1"]},"disable_win_cmd_exec":{"type":"string","description":"Disable Windows command execution (`0` = disabled, `1` = enabled)","enum":["0","1"]},"disable_wmi_search":{"type":"string","description":"Disable WMI search (`0` = disabled, `1` = enabled)","enum":["0","1"]},"alive_test_methods":{"type":"array","items":{"type":"string","enum":["arp","icmp","tcp_ack","tcp_syn","consider_alive"]},"description":"Methods to test if hosts are alive"},"alive_test_ports":{"type":"string","description":"Ports to use for alive testing (comma-separated or ranges)"}}},"ScanTime":{"type":"object","description":"Time of day specification for scan scheduling","required":["hour","minute","second"],"properties":{"hour":{"type":"integer","description":"Hour of the day (0-23)","minimum":0,"maximum":23},"minute":{"type":"integer","description":"Minute of the hour (0-59)","minimum":0,"maximum":59},"second":{"type":"integer","description":"Second of the minute (0-59)","minimum":0,"maximum":59}}},"AssetGroup":{"type":"object","required":["id"],"properties":{"id":{"type":"integer"},"name":{"type":"string"},"count":{"type":"integer"}},"additionalProperties":false}}}}
```

## The ScanActionResponse object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"ScanActionResponse":{"type":"object","description":"Response returned after a scan action (launch, pause, resume, or abort)","required":["DATA"],"properties":{"DATA":{"type":"string","description":"Action result message"}}}}}}
```

## The ScanStatusResponse object

```json
{"openapi":"3.0.3","info":{"title":"NetScan Public API","version":"1.0.0"},"components":{"schemas":{"ScanStatusResponse":{"type":"object","description":"Response containing the current status of a scan run","required":["DATA"],"properties":{"DATA":{"type":"string","description":"Scan status message"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://cortex-docs.paloaltonetworks.com/xsiam-api/netscan/models.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
