How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

OWASP ZAP spider API

The spider API from OWASP ZAP — 71 operation(s) for spider.

OWASP ZAP spider API is one of 49 APIs that OWASP ZAP publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include spider. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and a GitHub repository.

This API exposes 71 operations across 71 paths, and defines 1 schema. It is described by OpenAPI 3.0.3, at version 2.16.1.

Requests are made against 2 base URLs: http://zap, http://{address}:{port}.

71 operations 71 paths 1 schemas 71 GET

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
2.16.1
Base URL
http://zap
Authentication
API Key, API Key
License
Resource Areas
1

Authentication & Security 2

OWASP ZAP spider API declares 2 security schemes for authenticating requests. An API key is passed in the header as X-ZAP-API-Key (apiKeyHeader). An API key is passed in the query as apikey (apiKeyQuery). By default, every request must be authenticated, though some operations may also be called without credentials.

Paths & Operations 71

Across 71 paths, the API surfaces 71 operations — 71 GET. Each is listed below with its method, path, parameters, and response codes.

spider 71
GET
/JSON/spider/action/addDomainAlwaysInScope/
Adds a new domain that's always in scope, 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, fal…
spiderActionAddDomainAlwaysInScope 3 params → default
GET
/JSON/spider/action/clearExcludedFromScan/
Clears the regexes of URLs excluded from the spider scans.
spiderActionClearExcludedFromScan → default
GET
/JSON/spider/action/disableAllDomainsAlwaysInScope/
Disables all domains that are always in scope.
spiderActionDisableAllDomainsAlwaysInScope → default
GET
/JSON/spider/action/enableAllDomainsAlwaysInScope/
Enables all domains that are always in scope.
spiderActionEnableAllDomainsAlwaysInScope → default
GET
/JSON/spider/action/excludeFromScan/
Adds a regex of URLs that should be excluded from the spider scans.
spiderActionExcludeFromScan 1 param → default
GET
/JSON/spider/action/modifyDomainAlwaysInScope/
Modifies a domain that's always in scope. 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 domainsAlwaysInScope.
spiderActionModifyDomainAlwaysInScope 4 params → default
GET
/JSON/spider/action/pause/
spiderActionPause 1 param → default
GET
/JSON/spider/action/pauseAllScans/
spiderActionPauseAllScans → default
GET
/JSON/spider/action/removeAllScans/
spiderActionRemoveAllScans → default
GET
/JSON/spider/action/removeDomainAlwaysInScope/
Removes a domain that's always in scope, with the given index. The index can be obtained with the view domainsAlwaysInScope.
spiderActionRemoveDomainAlwaysInScope 1 param → default
GET
/JSON/spider/action/removeScan/
spiderActionRemoveScan 1 param → default
GET
/JSON/spider/action/resume/
spiderActionResume 1 param → default
GET
/JSON/spider/action/resumeAllScans/
spiderActionResumeAllScans → default
GET
/JSON/spider/action/scan/
Runs the spider against the given URL (or context). Optionally, the 'maxChildren' parameter can be set to limit the number of children scanned, the 'recurse' parameter can be used to prevent the spid…
spiderActionScan 5 params → default
GET
/JSON/spider/action/scanAsUser/
Runs the spider from the perspective of a User, obtained using the given Context ID and User ID. See 'scan' action for more details.
spiderActionScanAsUser 6 params → default
GET
/JSON/spider/action/setOptionAcceptCookies/
Sets whether or not a spider process should accept cookies while spidering.
spiderActionSetOptionAcceptCookies 1 param → default
GET
/JSON/spider/action/setOptionHandleODataParametersVisited/
spiderActionSetOptionHandleODataParametersVisited 1 param → default
GET
/JSON/spider/action/setOptionHandleParameters/
spiderActionSetOptionHandleParameters 1 param → default
GET
/JSON/spider/action/setOptionLogoutAvoidance/
Sets whether or not the Spider should attempt to avoid logout related paths/functionality.
spiderActionSetOptionLogoutAvoidance 1 param → default
GET
/JSON/spider/action/setOptionMaxChildren/
Sets the maximum number of child nodes (per node) that can be crawled, 0 means no limit.
spiderActionSetOptionMaxChildren 1 param → default
GET
/JSON/spider/action/setOptionMaxDepth/
Sets the maximum depth the spider can crawl, 0 for unlimited depth.
spiderActionSetOptionMaxDepth 1 param → default
GET
/JSON/spider/action/setOptionMaxDuration/
spiderActionSetOptionMaxDuration 1 param → default
GET
/JSON/spider/action/setOptionMaxParseSizeBytes/
Sets the maximum size, in bytes, that a response might have to be parsed. This allows the spider to skip big responses/files.
spiderActionSetOptionMaxParseSizeBytes 1 param → default
GET
/JSON/spider/action/setOptionMaxScansInUI/
spiderActionSetOptionMaxScansInUI 1 param → default
GET
/JSON/spider/action/setOptionParseComments/
spiderActionSetOptionParseComments 1 param → default
GET
/JSON/spider/action/setOptionParseDsStore/
spiderActionSetOptionParseDsStore 1 param → default
GET
/JSON/spider/action/setOptionParseGit/
spiderActionSetOptionParseGit 1 param → default
GET
/JSON/spider/action/setOptionParseRobotsTxt/
spiderActionSetOptionParseRobotsTxt 1 param → default
GET
/JSON/spider/action/setOptionParseSVNEntries/
spiderActionSetOptionParseSVNEntries 1 param → default
GET
/JSON/spider/action/setOptionParseSitemapXml/
spiderActionSetOptionParseSitemapXml 1 param → default
GET
/JSON/spider/action/setOptionPostForm/
spiderActionSetOptionPostForm 1 param → default
GET
/JSON/spider/action/setOptionProcessForm/
spiderActionSetOptionProcessForm 1 param → default
GET
/JSON/spider/action/setOptionSendRefererHeader/
Sets whether or not the 'Referer' header should be sent while spidering.
spiderActionSetOptionSendRefererHeader 1 param → default
GET
/JSON/spider/action/setOptionShowAdvancedDialog/
spiderActionSetOptionShowAdvancedDialog 1 param → default
GET
/JSON/spider/action/setOptionSkipURLString/
spiderActionSetOptionSkipURLString 1 param → default
GET
/JSON/spider/action/setOptionThreadCount/
spiderActionSetOptionThreadCount 1 param → default
GET
/JSON/spider/action/setOptionUserAgent/
spiderActionSetOptionUserAgent 1 param → default
GET
/JSON/spider/action/stop/
spiderActionStop 1 param → default
GET
/JSON/spider/action/stopAllScans/
spiderActionStopAllScans → default
GET
/JSON/spider/view/addedNodes/
Returns a list of the names of the nodes added to the Sites tree by the specified scan.
spiderViewAddedNodes 1 param → default
GET
/JSON/spider/view/allUrls/
Returns a list of unique URLs from the history table based on HTTP messages added by the Spider.
spiderViewAllUrls → default
GET
/JSON/spider/view/domainsAlwaysInScope/
Gets all the domains that are always in scope. For each domain the following are shown: the index, the value (domain), if enabled, and if specified as a regex.
spiderViewDomainsAlwaysInScope → default
GET
/JSON/spider/view/excludedFromScan/
Gets the regexes of URLs excluded from the spider scans.
spiderViewExcludedFromScan → default
GET
/JSON/spider/view/fullResults/
spiderViewFullResults 1 param → default
GET
/JSON/spider/view/optionAcceptCookies/
Gets whether or not a spider process should accept cookies while spidering.
spiderViewOptionAcceptCookies → default
GET
/JSON/spider/view/optionDomainsAlwaysInScope/deprecated
Use view domainsAlwaysInScope instead.
spiderViewOptionDomainsAlwaysInScope → default
GET
/JSON/spider/view/optionDomainsAlwaysInScopeEnabled/deprecated
Use view domainsAlwaysInScope instead.
spiderViewOptionDomainsAlwaysInScopeEnabled → default
GET
/JSON/spider/view/optionHandleODataParametersVisited/
spiderViewOptionHandleODataParametersVisited → default
GET
/JSON/spider/view/optionHandleParameters/
spiderViewOptionHandleParameters → default
GET
/JSON/spider/view/optionLogoutAvoidance/
Gets whether or not the spider should attempt to avoid logout related paths/functionality.
spiderViewOptionLogoutAvoidance → default
GET
/JSON/spider/view/optionMaxChildren/
Gets the maximum number of child nodes (per node) that can be crawled, 0 means no limit.
spiderViewOptionMaxChildren → default
GET
/JSON/spider/view/optionMaxDepth/
Gets the maximum depth the spider can crawl, 0 if unlimited.
spiderViewOptionMaxDepth → default
GET
/JSON/spider/view/optionMaxDuration/
spiderViewOptionMaxDuration → default
GET
/JSON/spider/view/optionMaxParseSizeBytes/
Gets the maximum size, in bytes, that a response might have to be parsed, or 0 for unlimited.
spiderViewOptionMaxParseSizeBytes → default
GET
/JSON/spider/view/optionMaxScansInUI/
spiderViewOptionMaxScansInUI → default
GET
/JSON/spider/view/optionParseComments/
spiderViewOptionParseComments → default
GET
/JSON/spider/view/optionParseDsStore/
spiderViewOptionParseDsStore → default
GET
/JSON/spider/view/optionParseGit/
spiderViewOptionParseGit → default
GET
/JSON/spider/view/optionParseRobotsTxt/
spiderViewOptionParseRobotsTxt → default
GET
/JSON/spider/view/optionParseSVNEntries/
spiderViewOptionParseSVNEntries → default
GET
/JSON/spider/view/optionParseSitemapXml/
spiderViewOptionParseSitemapXml → default
GET
/JSON/spider/view/optionPostForm/
spiderViewOptionPostForm → default
GET
/JSON/spider/view/optionProcessForm/
spiderViewOptionProcessForm → default
GET
/JSON/spider/view/optionSendRefererHeader/
Gets whether or not the 'Referer' header should be sent while spidering.
spiderViewOptionSendRefererHeader → default
GET
/JSON/spider/view/optionShowAdvancedDialog/
spiderViewOptionShowAdvancedDialog → default
GET
/JSON/spider/view/optionSkipURLString/
spiderViewOptionSkipURLString → default
GET
/JSON/spider/view/optionThreadCount/
spiderViewOptionThreadCount → default
GET
/JSON/spider/view/optionUserAgent/
spiderViewOptionUserAgent → default
GET
/JSON/spider/view/results/
spiderViewResults 1 param → default
GET
/JSON/spider/view/scans/
spiderViewScans → default
GET
/JSON/spider/view/status/
spiderViewStatus 1 param → default

Schemas 1

The contract defines 1 schema that model the data the API accepts and returns. The most detailed is ErrorJson (3 properties). Each schema is shown below with its type and property counts.

ErrorJson
object
3 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

owasp-zap-spider-api-openapi.yml Raw ↑

Other APIs OWASP ZAP publishes across the network.

OWASP ZAP accessControl API
OWASP ZAP acsrf API
OWASP ZAP ajaxSpider API
OWASP ZAP alert API
OWASP ZAP alertFilter API
OWASP ZAP ascan API
OWASP ZAP authentication API
OWASP ZAP authorization API
OWASP ZAP automation API
OWASP ZAP autoupdate API
OWASP ZAP break API
OWASP ZAP client API
Where this information came from

This is an independent, third-party profile of OWASP ZAP spider API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.