Optional
Readonly
consoleCustom implementation of the ConsoleSpec interface, with methods log and error, each receiving one single argument of any type. Useful to capture the logs of the application.
Optional
Readonly
delayThe default delay.
It can be changed at request level in the hook method through mock.setDelay.
Optional
Readonly
harTime in milliseconds during which a har file is kept in memory after its last usage.
Optional
Readonly
harUsed only when the mocks format is 'har', specifies a list of mime types that will attempt to parse the request/response body as JSON. If the list includes an empty string: '' and there is no mimeType set in the request, it will attempt to parse the body as JSON. This will only be applicable to request bodies if saveInputRequestBody is set to true Default value will be [] and will only be overridden by setHarMimeTypesParseJson
Optional
Readonly
hostnameThe hostname on which the proxy should listen.
Uses 127.0.0.1
by default, which only allows local connections.
To allow remote connections, use the ip address of the specific network interface that should be allowed to connect
or the unspecified IPv4 (0.0.0.0
) or IPv6 (::
) address.
Optional
Readonly
http2Enables http/2.0 protocol in the kassette server.
Optional
Readonly
mocksWhen the mocks format is 'folder', specifies the default root folder of all mocks, from which specific mocks paths will be resolved.
It can be changed at a request level in the hook method through mock.setMocksFolder.
Optional
Readonly
mocksThe default mocks format.
It can be changed at request level in the hook method through mock.setMocksFormat.
The default value of the global mocksFormat
setting is folder
, except in the following case:
if the global mocksHarFile setting is defined
and the global mocksFolder setting is not defined,
then the default value of the global mocksFormat
setting is har
.
Optional
Readonly
mocksWhen the mocks format is 'har', specifies
the default har file to use. If the file name has the .yml
or .yaml
extension, the YAML format
is used instead of the standard JSON format to read and write the file.
It can be changed at a request level in the hook method through mock.setMocksHarFile.
Optional
Readonly
mocksFunction called to get or set the key of a mock in a har file, as explained in HarKeyManager.
It can be changed at a request level in the hook method through mock.setMocksHarKeyManager.
Optional
Readonly
modeThe default mode.
It can be changed at request level in the hook method through mock.setMode.
Optional
Readonly
portThe port on which the proxy should listen. Note that kassette accepts both http and https connections on this port.
If the port is not available, it will fail and stop the program; try again with another, available port. If the port is set to 0, the proxy will listen on a random port (actually depends on the OS implementation): use the callback onListen to catch its value.
Optional
Readonly
proxyDefault mode for CONNECT
requests.
It can be changed at a request level in the onProxyConnect method through setMode.
Optional
Readonly
remoteURLThe URL of the remote backend, from which only the protocol, hostname and port are used.
Can be left null
, in which case anything leading to sending the request to the remote backend will trigger an exception.
Can also contain the special "*"
value, which means reading from the request the remote backend to target. This is useful when using kassette as a browser proxy.
It can be changed at a request level in the hook method through mock.setRemoteURL.
Optional
Readonly
saveWhether to save the content used to create a checksum when creating a new mock with a checksum.
The default value of the global saveChecksumContent
setting is true
.
It can be changed at request level in the hook method through mock.setSaveChecksumContent.
Optional
Readonly
saveWhether to save detailed timings when creating a new mock.
The default value of the global saveDetailedTimings
setting is true
.
It can be changed at request level in the hook method through mock.setSaveDetailedTimings.
Optional
Readonly
saveWhether to save the forwarded request body when creating a new mock.
The default value of the global saveForwardedRequestData
setting is null
, which means
true
when mocksFormat
is folder
(for backward-compatibility), and
false
when mocksFormat
is har
.
It can be changed at request level in the hook method through mock.setSaveForwardedRequestBody.
Optional
Readonly
saveWhether to save the forwarded request data (headers, method, URL) when creating a new mock.
The default value of the global saveForwardedRequestData
setting is null
, which means
true
when mocksFormat
is folder
(for backward-compatibility), and
false
when mocksFormat
is har
.
It can be changed at request level in the hook method through mock.setSaveForwardedRequestData.
Optional
Readonly
saveWhether to save the content of the input request body when creating a new mock.
The default value of the global saveInputRequestBody
setting is true
.
It can be changed at request level in the hook method through mock.setSaveInputRequestBody.
Optional
Readonly
saveWhether to save the input request data (headers, method, URL) when creating a new mock.
The default value of the global saveInputRequestData
setting is true
.
It can be changed at request level in the hook method through mock.setSaveInputRequestData.
Optional
Readonly
skipIf true, will simplify the logging output, logging only one line when the request is received but nothing else afterwards.
Optional
Readonly
tlsCAKeyPath to a PEM-encoded CA (Certificate Authority) certificate and key file, created if it does not exist. If not provided, the certificate and key are generated but only kept in memory. This certificate and key are used as needed to sign certificates generated on the fly for any HTTPS connection intercepted by kassette.
Optional
Readonly
tlsSize in bits of generated RSA keys.
Optional
hookCallback called for every HTTP request that kassette receives (with the exception of CONNECT
requests,
which trigger the call of onProxyConnect instead).
exposes the API to control how to process the request
Optional
onCallback called when the proxy is programmatically closed (which can be done by using the callback returned from runFromAPI)
Optional
onOptional
onCallback called when kassette receives a request with the CONNECT method, which usually happens when kassette is used as a browser proxy and the browser is trying to connect to a secure web site with the https protocol.
exposes the API to control how to process the request
Augments the CLI spec to add all pure runtime properties, that can be defined through the configuration file only