description: A physical or virtual address, or a range of addresses, in an 'addressable region' (memory or a binary file).

description: The address expressed as a byte offset from the start of the addressable region.

description: The address expressed as a byte offset from the absolute address of the top-most parent object.

description: The number of bytes in this range of addresses.

description: An open-ended string that identifies the address kind. 'data', 'function', 'header','instruction', 'module', 'page', 'section', 'segment', 'stack', 'stackFrame', 'table' are well-known values.

description: A name that is associated with the address, e.g., '.text'.

description: A human-readable fully qualified name that is associated with the address.

description: The byte offset of this address from the absolute or relative address of the parent object.

description: The index within run.addresses of the cached object for this address.

description: The index within run.addresses of the parent object.

description: Key/value pairs that provide additional information about the address.

$ref: #/definitions/propertyBag

description: A single artifact. In some cases, this artifact might be nested within another artifact.

description: A short description of the artifact.

$ref: #/definitions/message

description: The location of the artifact.

$ref: #/definitions/artifactLocation

description: Identifies the index of the immediate parent of the artifact, if this artifact is nested.

description: The offset in bytes of the artifact within its containing artifact.

description: The length of the artifact in bytes.

description: The role or roles played by the artifact in the analysis.

enum: analysisTarget attachment responseFile resultFile standardStream tracedFile unmodified modified added deleted renamed uncontrolled driver extension translation taxonomy policy referencedOnCommandLine memoryContents directory userSpecifiedConfiguration toolSpecifiedConfiguration debugOutputFile

description: The MIME type (RFC 2045) of the artifact.

description: The contents of the artifact.

$ref: #/definitions/artifactContent

description: Specifies the encoding for an artifact object that refers to a text file.

description: Specifies the source language for any artifact object that refers to a text file that contains source code.

description: A dictionary, each of whose keys is the name of a hash function and each of whose values is the hashed value of the artifact produced by the specified hash function.

description: The Coordinated Universal Time (UTC) date and time at which the artifact was most recently modified. See "Date/time properties" in the SARIF spec for the required format.

description: Key/value pairs that provide additional information about the artifact.

description: A change to a single artifact.

description: The location of the artifact to change.

description: An array of replacement objects, each of which represents the replacement of a single region in a single artifact specified by 'artifactLocation'.

$ref: #/definitions/replacement

description: Key/value pairs that provide additional information about the change.

required: artifactLocation replacements

description: Represents the contents of an artifact.

description: UTF-8-encoded content from a text artifact.

description: MIME Base64-encoded content from a binary artifact, or from a text artifact in its original encoding.

description: An alternate rendered representation of the artifact (e.g., a decompiled representation of a binary region).

$ref: #/definitions/multiformatMessageString

description: Key/value pairs that provide additional information about the artifact content.

description: Specifies the location of an artifact.

description: A string containing a valid relative or absolute URI.

format: uri-reference

description: A string which indirectly specifies the absolute URI with respect to which a relative URI in the "uri" property is interpreted.

description: The index within the run artifacts array of the artifact object associated with the artifact location.

description: A short description of the artifact location.

description: Key/value pairs that provide additional information about the artifact location.

description: An artifact relevant to a result.

description: A message describing the role played by the attachment.

description: The location of the attachment.

description: An array of regions of interest within the attachment.

$ref: #/definitions/region

description: An array of rectangles specifying areas of interest within the image.

$ref: #/definitions/rectangle

description: Key/value pairs that provide additional information about the attachment.

description: A set of threadFlows which together describe a pattern of code execution relevant to detecting a result.

description: A message relevant to the code flow.

description: An array of one or more unique threadFlow objects, each of which describes the progress of a program through a thread of execution.

$ref: #/definitions/threadFlow

description: Key/value pairs that provide additional information about the code flow.

description: Information about how a specific rule or notification was reconfigured at runtime.

description: Specifies how the rule or notification was configured during the scan.

$ref: #/definitions/reportingConfiguration

description: A reference used to locate the descriptor whose configuration was overridden.

description: Key/value pairs that provide additional information about the configuration override.

required: configuration descriptor

description: Describes how a converter transformed the output of a static analysis tool from the analysis tool's native output format into the SARIF format.

description: A tool object that describes the converter.

$ref: #/definitions/tool

description: An invocation object that describes the invocation of the converter.

$ref: #/definitions/invocation

description: The locations of the analysis tool's per-run log files.

description: Key/value pairs that provide additional information about the conversion.

description: Represents a directed edge in a graph.

description: A string that uniquely identifies the edge within its graph.

description: A short description of the edge.

description: Identifies the source node (the node at which the edge starts).

description: Identifies the target node (the node at which the edge ends).

description: Key/value pairs that provide additional information about the edge.

required: id sourceNodeId targetNodeId

description: Represents the traversal of a single edge during a graph traversal.

description: Identifies the edge being traversed.

description: A message to display to the user as the edge is traversed.

description: The values of relevant expressions after the edge has been traversed.

description: The number of edge traversals necessary to return from a nested graph.

description: Key/value pairs that provide additional information about the edge traversal.

description: Describes a runtime exception encountered during the execution of an analysis tool.

description: A string that identifies the kind of exception, for example, the fully qualified type name of an object that was thrown, or the symbolic name of a signal.

description: A message that describes the exception.

description: The sequence of function calls leading to the exception.

$ref: #/definitions/stack

description: An array of exception objects each of which is considered a cause of this exception.

$ref: #/definitions/exception

description: Key/value pairs that provide additional information about the exception.

description: The top-level element of an external property file.

description: The URI of the JSON schema corresponding to the version of the external property file format.

description: The SARIF format version of this external properties object.

description: A stable, unique identifier for this external properties object, in the form of a GUID.

format: uuid

description: A stable, unique identifier for the run associated with this external properties object, in the form of a GUID.

description: A conversion object that will be merged with a separate run.

$ref: #/definitions/conversion

description: An array of graph objects that will be merged with a separate run.

$ref: #/definitions/graph

description: Key/value pairs that provide additional information that will be merged with a separate run.

description: An array of artifact objects that will be merged with a separate run.

description: Describes the invocation of the analysis tool that will be merged with a separate run.

description: An array of logical locations such as namespaces, types or functions that will be merged with a separate run.

description: An array of threadFlowLocation objects that will be merged with a separate run.

description: An array of result objects that will be merged with a separate run.

description: Tool taxonomies that will be merged with a separate run.

description: The analysis tool object that will be merged with a separate run.

description: Tool extensions that will be merged with a separate run.

description: Tool policies that will be merged with a separate run.

description: Tool translations that will be merged with a separate run.

description: Addresses that will be merged with a separate run.

description: Requests that will be merged with a separate run.

description: Responses that will be merged with a separate run.

description: Key/value pairs that provide additional information about the external properties.

description: Contains information that enables a SARIF consumer to locate the external property file that contains the value of an externalized property associated with the run.

description: The location of the external property file.

description: A stable, unique identifier for the external property file in the form of a GUID.

description: A non-negative integer specifying the number of items contained in the external property file.

description: Key/value pairs that provide additional information about the external property file.

description: References to external property files that should be inlined with the content of a root log file.

description: An external property file containing a run.conversion object to be merged with the root log file.

description: An array of external property files containing a run.graphs object to be merged with the root log file.

description: An external property file containing a run.properties object to be merged with the root log file.

description: An array of external property files containing run.artifacts arrays to be merged with the root log file.

description: An array of external property files containing run.invocations arrays to be merged with the root log file.

description: An array of external property files containing run.logicalLocations arrays to be merged with the root log file.

description: An array of external property files containing run.threadFlowLocations arrays to be merged with the root log file.

description: An array of external property files containing run.results arrays to be merged with the root log file.

description: An array of external property files containing run.taxonomies arrays to be merged with the root log file.

description: An array of external property files containing run.addresses arrays to be merged with the root log file.

description: An external property file containing a run.driver object to be merged with the root log file.

description: An array of external property files containing run.extensions arrays to be merged with the root log file.

description: An array of external property files containing run.policies arrays to be merged with the root log file.

description: An array of external property files containing run.translations arrays to be merged with the root log file.

description: An array of external property files containing run.requests arrays to be merged with the root log file.

description: An array of external property files containing run.responses arrays to be merged with the root log file.

description: Key/value pairs that provide additional information about the external property files.

description: A proposed fix for the problem represented by a result object. A fix specifies a set of artifacts to modify. For each artifact, it specifies a set of bytes to remove, and provides a set of new bytes to replace them.

description: A message that describes the proposed fix, enabling viewers to present the proposed change to an end user.

description: One or more artifact changes that comprise a fix for a result.

description: Key/value pairs that provide additional information about the fix.

description: A network of nodes and directed edges that describes some aspect of the structure of the code (for example, a call graph).

description: A description of the graph.

description: An array of node objects representing the nodes of the graph.

description: An array of edge objects representing the edges of the graph.

description: Key/value pairs that provide additional information about the graph.

description: Represents a path through a graph.

description: The index within the run.graphs to be associated with the result.

description: The index within the result.graphs to be associated with the result.

description: A description of this graph traversal.

description: Values of relevant expressions at the start of the graph traversal that may change during graph traversal.

description: Values of relevant expressions at the start of the graph traversal that remain constant for the graph traversal.

description: The sequences of edges traversed by this graph traversal.

description: Key/value pairs that provide additional information about the graph traversal.

description: The runtime environment of the analysis tool run.

description: The command line used to invoke the tool.

description: An array of strings, containing in order the command line arguments passed to the tool from the operating system.

description: The locations of any response files specified on the tool's command line.

description: The Coordinated Universal Time (UTC) date and time at which the invocation started. See "Date/time properties" in the SARIF spec for the required format.

description: The Coordinated Universal Time (UTC) date and time at which the invocation ended. See "Date/time properties" in the SARIF spec for the required format.

description: The process exit code.

description: An array of configurationOverride objects that describe rules related runtime overrides.

description: An array of configurationOverride objects that describe notifications related runtime overrides.

description: A list of runtime conditions detected by the tool during the analysis.

description: A list of conditions detected by the tool that are relevant to the tool's configuration.

description: The reason for the process exit.

description: The name of the signal that caused the process to exit.

description: The numeric value of the signal that caused the process to exit.

description: The reason given by the operating system that the process failed to start.

description: Specifies whether the tool's execution completed successfully.

description: The machine on which the invocation occurred.

description: The account under which the invocation occurred.

description: The id of the process in which the invocation occurred.

description: An absolute URI specifying the location of the executable that was invoked.

description: The working directory for the invocation.

description: The environment variables associated with the analysis tool process, expressed as key/value pairs.

description: A file containing the standard input stream to the process that was invoked.

description: A file containing the standard output stream from the process that was invoked.

description: A file containing the standard error stream from the process that was invoked.

description: A file containing the interleaved standard output and standard error stream from the process that was invoked.

description: Key/value pairs that provide additional information about the invocation.

description: A location within a programming artifact.

description: Value that distinguishes this location from all other locations within a single result object.

description: Identifies the artifact and region.

description: The logical locations associated with the result.

description: A message relevant to the location.

description: A set of regions relevant to the location.

description: An array of objects that describe relationships between this location and others.

description: Key/value pairs that provide additional information about the location.

description: Information about the relation of one location to another.

description: A reference to the related location.

description: A set of distinct strings that categorize the relationship. Well-known kinds include 'includes', 'isIncludedBy' and 'relevant'.

description: A description of the location relationship.

description: Key/value pairs that provide additional information about the location relationship.

description: A logical location of a construct that produced a result.

description: Identifies the construct in which the result occurred. For example, this property might contain the name of a class or a method.

description: The index within the logical locations array.

description: The human-readable fully qualified name of the logical location.

description: The machine-readable name for the logical location, such as a mangled function name provided by a C++ compiler that encodes calling convention, return type and other details along with the function name.

description: Identifies the index of the immediate parent of the construct in which the result was detected. For example, this property might point to a logical location that represents the namespace that holds a type.

description: The type of construct this logical location component refers to. Should be one of 'function', 'member', 'module', 'namespace', 'parameter', 'resource', 'returnType', 'type', 'variable', 'object', 'array', 'property', 'value', 'element', 'text', 'attribute', 'comment', 'declaration', 'dtd' or 'processingInstruction', if any of those accurately describe the construct.

description: Key/value pairs that provide additional information about the logical location.

description: Encapsulates a message intended to be read by the end user.

description: A plain text message string.

description: A Markdown message string.

description: The identifier for this message.

description: An array of strings to substitute into the message string.

description: Key/value pairs that provide additional information about the message.

description: A message string or message format string rendered in multiple formats.

description: A plain text message string or format string.

description: A Markdown message string or format string.

description: Represents a node in a graph.

description: A string that uniquely identifies the node within its graph.

description: A short description of the node.

description: A code location associated with the node.

description: Array of child nodes.

description: Key/value pairs that provide additional information about the node.

description: Describes a condition relevant to the tool itself, as opposed to being relevant to a target being analyzed by the tool.

description: The locations relevant to this notification.

description: A message that describes the condition that was encountered.

description: A value specifying the severity level of the notification.

description: The thread identifier of the code that generated the notification.

description: The Coordinated Universal Time (UTC) date and time at which the analysis tool generated the notification.

description: The runtime exception, if any, relevant to this notification.

description: A reference used to locate the descriptor relevant to this notification.

description: A reference used to locate the rule descriptor associated with this notification.

description: Key/value pairs that provide additional information about the notification.

description: A physical location relevant to a result. Specifies a reference to a programming artifact together with a range of bytes or characters within that artifact.

description: The address of the location.

description: The location of the artifact.

description: Specifies a portion of the artifact.

description: Specifies a portion of the artifact that encloses the region. Allows a viewer to display additional context around the region.

description: Key/value pairs that provide additional information about the physical location.

description: Key/value pairs that provide additional information about the object.

description: A set of distinct strings that provide additional information.

description: An area within an image.

description: The Y coordinate of the top edge of the rectangle, measured in the image's natural units.

description: The X coordinate of the left edge of the rectangle, measured in the image's natural units.

description: The Y coordinate of the bottom edge of the rectangle, measured in the image's natural units.

description: The X coordinate of the right edge of the rectangle, measured in the image's natural units.

description: A message relevant to the rectangle.

description: Key/value pairs that provide additional information about the rectangle.

description: A region within an artifact where a result was detected.

description: The line number of the first character in the region.

description: The column number of the first character in the region.

description: The line number of the last character in the region.

description: The column number of the character following the end of the region.

description: The zero-based offset from the beginning of the artifact of the first character in the region.

description: The length of the region in characters.

description: The zero-based offset from the beginning of the artifact of the first byte in the region.

description: The length of the region in bytes.

description: The portion of the artifact contents within the specified region.

description: A message relevant to the region.

description: Specifies the source language, if any, of the portion of the artifact specified by the region object.

description: Key/value pairs that provide additional information about the region.

description: The replacement of a single region of an artifact.

description: The region of the artifact to delete.

description: The content to insert at the location specified by the 'deletedRegion' property.

description: Key/value pairs that provide additional information about the replacement.

description: Metadata that describes a specific report produced by the tool, as part of the analysis it provides or its runtime reporting.

description: A stable, opaque identifier for the report.

description: An array of stable, opaque identifiers by which this report was known in some previous version of the analysis tool.

description: A unique identifier for the reporting descriptor in the form of a GUID.

description: An array of unique identifies in the form of a GUID by which this report was known in some previous version of the analysis tool.

description: A report identifier that is understandable to an end user.

description: An array of readable identifiers by which this report was known in some previous version of the analysis tool.

description: A concise description of the report. Should be a single sentence that is understandable when visible space is limited to a single line of text.

description: A description of the report. Should, as far as possible, provide details sufficient to enable resolution of any problem indicated by the result.

description: A set of name/value pairs with arbitrary names. Each value is a multiformatMessageString object, which holds message strings in plain text and (optionally) Markdown format. The strings can include placeholders, which can be used to construct a message in combination with an arbitrary number of additional string arguments.

description: Default reporting configuration information.

description: A URI where the primary documentation for the report can be found.

description: Provides the primary documentation for the report, useful when there is no online documentation.

description: An array of objects that describe relationships between this reporting descriptor and others.

description: Key/value pairs that provide additional information about the report.

description: Information about a rule or notification that can be configured at runtime.

description: Specifies whether the report may be produced during the scan.

description: Specifies the failure level for the report.

description: Specifies the relative priority of the report. Used for analysis output only.

description: Contains configuration information specific to a report.

description: Key/value pairs that provide additional information about the reporting configuration.

description: Information about how to locate a relevant reporting descriptor.

description: The id of the descriptor.

description: The index into an array of descriptors in toolComponent.ruleDescriptors, toolComponent.notificationDescriptors, or toolComponent.taxonomyDescriptors, depending on context.

description: A guid that uniquely identifies the descriptor.

description: A reference used to locate the toolComponent associated with the descriptor.

description: Key/value pairs that provide additional information about the reporting descriptor reference.

description: Information about the relation of one reporting descriptor to another.

description: A reference to the related reporting descriptor.

description: A set of distinct strings that categorize the relationship. Well-known kinds include 'canPrecede', 'canFollow', 'willPrecede', 'willFollow', 'superset', 'subset', 'equal', 'disjoint', 'relevant', and 'incomparable'.

description: A description of the reporting descriptor relationship.

description: A result produced by an analysis tool.

description: The stable, unique identifier of the rule, if any, to which this result is relevant.

description: The index within the tool component rules array of the rule object associated with this result.

description: A reference used to locate the rule descriptor relevant to this result.

description: A value that categorizes results by evaluation state.

enum: notApplicable pass fail review open informational

description: A value specifying the severity level of the result.

description: A message that describes the result. The first sentence of the message only will be displayed when visible space is limited.

description: Identifies the artifact that the analysis tool was instructed to scan. This need not be the same as the artifact where the result actually occurred.

description: The set of locations where the result was detected. Specify only one location unless the problem indicated by the result can only be corrected by making a change at every specified location.

description: A stable, unique identifier for the result in the form of a GUID.

description: A stable, unique identifier for the equivalence class of logically identical results to which this result belongs, in the form of a GUID.

description: A positive integer specifying the number of times this logically unique result was observed in this run.

description: A set of strings that contribute to the stable, unique identity of the result.

description: A set of strings each of which individually defines a stable, unique identity for the result.

description: An array of 'stack' objects relevant to the result.

description: An array of 'codeFlow' objects relevant to the result.

description: An array of zero or more unique graph objects associated with the result.

description: An array of one or more unique 'graphTraversal' objects.

description: A set of locations relevant to this result.

description: A set of suppressions relevant to this result.

description: The state of a result relative to a baseline of a previous run.

description: A number representing the priority or importance of the result.

description: A set of artifacts relevant to the result.

description: An absolute URI at which the result can be viewed.

description: The URIs of the work items associated with this result.

description: Information about how and when the result was detected.

description: An array of 'fix' objects, each of which represents a proposed fix to the problem indicated by the result.

description: An array of references to taxonomy reporting descriptors that are applicable to the result.

description: A web request associated with this result.

description: A web response associated with this result.

description: Key/value pairs that provide additional information about the result.

description: Contains information about how and when a result was detected.

description: The Coordinated Universal Time (UTC) date and time at which the result was first detected. See "Date/time properties" in the SARIF spec for the required format.

description: The Coordinated Universal Time (UTC) date and time at which the result was most recently detected. See "Date/time properties" in the SARIF spec for the required format.

description: A GUID-valued string equal to the automationDetails.guid property of the run in which the result was first detected.

description: A GUID-valued string equal to the automationDetails.guid property of the run in which the result was most recently detected.

description: The index within the run.invocations array of the invocation object which describes the tool invocation that detected the result.

description: An array of physicalLocation objects which specify the portions of an analysis tool's output that a converter transformed into the result.

description: Describes a single run of an analysis tool, and contains the reported output of that run.

description: Information about the tool or tool pipeline that generated the results in this run. A run can only contain results produced by a single tool or tool pipeline. A run can aggregate results from multiple log files, as long as context around the tool run (tool command-line arguments and the like) is identical for all aggregated files.

description: Describes the invocation of the analysis tool.

description: A conversion object that describes how a converter transformed an analysis tool's native reporting format into the SARIF format.

description: The language of the messages emitted into the log file during this run (expressed as an ISO 639-1 two-letter lowercase culture code) and an optional region (expressed as an ISO 3166-1 two-letter uppercase subculture code associated with a country or region). The casing is recommended but not required (in order for this data to conform to RFC5646).

description: Specifies the revision in version control of the artifacts that were scanned.

description: The artifact location specified by each uriBaseId symbol on the machine where the tool originally ran.

description: An array of artifact objects relevant to the run.

description: An array of logical locations such as namespaces, types or functions.

description: An array of zero or more unique graph objects associated with the run.

description: The set of results contained in an SARIF log. The results array can be omitted when a run is solely exporting rules metadata. It must be present (but may be empty) if a log file represents an actual scan.

description: Automation details that describe this run.

description: Automation details that describe the aggregate of runs to which this run belongs.

description: The 'guid' property of a previous SARIF 'run' that comprises the baseline that was used to compute result 'baselineState' properties for the run.

description: An array of strings used to replace sensitive information in a redaction-aware property.

description: Specifies the default encoding for any artifact object that refers to a text file.

description: Specifies the default source language for any artifact object that refers to a text file that contains source code.

description: An ordered list of character sequences that were treated as line breaks when computing region information for the run.

description: Specifies the unit in which the tool measures columns.

description: An array of threadFlowLocation objects cached at run level.

description: An array of toolComponent objects relevant to a taxonomy in which results are categorized.

description: Addresses associated with this run instance, if any.

description: The set of available translations of the localized data provided by the tool.

description: Contains configurations that may potentially override both reportingDescriptor.defaultConfiguration (the tool's default severities) and invocation.configurationOverrides (severities established at run-time from the command line).

description: An array of request objects cached at run level.

description: An array of response objects cached at run level.

description: A specialLocations object that defines locations of special significance to SARIF consumers.

description: Key/value pairs that provide additional information about the run.

description: Information that describes a run's identity and role within an engineering system process.

description: A description of the identity and role played within the engineering system by this object's containing run object.

description: A hierarchical string that uniquely identifies this object's containing run object.

description: A stable, unique identifier for this object's containing run object in the form of a GUID.

description: A stable, unique identifier for the equivalence class of runs to which this object's containing run object belongs in the form of a GUID.

description: Key/value pairs that provide additional information about the run automation details.

description: Defines locations of special significance to SARIF consumers.

description: Provides a suggestion to SARIF consumers to display file paths relative to the specified location.

description: Key/value pairs that provide additional information about the special locations.

description: A call stack that is relevant to a result.

description: A message relevant to this call stack.

description: An array of stack frames that represents a sequence of calls, rendered in reverse chronological order, that comprise the call stack.

description: Key/value pairs that provide additional information about the stack.

description: A function call within a stack trace.

description: The location to which this stack frame refers.

description: The name of the module that contains the code of this stack frame.

description: The thread identifier of the stack frame.

description: The parameters of the call that is executing.

description: Key/value pairs that provide additional information about the stack frame.

description: A suppression that is relevant to a result.

description: A stable, unique identifier for the suprression in the form of a GUID.

description: A string that indicates where the suppression is persisted.

description: A string that indicates the review status of the suppression.

description: A string representing the justification for the suppression.

description: Identifies the location associated with the suppression.

description: Key/value pairs that provide additional information about the suppression.

description: Describes a sequence of code locations that specify a path through a single thread of execution such as an operating system or fiber.

description: An string that uniquely identifies the threadFlow within the codeFlow in which it occurs.

description: A message relevant to the thread flow.

description: Values of relevant expressions at the start of the thread flow that may change during thread flow execution.

description: Values of relevant expressions at the start of the thread flow that remain constant.

description: A temporally ordered array of 'threadFlowLocation' objects, each of which describes a location visited by the tool while producing the result.

description: Key/value pairs that provide additional information about the thread flow.

description: A location visited by an analysis tool while simulating or monitoring the execution of a program.

description: The index within the run threadFlowLocations array.

description: The code location.

description: The call stack leading to this location.

description: A set of distinct strings that categorize the thread flow location. Well-known kinds include 'acquire', 'release', 'enter', 'exit', 'call', 'return', 'branch', 'implicit', 'false', 'true', 'caution', 'danger', 'unknown', 'unreachable', 'taint', 'function', 'handler', 'lock', 'memory', 'resource', 'scope' and 'value'.

description: An array of references to rule or taxonomy reporting descriptors that are applicable to the thread flow location.

description: The name of the module that contains the code that is executing.

description: A dictionary, each of whose keys specifies a variable or expression, the associated value of which represents the variable or expression value. For an annotation of kind 'continuation', for example, this dictionary might hold the current assumed values of a set of global variables.

description: An integer representing a containment hierarchy within the thread flow.

description: An integer representing the temporal order in which execution reached this location.

description: The Coordinated Universal Time (UTC) date and time at which this location was executed.

description: Specifies the importance of this location in understanding the code flow in which it occurs. The order from most to least important is "essential", "important", "unimportant". Default: "important".

description: A web request associated with this thread flow location.

description: A web response associated with this thread flow location.

description: Key/value pairs that provide additional information about the threadflow location.

description: The analysis tool that was run.

description: The analysis tool that was run.

description: Tool extensions that contributed to or reconfigured the analysis tool that was run.

description: Key/value pairs that provide additional information about the tool.

description: A component, such as a plug-in or the driver, of the analysis tool that was run.

description: A unique identifier for the tool component in the form of a GUID.

description: The name of the tool component.

description: The organization or company that produced the tool component.

description: A product suite to which the tool component belongs.

description: A localizable string containing the name of the suite of products to which the tool component belongs.

description: A brief description of the tool component.

description: A comprehensive description of the tool component.

description: The name of the tool component along with its version and any other useful identifying information, such as its locale.

description: The tool component version, in whatever format the component natively provides.

description: The tool component version in the format specified by Semantic Versioning 2.0.

description: The binary version of the tool component's primary executable file expressed as four non-negative integers separated by a period (for operating systems that express file versions in this way).

description: A string specifying the UTC date (and optionally, the time) of the component's release.

description: The absolute URI from which the tool component can be downloaded.

description: The absolute URI at which information about this version of the tool component can be found.

description: A dictionary, each of whose keys is a resource identifier and each of whose values is a multiformatMessageString object, which holds message strings in plain text and (optionally) Markdown format. The strings can include placeholders, which can be used to construct a message in combination with an arbitrary number of additional string arguments.

description: An array of reportingDescriptor objects relevant to the notifications related to the configuration and runtime execution of the tool component.

description: An array of reportingDescriptor objects relevant to the analysis performed by the tool component.

description: An array of reportingDescriptor objects relevant to the definitions of both standalone and tool-defined taxonomies.

description: An array of the artifactLocation objects associated with the tool component.

description: The language of the messages emitted into the log file during this run (expressed as an ISO 639-1 two-letter lowercase language code) and an optional region (expressed as an ISO 3166-1 two-letter uppercase subculture code associated with a country or region). The casing is recommended but not required (in order for this data to conform to RFC5646).

description: The kinds of data contained in this object.

description: Specifies whether this object contains a complete definition of the localizable and/or non-localizable data for this component, as opposed to including only data that is relevant to the results persisted to this log file.

description: The semantic version of the localized strings defined in this component; maintained by components that provide translations.

description: The minimum value of localizedDataSemanticVersion required in translations consumed by this component; used by components that consume translations.

description: The component which is strongly associated with this component. For a translation, this refers to the component which has been translated. For an extension, this is the driver that provides the extension's plugin model.

description: Translation metadata, required for a translation, not populated by other component types.

description: An array of toolComponentReference objects to declare the taxonomies supported by the tool component.

description: Key/value pairs that provide additional information about the tool component.

description: Identifies a particular toolComponent object, either the driver or an extension.

description: The 'name' property of the referenced toolComponent.

description: An index into the referenced toolComponent in tool.extensions.

description: The 'guid' property of the referenced toolComponent.

description: Key/value pairs that provide additional information about the toolComponentReference.

description: Provides additional metadata related to translation.

description: The name associated with the translation metadata.

description: The full name associated with the translation metadata.

description: A brief description of the translation metadata.

description: A comprehensive description of the translation metadata.

description: The absolute URI from which the translation metadata can be downloaded.

description: The absolute URI from which information related to the translation metadata can be downloaded.

description: Key/value pairs that provide additional information about the translation metadata.

description: Specifies the information necessary to retrieve a desired revision from a version control system.

description: The absolute URI of the repository.

description: A string that uniquely and permanently identifies the revision within the repository.

description: The name of a branch containing the revision.

description: A tag that has been applied to the revision.

description: A Coordinated Universal Time (UTC) date and time that can be used to synchronize an enlistment to the state of the repository at that time.

description: The location in the local file system to which the root of the repository was mapped at the time of the analysis.

description: Key/value pairs that provide additional information about the version control details.

description: Describes an HTTP request.

description: The index within the run.webRequests array of the request object associated with this result.

description: The request protocol. Example: 'http'.

description: The request version. Example: '1.1'.

description: The target of the request.

description: The HTTP method. Well-known values are 'GET', 'PUT', 'POST', 'DELETE', 'PATCH', 'HEAD', 'OPTIONS', 'TRACE', 'CONNECT'.

description: The request headers.

description: The request parameters.

description: The body of the request.

description: Key/value pairs that provide additional information about the request.

description: Describes the response to an HTTP request.

description: The index within the run.webResponses array of the response object associated with this result.

description: The response protocol. Example: 'http'.

description: The response version. Example: '1.1'.

description: The response status code. Example: 451.

description: The response reason. Example: 'Not found'.

description: The response headers.

description: The body of the response.

description: Specifies whether a response was received from the server.

description: Key/value pairs that provide additional information about the response.

description: Static Analysis Results Format (SARIF) Version 2.1.0-rtm.6 JSON Schema: a standard format for the output of static analysis tools.

description: The URI of the JSON schema corresponding to the version.

description: The SARIF format version of this log file.

description: The set of runs contained in this log file.

description: References to external property files that share data between runs.

description: Key/value pairs that provide additional information about the log file.

title: Static Analysis Results Format (SARIF) Version 2.1.0-rtm.6 JSON Schema


prometheus.rules.json

type: string

description: A string which is template-expanded before usage.

type: object

description: The name of the time series to output to. Must be a valid metric name.

description: The PromQL expression to evaluate. Every evaluation cycle this is evaluated at the current time, and the result recorded as a new set of time series with the metric name as given by 'record'.

description: Labels to add or overwrite before storing the result.

$ref: #/definitions/labels

required: record expr

description: The name of the alert. Must be a valid metric name.

description: The PromQL expression to evaluate. Every evaluation cycle this is evaluated at the current time, and all resultant time series become pending/firing alerts.

description: Alerts are considered firing once they have been returned for this long. Alerts which have not yet fired for long enough are considered pending.

$ref: #/definitions/duration

description: Labels to add or overwrite for each alert.

description: Annotations to add to each alert.

$ref: #/definitions/annotations

required: alert expr

description: Prometheus rules file

description: The name of the group. Must be unique within a file.

description: How often rules in the group are evaluated.

description: Limit the number of alerts an alerting rule and series a recording rule can produce. 0 is no limit.

title: Prometheus Rules


ide.host.json

description: Determines if the user entered values should be persisted for the next template invocation.

enum: none templateGroup shared

description: The id of the symbol from the template.json.

description: Overrides the name specified in the template.json

$ref: #/definitions/text

$ref: #/definitions/overrideInfo

type: boolean

description: Should be shown in the IDE. If not specified, defaults value is the value specified by defaultSymbolVisibility.

description: If the referenced symbol should be shown in the IDE.

description: Overrides the default value specified for the

description: Determines if the user entered value should be persisted and used the next time a template is selected. Default value is the value specified by defaultSymbolVisibility Used starting in Visual Studio 2022 17.3

$ref: #/definitions/persistenceScope

description: Specifies the name and description overrides for individual choice parameters

type: array

description: The tag to modify

enum: platform projectType

description: Tags to add

description: Tags to remove. * can be specified to remove all tags specified in template.json

description: The host identifier.

description: A version range specifying the unsupported host versions. This uses the nuget package format.

description: To require a particular host version specify the hostId and optionally version only. To require a particular SetupComponent or Extension, specify the ID and set the componentType appropriately. Version range is optional.

description: The id of the component

description: The host id that the component applies to

enum: setupComponent extension

description: A version range specifying the required version range. This uses the nuget package format.

description: Name of the template

description: Description of the template

description: The order of the template as shown in the New Project dialog

type: integer

description: The relative file name of the icon to show in the New Project dialog

description: Determines if the checkbox for adding Docker support in the New Project dialog should be visible

description: The symbol in the template.json which when set, would cause the template to generate non-https ports and settings

description: Sets the default isVisible for a symbolInfo if not explictly specified. Controls if the parameter is displayed in the IDE. Defaults to false if not specified

description: The dafault value for a symbolInfo if not explictly specified. Determines if the user entered value should be persisted and used the next time a template is selected. Used starting in Visual Studio 2022 17.3

description: The dafault value for a symbolInfo if not explictly specified. Specifies the scope name of the persisted template option. To avoid conflicts with other templates, treat this like a namespace. Used starting in Visual Studio 2022 17.3

description: Controls display characteristics of symbols declared in template.json

$ref: #/definitions/symbolInfo

description: Modifigy the project and platform tags displayed in the IDE

$ref: #/definitions/tags

description: Unsuppored Hosts. This can be used to supress the template from being displayed in the new project dialog in Visual Studio.

$ref: #/definitions/unsupportedHost

description: Required components in order to display this template.

$ref: #/definitions/requiredComponent

title: JSON schema for IDE template host files


description: Some of the reusable base types

description: Standard character sets.

description: The chrono unit we want to use.

enum: NANOS MICROS MILLIS SECONDS MINUTES HOURS HALF_DAYS DAYS WEEKS MONTHS YEARS DECADES CENTURIES MILLENNIA ERAS FOREVER

description: HTTP header map.

description: Supported HTTP methods.

enum: GET POST

description: A JSON Path selecting one or more nodes of the parsed JSON document.

description: A single JSON key name

description: Definition of known function types

description: Absolute value function

const: absoluteValue

description: The name of the component.

description: The number of digits we want to keep right of the decimal point.

required: name scale

description: Decimal add function

const: add

description: The name of the component.

type: number

description: Second operand of the calculation.

required: name operand scale

description: Change case

const: changeCase

description: The name of the component.

description: Defines what is the desired case change operation we want to do.

required: name to

description: Clone key function

const: cloneKey

description: The name of the component.

description: The name of the key we need to duplicate.

description: The name of the destination key.

required: from name to

description: Decimal divide function

const: divide

description: The name of the component.

description: Second operand of the calculation.

description: Decimal dividend function

const: dividend

description: The name of the component.

description: First operand of the calculation.

description: Epoch millis date add function

const: epochMillisDateAdd

description: The name of the component.

description: The amount of time units we need to add to the date time.

description: The time unit we want to use to interpret the amount.

required: amount name unit

description: HTTP resource content map function

const: httpResource

description: The name of the component.

description: The function that is calculating the request URI based on the input map.

description: The function that is calculating the request method based on the input map.

description: The function that is calculating the request headers based on the input map.

description: The default request URI as a fallback.

description: The default request method as a fallback. Defaults to GET.

description: The default request headers as a fallback.

description: The charset used to read the response. Defaults to UTF-8.

description: HTTP resource by URI function

const: httpResourceByUri

description: The name of the component.

description: The default request URI as a fallback.

description: JSON parse function

const: jsonParse

description: The name of the component.

description: Decimal multiply function

const: multiply

description: The name of the component.

description: Second operand of the calculation.

description: RegEx replace function

const: regex

description: The name of the component.

description: A regex pattern that will be matched against the input, capturing certain named groups for later use.

description: Defines how the captured groups should be used to piece together the output value using EL-like syntax.

required: name pattern replacement

description: Literal replace function

const: replace

description: The name of the component.

description: A literal we need to find in the input String.

description: The replacement we need to use.

required: find name replace

description: Round decimal function

const: roundDecimal

description: The name of the component.

description: String date add function

const: stringDateAdd

description: The name of the component.

description: The format String we need to use for date time parsing. [See](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/format/DateTimeFormatter.html)

required: amount formatter name unit

description: Decimal subtract function

const: subtract

description: The name of the component.

description: Second operand of the calculation.

description: Decimal subtract from function

const: subtractFrom

description: The name of the component.

description: First operand of the calculation.

enum: changeCase httpResourceByUri jsonParse regex replace stringDateAdd

enum: changeCase httpResourceByUri regex replace stringDateAdd

enum: absoluteValue add divide dividend epochMillisDateAdd multiply roundDecimal subtract subtractFrom

enum: absoluteValue add changeCase cloneKey divide dividend epochMillisDateAdd httpResource httpResourceByUri jsonParse multiply regex replace roundDecimal stringDateAdd subtract subtractFrom

description: Definition of known predicate types

description: All Match predicate

description: The name of the component.

description: Any Match predicate

description: The name of the component.

description: Any String predicate

description: The name of the component.

description: Contains key predicate

description: The name of the component.

description: The name of the key we want to check.

description: Eval on predicate

description: The name of the component.

description: The desired navigation we want to perform relative to the Map/Object we operate on.

description: The Predicate we need to evaluate after the navigation is done.

description: Is null predicate

description: The name of the component.

description: None Match predicate

description: The name of the component.

description: Not null predicate

description: The name of the component.

description: RegEx predicate

description: The name of the component.

description: The regular expression we want to match.

description: SpEL predicate

description: The name of the component.

description: The SpEL expression we want to match.

enum: SpEL allMatch anyMatch anyString isNull noneMatch notNull regex

enum: SpEL allMatch anyMatch containsKey evalOn isNull noneMatch notNull

enum: SpEL allMatch anyMatch anyString containsKey evalOn isNull noneMatch notNull regex

description: Definition of known supplier types

description: Converting supplier

description: The name of the component.

description: The supplier of the raw String data we will use as input.

description: The function that will convert the string data.

description: Epoch Millis Relative Date supplier

description: The name of the component.

description: The amount of time units we need to add to the current date time.

description: The value we want to be relative to (in case it is not the current time).

description: File content supplier

description: The name of the component.

description: The path of the file we want to use as input.

description: The charset used for reading the contents of the file. Defaults to UTF-8.

description: HTTP resource content supplier

description: The name of the component.

description: The URI we want to send the request to.

description: The HTTP request method we want to use. Defaults to GET.

description: HTTP headers we want to send with our request.

description: The charset used for reading the contents of the response. Defaults to UTF-8.

description: JSON schema supplier

description: The name of the component.

description: The supplier of the String of the JSON Schema which we will use as input.

description: Relative String Date supplier

description: The name of the component.

description: SchemaStore schema supplier

description: The name of the component.

description: The name of the JSON schema as found in the SchemaStore.org catalog.

description: Static Boolean supplier

description: The name of the component.

description: The static value that must be returned each time the supplier is called.

description: Static BigDecimal supplier

description: The name of the component.

description: Static BigInteger supplier

description: The name of the component.

description: Static JSON supplier

description: The name of the component.

description: The static JSON value we want to supply every time our supplier is called.

description: Static String supplier

description: The name of the component.

enum: file httpResource relativeStringDate schemaStore staticString

enum: converting epochMillisRelativeDate file httpResource jsonSchema relativeStringDate schemaStore staticBoolean staticDecimal staticInteger staticJson staticString

description: Definition of known rule types

description: Add

description: The name of the component.

description: Additional parameters of the rule.

description: The supplier that will define the key of the new node.

description: The supplier that will define the value assigned to the new node identified by the key.

description: Calculate

description: The name of the component.

description: Additional parameters of the rule.

description: The predicate that will determine whether we should apply the function.

description: The function that will tell the rule what kind of calculation needs to be done.

description: Copy

description: The name of the component.

description: Additional parameters of the rule.

description: The supplier that will define the key we want to copy.

description: The destination path where this rule will attempt to create the copied node.

description: Delete

description: The name of the component.

description: Delete from

description: The name of the component.

description: Additional parameters of the rule.

description: Determines whether any deletion should be performed for the matching node

description: The predicate that will be used to test whether a key should be kept, keeping only the matching keys.

description: The predicate that will be used to test whether a key should be deleted, deleting all the matching keys.

description: The predicate that will be used to test whether an entry should be deleted, deleting all of them with matching values.

description: Rename

description: The name of the component.

description: Additional parameters of the rule.

description: Provides the name of the key we want to rename under the node matching the `path` parameter at the time of evaluation.

description: Provides the new name we want to use after the child node was renamed.

description: Replace

description: The name of the component.

description: Additional parameters of the rule.

description: Adds an opportunity to filter by value before we apply the replace `stringFunction`.

description: Defines how the existing value needs to change during the operation.

description: Replace map

description: The name of the component.

description: Additional parameters of the rule.

description: The predicate that will determine whether we need to run the rule on the matching path.

description: The function that defines the transformation which needs to be done on the selected map/object.

description: JSON Schema validate

description: The name of the component.

description: Must be the root JSON Path as the validator cannot work on sub-schema.

description: Additional parameters of the rule.

description: The supplier providing the schema we will use for validation.

description: Defines how the transformation should handle a validation failure.

description: Defines how the rule should document/report the violations.

description: The name of the rule.

enum: add calculate copy delete deleteFrom rename replace replaceMap validate

description: The optional parameter map to allow configuration of the selected rule.

description: The name of the action (rule list) to allow selecting it when we want to start transformation.

description: The array of rules representing the sequentially triggered steps of the transformation action.

description: The array of transformation action we will be able to select from at startup.


nodehawkrc.json

$id: #/properties/paths

description: A string or an array of paths to watch. Supports globbing.

default: ./src

$id: #/properties/root

description: The root path from which all other paths will be resolved.

$id: #/properties/ignored

description: Paths, globs or regular expressions to ignore.

$id: #/properties/exec

description: The command to execute on file change.

examples:
babel-node src/server
ts-node src/server

$id: #/properties/port

description: The port on which the server should run. This is passed to your application as `process.env.PORT` which should be used by you.

$id: #/properties/logLevel

description: The level of logging. 0 - fatal, 1 - error, 2 - warning, 3 - info, 4 - debug

$id: #/properties/buffer

description: The buffer duration to wait before triggering a restart.

$id: #/properties/bufferPoll

description: The buffer polling interval to check for the file stability.

$id: #/properties/display

description: The various messages to display during different events.

description: The message to display before the watcher starts.

default: Starting...

$id: #/properties/display/properties/onStart

description: The message to display after the watcher starts.

default: Started

description: The message to display before the watcher restarts.

default: Restarting...

description: The message to display after the watcher restarts.

default: Restarted

description: The message to display before the watcher stops.

default: Stopping...

$id: #/properties/clearScreen

description: Clear the screen on start and on every restart.

$id: #/properties/env

description: A set of key-value pairs which will be promptly passed on to your process and accessible via `process.env`.

title: Nodehawk configuration schema.


hawkconfig.json

title: com.stackhawk.nest.HawkScanMessages$HawkscanConf

$ref: #/definitions/HawkConf

description: Parameters for scanner runtime and how it should look for vulnerabilities.

$ref: #/definitions/AppConf

description: **Required** Parameters for the target application and specifics for how it should be scanned.

$ref: #/definitions/HawkAddOnConf

description: Parameters for additional HawkScan add-ons.

description: Searchable keywords to associate with this scan

$ref: #/definitions/Tag

$ref: #/definitions/Spider

description: Spider configuration

description: Maximum time in minutes to wait for the scanner process to start

description: The lowest alert level that returns a failed scan status. Accepted values: high, medium, or low

$ref: #/definitions/ScanConf

description: Scan Configuration

description: Scanner configuration overrides, provided as a list of strings.

$ref: #/definitions/Proxy

description: Configuration for an outbound proxy

description: Enable the basic web crawler for discovering your application’s routes. This spider is appropriate for most traditional web applications.

description: Enable the ajax web crawler for discovering your application’s routes. This spider is appropriate for single-page web applications.

description: Maximum allowed time for enabled spiders to crawl your web application. defaults to 5

description: The browser to type and style to use when running the AjaxSpider. This value is ignored when running the hawkscan docker container and use's the default FIREFOX_HEADLESS.

description: List of seed paths to add to the site tree. Will be crawled in addition to the root of the application. Used to add unreachable paths to the scanner.

$ref: #/definitions/CustomDiscovery

$ref: #/definitions/PostmanConfig

description: api key to authenticated the user with Postman

description: Id of the collection to be pulled from Postman

description: File path of the Postman collection

type: number string

description: Maximum duration that a scan will run.

description: Maximum duration that a scan will spend on a rule.

description: Delay time between sending requests.

description: Number of request threads. _If you need that little extra push._ defaults to 20

description: Pause active scan when passive backlog is greater than this value, resumes once backlog is empty. defaults to 50

description: Name of the scan policy to use. This field is optional and defaults will be selected if omitted

description: Specify to only run  scan on the listed plugins

description: **Required**. The host of the outbound proxy

$ref: #/definitions/ProxyCredentials

description: Credentials for logging into the proxy

description: **Required**. The username for proxy credentials

description: **Required**. The password for proxy credentials

description: Realm for proxy credentials

description: Scheme of auth: BASIC, NTLM,

description: **Required** The base url of the application to scan ex: `http://localhost:8000`. If the url cannot be reached, the scan will not proceed.

description: The names of any session tokens used by your application, provided as an array of strings (Hint: these are the names of session cookies used by your application).

description: The name of your CSRF security parameter used in any application form inputs. Globally set, HawkScan will parse this parameter value from form responses to use in subsequent requests.

$ref: #/definitions/Authentication

description: Authenticated scan configuration

description: An array of strings, used as regexes to match against routes that should be ignored entirely by HawkScan. This field is useful for prohibiting asset directories or other resources that don’t require vulnerability scanning. (TODO: ADD EXAMPLE)

description: **Required**. The `applicationId` of an application from the StackHawk platform

description: **Required**. The `env` environment name to organize Scan Results

$ref: #/definitions/GraphQLConf

description: GraphQL API scanner parameters.

description: An array of strings, used as regexes to constrain the application routes HawkScan will specifically visit. This field is useful for constraining the reach of the HawkScan scanner and spider. (TODO: add examples)

description: Set to `true` to enable an optimized policy when scanning specific APIs like GraphQL and OpenAPI. Defaults to True

description: Set to `true` to automatically enabled the correct input data types when scanning API’s like GraphQL and OpenAPI. This can increase scan accuracy and reduce false positives. Defaults to True

$ref: #/definitions/OpenApiConf

description: OpenApi scanner parameters.

$ref: #/definitions/SoapConf

description: SOAP API scanner parameters.

$ref: #/definitions/GrpcConf

description: gRPC scanner parameters

$ref: #/definitions/InputVectorParams

description: Fine grained control of injectable input vectors

$ref: #/definitions/WaitForAppTarget

description: Adds a wait time for app to startup

$ref: #/definitions/AppRedactions

description: Specification for additional redaction of words in the scan logs

required: host applicationId env

description: Optional configuration specifying a username and password based authentication configuration. Do not configure if using `external`.

$ref: #/definitions/ExternalCredentials

description: Optional configuration block for specifying an externally supplied authorization token. Do not configure if using `usernamePassword`.

$ref: #/definitions/AuthenticationScript

description: Optional configuration block for using an authentication script.

$ref: #/definitions/TokenExtraction

description: Optional configuration block for extracting the authorization token from the authentication response.

$ref: #/definitions/CookieAuthorization

description: Optional configuration specifying if authorization is maintained via a cookie session. Do not configure if using `tokenAuthorization`.

$ref: #/definitions/TokenAuthorization

description: Optional configuration telling HawkScan how to pass the authorization token to your application on each request to maintain authorized access. Do not configure if using `cookieAuthorization`.

$ref: #/definitions/SessionScript

description: Optional configuration for using a session management script.

description: **Required**. A regex to match against http responses from pages in the web application to determine if the scanned pages user session is still logged in to the app, provided as a string (ex. `"\\Qsigned in as\\E"`).

description: **Required**. A regex to match against http responses from pages in the web application to determine if the scanned pages user session is logged out of the app, provided as a string

$ref: #/definitions/AuthTestPath

description: A configuration block specifying how to verify authentication/authorization is working

description: The path to your login form, if applicable. This is an optional path but is often required if the `POST` to the loginPath requires an anti csrf token to be passed as part of the `POST`. The `app.antiCsrfParam` will be extracted from the response body of a GET request to this page.

description: **Required** login route to `POST` credentials for a user in the application (ex. `/login`). An http `POST` request using the type specified will be made to this path.

description: **Required** the username html field used in your application form or json, provided as a string.

description: **Required** The password html field used in your application form or json, provided as a string.

description:
*Required** The username credentials provided to authentication when attempting to login to the web application, provided as a string.
HawkScan best practices recommend using [environment variable runtime overrides](https://docs.stackhawk.com/hawkscan/configuration/#environment-variable-runtime-overrides) for this value (ex. "${SCAN_USERNAME:admin}" will use the $SCAN_USERNAME environment variable as the scanUsername, or fallback to admin).

description:
*Required** The password credentials provided to authentication when attempting to login to the web application, provided as a string.
HawkScan best practices recommend using [environment variable runtime overrides](https://docs.stackhawk.com/hawkscan/configuration/#environment-variable-runtime-overrides) for this value (ex. "${SCAN_PASSWORD}" will use the $SCAN_PASSWORD environment variable as the scanPassword).

description: An enum value describing the type of `POST` data expected by the `loginPath`

enum: FORM JSON HTTP

description: Other request parameters required by your login payload, provided as an array of objects with `name` and `value` string keys. This setting is helpful if your authentication process requires other parameters included in the form POST besides the username and password parameters. If in doubt, this setting can be safely left unconfigured.

$ref: #/definitions/NameValParam

description: Realm for NTLM authentication

required: loginPath usernameField passwordField scanUsername scanPassword

description: Specifies the type of token being supplied. If `COOKIE` is specified the .external.value should be in the form of a cookie value <cookie-name>=<cookie-value> . Defaults to `Token`.

enum: TOKEN COOKIE

description: The value pairs containing the token that will authorize requests. How the token is passed to your application is determined by the assigned `type`.

description: The name of the authentication script specified in the hawkAddOn.scripts.name

description: The parameters required for the authentication script.

description: The credentials required for the authentication script. These values will be redacted.

description: Specifying `TOKEN_PATH` tells HawkScan to extract the token from the JSON payload of the response from authentication. `HEADER` tells HawkScan to extract the token from a header in the response from authentication. defaults to `TOKEN_PATH`.

description:
*Required**. String containing the path to the token in the JSON payload authentication response or the name of the response header containing the token.
Example: if the authentication response JSON payload looks like `{"auth" : {"token": "<my-auth-token>"}}` the value would be `auth.token`. If the authentication response has a header named `AuthToken: <my-token>`, then the value should be `AuthToken`.

description: A list of strings that are the names of cookies used for maintaining a session. Typically this is one value like `jsessionid` or `PHPSESS`. When used in combination with authentication HawkScan will use this value to persist authenticated session state with your application.

description:
An enum value representing how to pass the authorization token to your application.
`HEADER` indicates that each request should have the authorization token header added to the requests.
`QUERY_PARAM` indicates that the token should be passed as a query parameter.

description: **Required** The name of the `HEADER` or `QUERY_PARAM` the token should be passed as.

description: The name of the session script specified in the hawkAddOn.scripts.name

description: The parameters required for the session script.

description: An enum value representing what to match against in the response from issuing a GET request to the `testPath.path`. The supported values are `HEADER` and `BODY`.

description: **Required**. The path to a protected route in your application that requires authorization. For example `/mysettings`. A `GET` request will be made to this path using the configured authentication.

description:
A regex that will match against the response header or body, specified by `type`, of the GET request to the `path`.
A match of the regex supplied will indicate that scanning should proceed with the specified authentication.

description:
A regex that will match against the response header or body, specified by `type`, of the GET request to the `path`.
A match of the regex supplied will indicate that scanning should halt and enter an error state.

description: Request method to use for queries. Will generate GraphQL queries as either POST payloads or GET uri strings.

description: The request content to send along with POST or PUT requests for authentication verification.

description:
List of key/value pairs to be included as headers in the request to the `path`.
Headers that match the following pattern are unable to be added or modified `'^(Host|Origin|Proxy-.*|Sec-.*|Content-Length)'`.

description: Path to the GraphQL introspection endpoint, relative to the target URI

description: Max length of URIs when generation queries for GET requests.

description: Maximum depth for generated query graphs

description: Enable GraphQL scan support. HawkScan will enumerate all possible field types and input values for GraphQL Queries and Mutations. Provide relative path to the API endpoint.

description: GraphQL operation to enumerate and scan. Defaults to find all Query and Mutation operations.

description: Relative path to a JSON formatted GraphQL schema (default: None)

description: GraphQL operations to exclude from the spider

description: Enables faker for a GraphQL scan to generate more realistic values when format is provided on the API spec or custom variables.

description: Define custom variables and values for use in GraphQL scanning.

description: The field name of the param to inject values into

description: A list of possible values to be randomly selected for the given field

description: An optional operationName that will only inject custom values if the name of the operation on the request matches

description: An optional GraphQL operation type (MUTATION or QUERY) that will inject custom values only when the request matches the operation type

description: A string relative path to an OpenAPI specification file (JSON or YAML) from the specified app.host

description:
Relative path to specification file(s) (JSON or YAML).
The path is relative to the `/hawk` mount point specified by the `-v` docker run argument. ie: `docker run -v $(pwd):/hawk`.

description: Define your openapi specification yaml inlined as a string.

description: Enable strict parsing of the openapi.

description: Define custom variables and values for use in REST API scanning.

description: When custom variables are provided, DELETE's are skipped for injection. Set this to true to override this default and include all methods in variable injection.

description: List of methods to include in custom variable injection. Note: if 'includeAllMethods' is set to true, this list is ignored and all methods will be used for custom variable injection.

description: Enables faker for a REST API scan to generate more realistic values when format is provided on the API spec or custom variables.

description:
Maximum number of aliases for a collection when parsing YAML.
 Increase this value if you see the error "Number of aliases for non-scalar nodes exceeds the specified max=100"

description: An optional path regex that will only inject custom values if the path of the request matches

description: A list of optional HTTP request methods that will inject custom values only when the request matches one of those methods.

description: Host path to the SOAP WSDL, prefixed with a `/`

description: Relative path to the SOAP WSDL schema definition file

description: Host path for the grpc reflection endpoint.

description: Relative path to the grpc protobuf file

description: Define custom variables and values for use in gRPC scanning.

description: The path to a public reachable route in your application. For example `/index`. A `GET` request will be made to this path to confirm the host is up and ready to receive traffic.

description: The request content to send along with POST or PUT requests for target verification.

description: The maximum amount of time in milliseconds that HawkScan will wait for your app to be available before it starts scanning

description: The maximum amount of time in milliseconds in between requests to your application to see if it's running

description: List of string header names: the values of HTTP headers matching these names will be redacted from alerts and logs.

description: List of string static values: the values here will be added to the redacted token list. This is best used with ${ENV_VAR:default} interpolation.

description: Configuration for the replacer addOn

description: List of configurations for custom scripts.

description: List of regex match and replace rules for request headers.

description: If `replaceOnly` is false, only match the header name. If `replaceOnly` is true, matches the exact string on the header line.

description: If false, replace existing header value or add the missing header using replacement as the value. If true, only replace the matchString of an existing header line.

description: Enable regex search for `matchString`. Useful when `replaceOnly` is true (e.g. `Referer:.*` will replace the entire `Referer:` header line)

description: the name of this custom script

enum: active authentication httpsender passive proxy standalone targeted session

description: Path to the file location for the custom script

description: Named variables to expose to the script

description: **Required**. The language of this script

description: Plugin Id for script

description: The keyword name.

description: An arbitrary value to associate with the keyword.


solution-filter.json

description: Solution filter description

description: Path to filtered solution. Should be relative to current .slnf

description: List of projects that will be included in filitered solution. Paths should be relative to solution rather than to .slnf

title: JSON Schema for MSBuild solution filters


rtx.json

title: rtx

description: config file for rtx version manager (.rtx.toml)

description: path to .env file

description: PATH entries to add

description: a path to add to PATH

description: environment variables

description: dev tools to use

$ref: #/$defs/tool

description: plugins to use

description: url to plugin repository

description: custom shorthands for versions

description: plugin to set aliases for

description: version alias points to

$ref: #/$defs/settings

description: version of the tool to install

description: version of the tool to install

description: settings for rtx

description: what to do when a runtime is missing

enum: ignore prompt autoinstall warn error

description: should rtx parse legacy version files (e.g. .node-version)

description: tools that should not have their legacy version files parsed

description: tool name

description: should rtx keep downloaded files after installation

description: should rtx keep install files after installation even if the installation fails

description: how often to check for plugin updates

description: how often to check for plugin updates

description: set to true to ensure .tool-versions will be compatible with asdf

description: number of tools to install in parallel, default is 4

description: directly connect plugin scripts to stdin/stdout, implies --jobs=1

description: path to file containing shorthand mappings

description: disables built-in shorthands

description: tools that should not be used

description: tool name

description: config files with these prefixes will be trusted by default

description: a path to add to PATH

description: enable experimental features

description: log level

enum: error warn info debug trace

description: display installation output


$ref: #/definitions/ComponentSpec

$ref: #/definitions/TypeSpecType

desZcription: Describes the component input specification

description: Describes the component output specification

description: Represents the command-line argument placeholder that will be replaced at run-time by the input argument value.

description: Name of the input.

description: Represents the command-line argument placeholder that will be replaced at run-time by a local file path pointing to a file containing the input argument value.

description: Name of the input.

description: Represents the command-line argument placeholder that will be replaced at run-time by a local file path pointing to a file where the program should write its output data.

description: Name of the output.

$ref: #/definitions/InputValuePlaceholder

$ref: #/definitions/InputPathPlaceholder

$ref: #/definitions/OutputPathPlaceholder

$ref: #/definitions/ConcatPlaceholder

$ref: #/definitions/IfPlaceholder

description: Represents the command-line argument placeholder that will be replaced at run-time by the concatenated values of its items.

description: Items to concatenate

$ref: #/definitions/StringOrPlaceholder

description: Represents the command-line argument placeholder that will be replaced at run-time by a boolean value specifying whether the caller has passed an argument for the specified optional input.

description: Name of the input.

$ref: #/definitions/IsPresentPlaceholder

required: cond then

$ref: #/definitions/IfConditionArgumentType

description: Docker image name.

description: Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.

description: Arguments to the entrypoint. The docker image's CMD is used if this is not provided.

description: List of environment variables to set in the container.

description: Represents the container component implementation.

$ref: #/definitions/ContainerSpec

$ref: #/definitions/ContainerImplementation

$ref: #/definitions/GraphImplementation

description: Component specification. Describes the metadata (name, description, source), the interface (inputs and outputs) and the implementation of the component.

$ref: #/definitions/InputSpec

$ref: #/definitions/ImplementationType

$ref: #/definitions/MetadataSpec

description: Component reference. Contains information that can be used to locate and load a component by name, digest or URL

description: Represents the component argument value that comes from the graph component input.

description: References the input of the graph/pipeline.

description: Represents the component argument value that comes from the output of a sibling task.

description: References the output of a sibling task.

required: taskId outputName

$ref: #/definitions/GraphInputArgument

$ref: #/definitions/TaskOutputArgument

description: Pair of operands for a binary operation.

$ref: #/definitions/ArgumentType

description: Pair of operands for a binary logical operation.

$ref: #/definitions/PredicateType

$ref: #/definitions/TwoArgumentOperands

description: Optional configuration that specifies how the task should be retried if it fails.

description: Optional configuration that specifies how the task execution may be skipped if the output data exist in cache.

description: Optional configuration that specifies how the task should be executed. Can be used to set some platform-specific options.

description: 'Task specification. Task is a configured component - a component supplied with arguments and other applied configuration changes.

description: Describes the graph component implementation. It represents a graph of component tasks connected to the upstream sources of data using the argument specifications. It also describes the sources of graph output values.

description: Represents the graph component implementation.

description: The object that can be sent to the backend to start a new Run.


motif.schema.json

title: Motif Config

markdownDescription: This is your project's main configuration file. It is a JSON file, and includes information such as `head` data and template mappings. It can be accessed via the project settings (Ctrl+, (PC) / Cmd+, (Mac)) → _General_ → _Open motif.json_. Alternatively, you can find it at the top level of your project source tree.

markdownDescription: If set, this title will be used for your pages whenever your pages don't specify a `title` entry in the [metadata](https://motif.land/docs/basics/metadata).

markdownDescription: A title template for your pages. The `%s` part will be replaced with your page's title.

markdownDescription: The base of a canonical URL link tag.

markdownDescription: Google Analytics tracking IDs, as explained in the [Google Analytics](https://motif.land/docs/guides/google-analytics) guide, to set up analytics tracking for your public pages.

$ref: #/properties/gaMeasurementId

markdownDescription:
This is a mapping between your pages, and the templates that should be used. It is automatically generated if you set a template via the page's document bar, but you can also edit it manually, for instance to set up automatic mapping rules that we describe below.
The template value (e.g. `home` or `blog-index`) must correspond to the name of the file in the `templates` folder.
Mappings are determined using a [glob syntax](https://en.wikipedia.org/wiki/Glob_(programming)), where:
- `*` means all files in a given folder. E.g. `blog/*` means any files in the `blog` folder (but not in any of its subfolders)
- `**/*` means all files in a given folder and subfolders of any depth. E.g. `blog/**/*` includes all files in the `blog` folder and its subfolders.
**Note**: The most specific rule takes precendence.

markdownDescription: This is a list of tags to inject in the `<head>` section of all your pages. This is where you load fonts, set Open Graph metadata, or load a custom stylesheet. Any HTML tags can be used.

markdownDescription: If you wish to exclude the paths of some public pages from the sitemap, you can do so by adding a `sitemap.excludePaths` entry and specify a list of paths, either explicitly, or using the glob pattern mentioned above.


drupal-routing.json

title: Route path

title: Default route parameters

title: A controller to execute when the route is matched

title: List of requirements that makes a specific route only match under specific conditions

title: Method of the incoming request to match the route

enum: GET POST PATCH PUT DELETE

title: Additional route options

title: List of callbacks to provide routes

title: JSON schema for Drupal routing file


minecraft-advancement.json

type: string boolean number array object

description: A list of additional raw JSON text components to be displayed after this one.

description: A child text component. Child text components inherit all formatting and interactivity from the parent component, unless they explicitly override them.

$ref: #/definitions/jsonTextComponent

description: The color to render the content in.

description: The resource location of the font for this component in the resource pack within assets/<namespace>/font.

description: Whether to render the content in bold.

description: Whether to render the content in italics. Note that text that is italicized by default, such as custom item names, can be unitalicized by setting this to false.

description: Whether to underline the content.

description: Whether to strikethrough the content.

description: Whether to render the content obfuscated.

description: When the text is shift-clicked by a player, this string is inserted in their chat input. It does not overwrite any existing text the player was writing. This only works in chat messages.

title: click event

description: Allows for events to occur when the player clicks on text. Only work in chat messages and written books, unless specified otherwise.

description: The action to perform when clicked.

description: The URL, file path, chat, command or book page used by the specified action.

title: hover event

description: Allows for a tooltip to be displayed when the player hovers their mouse over text.

description: The type of tooltip to show.

description: The formatting and type of this tag varies depending on the action.

title: contents

description: The formatting of this tag varies depending on the action.

description: A string containing plain text to display directly. Can also be a number or boolean that is displayed directly.

type: string number boolean

description: A translation identifier, corresponding to the identifiers found in loaded language files. Displayed as the corresponding text in the player's selected language. If no corresponding translation can be found, the identifier itself is used as the translated text.

description: A list of raw JSON text components to be inserted into slots in the translation text.

description: A raw JSON text component. If no component is provided for a slot, the slot is displayed as no text.

description:
A data pack advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: display

description:
Display options for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: icon

description:
Icon options for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
An item identifier for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
A named binary tag of an item for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: title

description:
A title for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
A frame type for the icon for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

enum: challenge goal task

default: task

description:
A background directory for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: description

description:
A description for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
Whether or not to show the toast pop up after completing the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
Whether or not to announce in the chat when the current advancement has been completed
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
Whether or not to hide this advancement and all its children from the advancement screen until the current advancement have been completed
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
A parent directory for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: criterias

description:
Required criterias have to be met for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: criteria

description:
Required criteria have to be met for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
A trigger for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Criteria

description:
Conditions need to be met when the trigger gets activated for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Criteria

title: player options

description:
Check properties of the player for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Criteria

type: array object

description:
Requirements for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
Criterions for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
Criterion name for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: rewards

description:
Rewards for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
Recipes to unlock for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
A namespaced identifier for a recipe for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
Loot tables to give to the player for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
A namespaced identifier for a loot table for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
An experience amount for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

description:
A function to run for the current advancement
https://minecraft.fandom.com/wiki/Advancement/JSON_format#Legend

title: data pack advancement