### ----------------------------------------------------
### -- Zap
### -- Licenses: Artistic-2.0
### -- Authors: Khalid Elboray
### -- File: README.md
### ----------------------------------------------------
### -- Chunk 2 of 3
```perl6
method setOptionHandleODataParametersVisited(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionHandleParameters

```perl6
method setOptionHandleParameters(
    :$String!
) returns Mu
```

No Doc

### method setOptionMaxChildren

```perl6
method setOptionMaxChildren(
    :$Integer!
) returns Mu
```

Sets the maximum number of child nodes (per node) that can be crawled, 0 means no limit.

### method setOptionMaxDepth

```perl6
method setOptionMaxDepth(
    :$Integer!
) returns Mu
```

Sets the maximum depth the spider can crawl, 0 for unlimited depth.

### method setOptionMaxDuration

```perl6
method setOptionMaxDuration(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionMaxParseSizeBytes

```perl6
method setOptionMaxParseSizeBytes(
    :$Integer!
) returns Mu
```

Sets the maximum size, in bytes, that a response might have to be parsed. This allows the spider to skip big responses/files.

### method setOptionMaxScansInUI

```perl6
method setOptionMaxScansInUI(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionParseComments

```perl6
method setOptionParseComments(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionParseGit

```perl6
method setOptionParseGit(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionParseRobotsTxt

```perl6
method setOptionParseRobotsTxt(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionParseSVNEntries

```perl6
method setOptionParseSVNEntries(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionParseSitemapXml

```perl6
method setOptionParseSitemapXml(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionPostForm

```perl6
method setOptionPostForm(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionProcessForm

```perl6
method setOptionProcessForm(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionRequestWaitTime

```perl6
method setOptionRequestWaitTime(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionScopeString

```perl6
method setOptionScopeString(
    :$String!
) returns Mu
```

Use actions [add|modify|remove]DomainAlwaysInScope instead.

### method setOptionSendRefererHeader

```perl6
method setOptionSendRefererHeader(
    :$Boolean!
) returns Mu
```

Sets whether or not the 'Referer' header should be sent while spidering.

### method setOptionShowAdvancedDialog

```perl6
method setOptionShowAdvancedDialog(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionSkipURLString

```perl6
method setOptionSkipURLString(
    :$String!
) returns Mu
```

No Doc

### method setOptionThreadCount

```perl6
method setOptionThreadCount(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionUserAgent

```perl6
method setOptionUserAgent(
    :$String!
) returns Mu
```

No Doc

### method stop

```perl6
method stop(
    :$scanId
) returns Mu
```

No Doc

### method stopAllScans

```perl6
method stopAllScans() returns Mu
```

No Doc

class Zap::Selenium
-------------------

class `Zap::Selenium` Methods

### method setOptionChromeDriverPath

```perl6
method setOptionChromeDriverPath(
    :$String!
) returns Mu
```

Sets the current path to ChromeDriver

### method setOptionFirefoxBinaryPath

```perl6
method setOptionFirefoxBinaryPath(
    :$String!
) returns Mu
```

Sets the current path to Firefox binary

### method setOptionFirefoxDriverPath

```perl6
method setOptionFirefoxDriverPath(
    :$String!
) returns Mu
```

Sets the current path to Firefox driver (geckodriver)

### method setOptionIeDriverPath

```perl6
method setOptionIeDriverPath(
    :$String!
) returns Mu
```

No Doc

### method setOptionPhantomJsBinaryPath

```perl6
method setOptionPhantomJsBinaryPath(
    :$String!
) returns Mu
```

Sets the current path to PhantomJS binary

### method optionFirefoxDriverPath

```perl6
method optionFirefoxDriverPath() returns Mu
```

Returns the current path to Firefox driver (geckodriver)

### method optionIeDriverPath

```perl6
method optionIeDriverPath() returns Mu
```

No Doc

### method optionPhantomJsBinaryPath

```perl6
method optionPhantomJsBinaryPath() returns Mu
```

Returns the current path to PhantomJS binary

class Zap::Httpsessions
-----------------------

class `Zap::Httpsessions` Methods

### method addDefaultSessionToken

```perl6
method addDefaultSessionToken(
    :$sessionToken!,
    :$tokenEnabled
) returns Mu
```

Adds a default session token with the given name and enabled state.

### method addSessionToken

```perl6
method addSessionToken(
    :$site!,
    :$sessionToken!
) returns Mu
```

Adds the session token to the given site.

### method createEmptySession

```perl6
method createEmptySession(
    :$site!,
    :$session
) returns Mu
```

Creates an empty session for the given site. Optionally with the given name.

### method removeDefaultSessionToken

```perl6
method removeDefaultSessionToken(
    :$sessionToken!
) returns Mu
```

Removes the default session token with the given name.

### method removeSession

```perl6
method removeSession(
    :$site!,
    :$session!
) returns Mu
```

Removes the session from the given site.

### method removeSessionToken

```perl6
method removeSessionToken(
    :$site!,
    :$sessionToken!
) returns Mu
```

Removes the session token from the given site.

### method renameSession

```perl6
method renameSession(
    :$site!,
    :$oldSessionName!,
    :$newSessionName!
) returns Mu
```

Renames the session of the given site.

### method setActiveSession

```perl6
method setActiveSession(
    :$site!,
    :$session!
) returns Mu
```

Sets the given session as active for the given site.

### method setDefaultSessionTokenEnabled

```perl6
method setDefaultSessionTokenEnabled(
    :$sessionToken!,
    :$tokenEnabled!
) returns Mu
```

Sets whether or not the default session token with the given name is enabled.

### method setSessionTokenValue

```perl6
method setSessionTokenValue(
    :$site!,
    :$session!,
    :$sessionToken!,
    :$tokenValue!
) returns Mu
```

Sets the value of the session token of the given session for the given site.

### method unsetActiveSession

```perl6
method unsetActiveSession(
    :$site!
) returns Mu
```

Unsets the active session of the given site.

### method sessionTokens

```perl6
method sessionTokens(
    :$site!
) returns Mu
```

Gets the names of the session tokens for the given site.

### method sessions

```perl6
method sessions(
    :$site!,
    :$session
) returns Mu
```

Gets the sessions for the given site. Optionally returning just the session with the given name.

### method sites

```perl6
method sites() returns Mu
```

Gets all of the sites that have sessions.

class Zap::Localproxies
-----------------------

class `Zap::Localproxies` Methods

### method removeAdditionalProxy

```perl6
method removeAdditionalProxy(
    :$address!,
    :$port!
) returns Mu
```

Removes the additional proxy with the specified address and port.

class Zap::Websocket
--------------------

class `Zap::Websocket` Methods

### method message

```perl6
method message(
    :$channelId!,
    :$messageId!
) returns Mu
```

Returns full details of the message specified by the channelId and messageId

### method messages

```perl6
method messages(
    :$channelId,
    :$start,
    :$count,
    :$payloadPreviewLength
) returns Mu
```

Returns a list of all of the messages that meet the given criteria (all optional), where channelId is a channel identifier, start is the offset to start returning messages from (starting from 0), count is the number of messages to return (default no limit) and payloadPreviewLength is the maximum number bytes to return for the payload contents

### method sendTextMessage

```perl6
method sendTextMessage(
    :$channelId!,
    :$outgoing!,
    :$message!
) returns Mu
```

Sends the specified message on the channel specified by channelId, if outgoing is 'True' then the message will be sent to the server and if it is 'False' then it will be sent to the client

### method setBreakTextMessage

```perl6
method setBreakTextMessage(
    :$message!,
    :$outgoing!
) returns Mu
```

Sets the text message for an intercepted websockets message

class Zap::Authentication
-------------------------

class `Zap::Authentication` Methods

### method setAuthenticationMethod

```perl6
method setAuthenticationMethod(
    :$contextId!,
    :$authMethodName!,
    :$authMethodConfigParams
) returns Mu
```

Sets the authentication method for the context with the given ID.

### method setLoggedInIndicator

```perl6
method setLoggedInIndicator(
    :$contextId!,
    :$loggedInIndicatorRegex!
) returns Mu
```

Sets the logged in indicator for the context with the given ID.

### method setLoggedOutIndicator

```perl6
method setLoggedOutIndicator(
    :$contextId!,
    :$loggedOutIndicatorRegex!
) returns Mu
```

Sets the logged out indicator for the context with the given ID.

### method getLoggedInIndicator

```perl6
method getLoggedInIndicator(
    :$contextId!
) returns Mu
```

Gets the logged in indicator for the context with the given ID.

### method getLoggedOutIndicator

```perl6
method getLoggedOutIndicator(
    :$contextId!
) returns Mu
```

Gets the logged out indicator for the context with the given ID.

### method getSupportedAuthenticationMethods

```perl6
method getSupportedAuthenticationMethods() returns Mu
```

Gets the name of the authentication methods.

class Zap::Pscan
----------------

class `Zap::Pscan` Methods

### method disableAllScanners

```perl6
method disableAllScanners() returns Mu
```

Disables all passive scanners

### method disableAllTags

```perl6
method disableAllTags() returns Mu
```

Disables all passive scan tags.

### method disableScanners

```perl6
method disableScanners(
    :$ids!
) returns Mu
```

Disables all passive scanners with the given IDs (comma separated list of IDs)

### method enableAllScanners

```perl6
method enableAllScanners() returns Mu
```

Enables all passive scanners

### method enableAllTags

```perl6
method enableAllTags() returns Mu
```

Enables all passive scan tags.

### method enableScanners

```perl6
method enableScanners(
    :$ids!
) returns Mu
```

Enables all passive scanners with the given IDs (comma separated list of IDs)

### method setEnabled

```perl6
method setEnabled(
    :$enabled!
) returns Mu
```

Sets whether or not the passive scanning is enabled (Note: the enabled state is not persisted).

### method setMaxAlertsPerRule

```perl6
method setMaxAlertsPerRule(
    :$maxAlerts!
) returns Mu
```

Sets the maximum number of alerts a passive scan rule should raise.

### method setScanOnlyInScope

```perl6
method setScanOnlyInScope(
    :$onlyInScope!
) returns Mu
```

Sets whether or not the passive scan should be performed only on messages that are in scope.

### method setScannerAlertThreshold

```perl6
method setScannerAlertThreshold(
    :$id!,
    :$alertThreshold!
) returns Mu
```

Sets the alert threshold of the passive scanner with the given ID, accepted values for alert threshold: OFF, DEFAULT, LOW, MEDIUM and HIGH

### method recordsToScan

```perl6
method recordsToScan() returns Mu
```

The number of records the passive scanner still has to scan

### method scanOnlyInScope

```perl6
method scanOnlyInScope() returns Mu
```

Tells whether or not the passive scan should be performed only on messages that are in scope.

### method scanners

```perl6
method scanners() returns Mu
```

Lists all passive scanners with its ID, name, enabled state and alert threshold.

class Zap::Sessionmanagement
----------------------------

class `Zap::Sessionmanagement` Methods

### method getSupportedSessionManagementMethods

```perl6
method getSupportedSessionManagementMethods() returns Mu
```

Gets the name of the session management methods.

### method setSessionManagementMethod

```perl6
method setSessionManagementMethod(
    :$contextId!,
    :$methodName!,
    :$methodConfigParams
) returns Mu
```

Sets the session management method for the context with the given ID.

class Zap::Script
-----------------

class `Zap::Script` Methods

### method globalVar

```perl6
method globalVar(
    :$varKey!
) returns Mu
```

Gets the value of the global variable with the given key. Returns an API error (DOES_NOT_EXIST) if no value was previously set.

### method globalVars

```perl6
method globalVars() returns Mu
```

Gets all the global variables (key/value pairs).

### method listEngines

```perl6
method listEngines() returns Mu
```

Lists the script engines available

### method listScripts

```perl6
method listScripts() returns Mu
```

Lists the scripts available, with its engine, name, description, type and error state.

### method listTypes

```perl6
method listTypes() returns Mu
```

Lists the script types available.

### method scriptCustomVar

```perl6
method scriptCustomVar(
    :$scriptName!,
    :$varKey!
) returns Mu
```

Gets the value (string representation) of a custom variable. Returns an API error (DOES_NOT_EXIST) if no script with the given name exists or if no value was previously set.

### method scriptCustomVars

```perl6
method scriptCustomVars(
    :$scriptName!
) returns Mu
```

Gets all the custom variables (key/value pairs, the value is the string representation) of a script. Returns an API error (DOES_NOT_EXIST) if no script with the given name exists.

### method scriptVar

```perl6
method scriptVar(
    :$scriptName!,
    :$varKey!
) returns Mu
```

Gets the value of the variable with the given key for the given script. Returns an API error (DOES_NOT_EXIST) if no script with the given name exists or if no value was previously set.

### method scriptVars

```perl6
method scriptVars(
    :$scriptName!
) returns Mu
```

Gets all the variables (key/value pairs) of the given script. Returns an API error (DOES_NOT_EXIST) if no script with the given name exists.

### method clearGlobalCustomVar

```perl6
method clearGlobalCustomVar(
    :$varKey!
) returns Mu
```

Clears a global custom variable.

### method clearGlobalVar

```perl6
method clearGlobalVar(
    :$varKey!
) returns Mu
```

Clears the global variable with the given key.

### method clearGlobalVars

```perl6
method clearGlobalVars() returns Mu
```

Clears the global variables.

### method clearScriptCustomVar

```perl6
method clearScriptCustomVar(
    :$scriptName!,
    :$varKey!
) returns Mu
```

Clears a script custom variable.

### method clearScriptVar

```perl6
method clearScriptVar(
    :$scriptName!,
    :$varKey!
) returns Mu
```

Clears the variable with the given key of the given script. Returns an API error (DOES_NOT_EXIST) if no script with the given name exists.

### method clearScriptVars

```perl6
method clearScriptVars(
    :$scriptName!
) returns Mu
```

Clears the variables of the given script. Returns an API error (DOES_NOT_EXIST) if no script with the given name exists.

### method disable

```perl6
method disable(
    :$scriptName!
) returns Mu
```

Disables the script with the given name

### method enable

```perl6
method enable(
    :$scriptName!
) returns Mu
```

Enables the script with the given name

### method load

```perl6
method load(
    :$scriptName!,
    :$scriptType!,
    :$scriptEngine!,
    :$fileName!,
    :$scriptDescription,
    :$charset
) returns Mu
```

Loads a script into ZAP from the given local file, with the given name, type and engine, optionally with a description, and a charset name to read the script (the charset name is required if the script is not in UTF-8, for example, in ISO-8859-1).

### method remove

```perl6
method remove(
    :$scriptName!
) returns Mu
```

Removes the script with the given name

### method runStandAloneScript

```perl6
method runStandAloneScript(
    :$scriptName!
) returns Mu
```

Runs the stand alone script with the given name

### method setGlobalVar

```perl6
method setGlobalVar(
    :$varKey!,
    :$varValue
) returns Mu
```

Sets the value of the global variable with the given key.

### method setScriptVar

```perl6
method setScriptVar(
    :$scriptName!,
    :$varKey!,
    :$varValue
) returns Mu
```

Sets the value of the variable with the given key of the given script. Returns an API error (DOES_NOT_EXIST) if no script with the given name exists.

class Zap::Ajaxspider
---------------------

class `Zap::Ajaxspider` Methods

### method optionBrowserId

```perl6
method optionBrowserId() returns Mu
```

No Doc

### method optionClickDefaultElems

```perl6
method optionClickDefaultElems() returns Mu
```

No Doc

### method optionClickElemsOnce

```perl6
method optionClickElemsOnce() returns Mu
```

No Doc

### method optionEventWait

```perl6
method optionEventWait() returns Mu
```

No Doc

### method optionMaxCrawlDepth

```perl6
method optionMaxCrawlDepth() returns Mu
```

No Doc

### method optionMaxCrawlStates

```perl6
method optionMaxCrawlStates() returns Mu
```

No Doc

### method optionMaxDuration

```perl6
method optionMaxDuration() returns Mu
```

No Doc

### method optionNumberOfBrowsers

```perl6
method optionNumberOfBrowsers() returns Mu
```

No Doc

### method optionRandomInputs

```perl6
method optionRandomInputs() returns Mu
```

No Doc

### method optionReloadWait

```perl6
method optionReloadWait() returns Mu
```

No Doc

### method results

```perl6
method results(
    :$start,
    :$count
) returns Mu
```

No Doc

### method status

```perl6
method status() returns Mu
```

No Doc

### method scan

```perl6
method scan(
    :$url,
    :$inScope,
    :$contextName,
    :$subtreeOnly
) returns Mu
```

Runs the spider against the given URL and/or context, optionally, spidering everything in scope. The parameter 'contextName' can be used to constrain the scan to a Context, the option 'in scope' is ignored if a context was also specified. The parameter 'subtreeOnly' allows to restrict the spider under a site's subtree (using the specified 'url').

### method scanAsUser

```perl6
method scanAsUser(
    :$contextName!,
    :$userName!,
    :$url,
    :$subtreeOnly
) returns Mu
```

Runs the spider from the perspective of a User, obtained using the given context name and user name. The parameter 'url' allows to specify the starting point for the spider, otherwise it's used an existing URL from the context (if any). The parameter 'subtreeOnly' allows to restrict the spider under a site's subtree (using the specified 'url').

### method setOptionBrowserId

```perl6
method setOptionBrowserId(
    :$String!
) returns Mu
```

No Doc

### method setOptionClickDefaultElems

```perl6
method setOptionClickDefaultElems(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionClickElemsOnce

```perl6
method setOptionClickElemsOnce(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionEventWait

```perl6
method setOptionEventWait(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionMaxCrawlDepth

```perl6
method setOptionMaxCrawlDepth(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionMaxCrawlStates

```perl6
method setOptionMaxCrawlStates(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionMaxDuration

```perl6
method setOptionMaxDuration(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionNumberOfBrowsers

```perl6
method setOptionNumberOfBrowsers(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionRandomInputs

```perl6
method setOptionRandomInputs(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionReloadWait

```perl6
method setOptionReloadWait(
    :$Integer!
) returns Mu
```

No Doc

### method stop

```perl6
method stop() returns Mu
```

No Doc

class Zap::Core
---------------

class `Zap::Core` Methods

### method alertsSummary

```perl6
method alertsSummary(
    :$baseurl
) returns Mu
```

Gets number of alerts grouped by each risk level, optionally filtering by URL

### method childNodes

```perl6
method childNodes(
    :$url
) returns Mu
```

Gets the child nodes underneath the specified URL in the Sites tree

### method excludedFromProxy

```perl6
method excludedFromProxy() returns Mu
```

Gets the regular expressions, applied to URLs, to exclude from the local proxies.

### method homeDirectory

```perl6
method homeDirectory() returns Mu
```

No Doc

### method hosts

```perl6
method hosts() returns Mu
```

Gets the name of the hosts accessed through/by ZAP

### method message

```perl6
method message(
    :$id!
) returns Mu
```

Gets the HTTP message with the given ID. Returns the ID, request/response headers and bodies, cookies, note, type, RTT, and timestamp.

### method messages

```perl6
method messages(
    :$baseurl,
    :$start,
    :$count
) returns Mu
```

Gets the HTTP messages sent by ZAP, request and response, optionally filtered by URL and paginated with 'start' position and 'count' of messages

### method messagesById

```perl6
method messagesById(
    :$ids!
) returns Mu
```

Gets the HTTP messages with the given IDs.

### method mode

```perl6
method mode() returns Mu
```

Gets the mode

### method numberOfAlerts

```perl6
method numberOfAlerts(
    :$baseurl,
    :$riskId
) returns Mu
```

Gets the number of alerts, optionally filtering by URL or riskId

### method numberOfMessages

```perl6
method numberOfMessages(
    :$baseurl
) returns Mu
```

Gets the number of messages, optionally filtering by URL

### method optionAlertOverridesFilePath

```perl6
method optionAlertOverridesFilePath() returns Mu
```

Gets the path to the file with alert overrides.

### method optionDefaultUserAgent

```perl6
method optionDefaultUserAgent() returns Mu
```

Gets the user agent that ZAP should use when creating HTTP messages (for example, spider messages or CONNECT requests to outgoing proxy).

### method optionDnsTtlSuccessfulQueries

```perl6
method optionDnsTtlSuccessfulQueries() returns Mu
```

Gets the TTL (in seconds) of successful DNS queries.

### method optionHttpState

```perl6
method optionHttpState() returns Mu
```

No Doc

### method optionHttpStateEnabled

```perl6
method optionHttpStateEnabled() returns Mu
```

No Doc

### method optionMaximumAlertInstances

```perl6
method optionMaximumAlertInstances() returns Mu
```

Gets the maximum number of alert instances to include in a report.

### method optionMergeRelatedAlerts

```perl6
method optionMergeRelatedAlerts() returns Mu
```

Gets whether or not related alerts will be merged in any reports generated.

### method optionProxyChainName

```perl6
method optionProxyChainName() returns Mu
```

No Doc

### method optionProxyChainPassword

```perl6
method optionProxyChainPassword() returns Mu
```

No Doc

### method optionProxyChainPort

```perl6
method optionProxyChainPort() returns Mu
```

No Doc

### method optionProxyChainPrompt

```perl6
method optionProxyChainPrompt() returns Mu
```

No Doc

### method optionProxyChainRealm

```perl6
method optionProxyChainRealm() returns Mu
```

No Doc

### method optionProxyChainSkipName

```perl6
method optionProxyChainSkipName() returns Mu
```

Use view proxyChainExcludedDomains instead.

### method optionProxyChainUserName

```perl6
method optionProxyChainUserName() returns Mu
```

No Doc

### method optionProxyExcludedDomains

```perl6
method optionProxyExcludedDomains() returns Mu
```

Use view proxyChainExcludedDomains instead.

### method optionProxyExcludedDomainsEnabled

```perl6
method optionProxyExcludedDomainsEnabled() returns Mu
```

Use view proxyChainExcludedDomains instead.

### method optionSingleCookieRequestHeader

```perl6
method optionSingleCookieRequestHeader() returns Mu
```

No Doc

### method optionTimeoutInSecs

```perl6
method optionTimeoutInSecs() returns Mu
```

Gets the connection time out, in seconds.

### method optionUseProxyChain

```perl6
method optionUseProxyChain() returns Mu
```

No Doc

### method optionUseProxyChainAuth

```perl6
method optionUseProxyChainAuth() returns Mu
```

No Doc

### method proxyChainExcludedDomains

```perl6
method proxyChainExcludedDomains() returns Mu
```

Gets all the domains that are excluded from the outgoing proxy. For each domain the following are shown: the index, the value (domain), if enabled, and if specified as a regex.

### method sessionLocation

```perl6
method sessionLocation() returns Mu
```

Gets the location of the current session file

### method sites

```perl6
method sites() returns Mu
```

Gets the sites accessed through/by ZAP (scheme and domain)

### method urls

```perl6
method urls(
    :$baseurl
) returns Mu
```

Gets the URLs accessed through/by ZAP, optionally filtering by (base) URL.

### method version

```perl6
method version() returns Mu
```

Gets ZAP version

### method zapHomePath

```perl6
method zapHomePath() returns Mu
```

Gets the path to ZAP's home directory.

### method htmlreport

```perl6
method htmlreport() returns Mu
```

Generates a report in HTML format

### method jsonreport

```perl6
method jsonreport() returns Mu
```

Generates a report in JSON format

### method mdreport

```perl6
method mdreport() returns Mu
```

Generates a report in Markdown format

### method messageHar

```perl6
method messageHar(
    :$id!
) returns Mu
```

Gets the message with the given ID in HAR format

### method messagesHar

```perl6
method messagesHar(
    :$baseurl,
    :$start,
    :$count
) returns Mu
```

Gets the HTTP messages sent through/by ZAP, in HAR format, optionally filtered by URL and paginated with 'start' position and 'count' of messages

### method messagesHarById

```perl6
method messagesHarById(
    :$ids!
) returns Mu
```

Gets the HTTP messages with the given IDs, in HAR format.

### method proxypac

```perl6
method proxypac() returns Mu
```

No Doc

### method rootcert

```perl6
method rootcert() returns Mu
```

Gets the Root CA certificate used by the local proxies.

### method sendHarRequest

```perl6
method sendHarRequest(
    :$request!,
    :$followRedirects
) returns Mu
```

Sends the first HAR request entry, optionally following redirections. Returns, in HAR format, the request sent and response received and followed redirections, if any. The Mode is enforced when sending the request (and following redirections), custom manual requests are not allowed in 'Safe' mode nor in 'Protected' mode if out of scope.

### method setproxy

```perl6
method setproxy(
    :$proxy!
) returns Mu
```

No Doc

### method xmlreport

```perl6
method xmlreport() returns Mu
```

Generates a report in XML format

### method accessUrl

```perl6
method accessUrl(
    :$url!,
    :$followRedirects
) returns Mu
```

Convenient and simple action to access a URL, optionally following redirections. Returns the request sent and response received and followed redirections, if any. Other actions are available which offer more control on what is sent, like, 'sendRequest' or 'sendHarRequest'.

### method addProxyChainExcludedDomain

```perl6
method addProxyChainExcludedDomain(
    :$value!,
    :$isRegex,
    :$isEnabled
) returns Mu
```

Adds a domain to be excluded from the outgoing proxy, using the specified value. Optionally sets if the new entry is enabled (default, true) and whether or not the new value is specified as a regex (default, false).

### method clearExcludedFromProxy

```perl6
method clearExcludedFromProxy() returns Mu
```

Clears the regexes of URLs excluded from the local proxies.

### method deleteAlert

```perl6
method deleteAlert(
    :$id!
) returns Mu
```

Deletes the alert with the given ID.

### method deleteAllAlerts

```perl6
method deleteAllAlerts() returns Mu
```

Deletes all alerts of the current session.

### method deleteSiteNode

```perl6
method deleteSiteNode(
    :$url!,
    :$method,
    :$postData
) returns Mu
```

Deletes the site node found in the Sites Tree on the basis of the URL, HTTP method, and post data (if applicable and specified).

### method disableAllProxyChainExcludedDomains

```perl6
method disableAllProxyChainExcludedDomains() returns Mu
```

Disables all domains excluded from the outgoing proxy.

### method disableClientCertificate

```perl6
method disableClientCertificate() returns Mu
```

Disables the option for use of client certificates.

### method enableAllProxyChainExcludedDomains

```perl6
method enableAllProxyChainExcludedDomains() returns Mu
```

Enables all domains excluded from the outgoing proxy.

### method enablePKCS12ClientCertificate

```perl6
method enablePKCS12ClientCertificate(
    :$filePath!,
    :$password!,
    :$index
) returns Mu
```

Enables use of a PKCS12 client certificate for the certificate with the given file system path, password, and optional index.

### method excludeFromProxy

```perl6
method excludeFromProxy(
    :$regex!
) returns Mu
```

Adds a regex of URLs that should be excluded from the local proxies.

### method generateRootCA

```perl6
method generateRootCA() returns Mu
```

Generates a new Root CA certificate for the local proxies.

### method loadSession

```perl6
method loadSession(
    :$name!
) returns Mu
```

Loads the session with the given name. If a relative path is specified it will be resolved against the "session" directory in ZAP "home" dir.

### method modifyProxyChainExcludedDomain

```perl6
method modifyProxyChainExcludedDomain(
    :$idx!,
    :$value,
    :$isRegex,
    :$isEnabled
) returns Mu
```

Modifies a domain excluded from the outgoing proxy. Allows to modify the value, if enabled or if a regex. The domain is selected with its index, which can be obtained with the view proxyChainExcludedDomains.

### method newSession

```perl6
method newSession(
    :$name,
    :$overwrite
) returns Mu
```

Creates a new session, optionally overwriting existing files. If a relative path is specified it will be resolved against the "session" directory in ZAP "home" dir.

### method removeProxyChainExcludedDomain

```perl6
method removeProxyChainExcludedDomain(
    :$idx!
) returns Mu
```

Removes a domain excluded from the outgoing proxy, with the given index. The index can be obtained with the view proxyChainExcludedDomains.

### method runGarbageCollection

```perl6
method runGarbageCollection() returns Mu
```

No Doc

### method saveSession

```perl6
method saveSession(
    :$name!,
    :$overwrite
) returns Mu
```

Saves the session.

### method sendRequest

```perl6
method sendRequest(
    :$request!,
    :$followRedirects
) returns Mu
```

Sends the HTTP request, optionally following redirections. Returns the request sent and response received and followed redirections, if any. The Mode is enforced when sending the request (and following redirections), custom manual requests are not allowed in 'Safe' mode nor in 'Protected' mode if out of scope.

### method setHomeDirectory

```perl6
method setHomeDirectory(
    :$dir!
) returns Mu
```

No Doc

### method setMode

```perl6
method setMode(
    :$mode!
) returns Mu
```

Sets the mode, which may be one of [safe, protect, standard, attack]

### method setOptionAlertOverridesFilePath

```perl6
method setOptionAlertOverridesFilePath(
    :$filePath
) returns Mu
```

Sets (or clears, if empty) the path to the file with alert overrides.

### method setOptionDefaultUserAgent

```perl6
method setOptionDefaultUserAgent(
    :$String!
) returns Mu
```

Sets the user agent that ZAP should use when creating HTTP messages (for example, spider messages or CONNECT requests to outgoing proxy).

### method setOptionDnsTtlSuccessfulQueries

```perl6
method setOptionDnsTtlSuccessfulQueries(
    :$Integer!
) returns Mu
```

Sets the TTL (in seconds) of successful DNS queries (applies after ZAP restart).

### method setOptionHttpStateEnabled

```perl6
method setOptionHttpStateEnabled(
    :$Boolean!
) returns Mu
```

No Doc

### method setOptionMaximumAlertInstances

```perl6
method setOptionMaximumAlertInstances(
    :$numberOfInstances!
) returns Mu
```

Sets the maximum number of alert instances to include in a report. A value of zero is treated as unlimited.

### method setOptionMergeRelatedAlerts

```perl6
method setOptionMergeRelatedAlerts(
    :$enabled!
) returns Mu
```

Sets whether or not related alerts will be merged in any reports generated.

### method setOptionProxyChainName

```perl6
method setOptionProxyChainName(
    :$String!
) returns Mu
```

No Doc

### method setOptionProxyChainPassword

```perl6
method setOptionProxyChainPassword(
    :$String!
) returns Mu
```

No Doc

### method setOptionProxyChainPort

```perl6
method setOptionProxyChainPort(
    :$Integer!
) returns Mu
```

No Doc

### method setOptionProxyChainPrompt

```perl6
method setOptionProxy