Service detection rules API - JSON models
JSON models of the Service detection rules API vary greatly, depending on the type of some objects. Here you can find JSON models for each variation.
Variations of the ServiceDetectionRule
object
The ServiceDetectionRule
object is the base for all service detection rules. The actual set of fields depends on the type of the rule.
FULL_WEB_REQUEST
The FullWebRequestRule object
The service detection rule of the FULL_WEB_REQUEST
type.
Element | Type | Description | Required |
---|---|---|---|
type | string | optional | |
metadata | ConfigurationMetadata |
Metadata useful for debugging. |
optional |
id | string |
The ID of the service detection rule. |
optional |
order | string |
The order of the rule in the rules list. The rules are evaluated from top to bottom. The first matching rule applies. |
optional |
name | string |
The name of the rule. |
required |
description | string |
A short description of the rule. |
optional |
enabled | boolean |
The rule is enabled( |
required |
conditions | ConditionsFullWebRequestAttributeTypeDto[] |
A list of conditions of the rule. If several conditions are specified, the AND logic applies. |
optional |
applicationId | ApplicationId |
How to handle the detected ID of the application. |
optional |
contextRoot | ContextRoot |
How to handle the detected context root of the request URL. |
optional |
serverName | ServerName |
How to handle the detected server name of the request URL. |
optional |
The ServerName object
The contribution to the service ID calculation from the detected server name.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The ContextRoot object
The contribution to the service ID calculation from the detected context root.
The context root is the first segment of the request URL after server name. For example, in the www.dexp.ae/support/help/extend-DESK/DESK-api/
URL the context root is support
.
You have two options:
- Keep a part of the detected URL. Specify the number of segments to be kept in the segmentsToCopyFromUrlPath field.
- Dynamically transform the detected URL. Specify the transformation parameters in the transformations field.
You can use one or both options. If you use both, the transformation applies to the modified URL.
Element | Type | Description | Required |
---|---|---|---|
segmentsToCopyFromUrlPath | integer |
The number of segments of the URL to be kept. The URL is divided by slashes ( For example, if you specify |
optional |
transformations | ContextRootTransformation[] |
Transformations to be applied to the detected value. |
optional |
The ContextRootTransformation object
Configuration of transformation of the detected value.
If several transformations are specified, they are handled sequentially from top to bottom. Each transformation is applied to the result of the preceding transformation. For example, the second transformation is applied to the result of the first transformation.
The actual set of fields depends on the type
of the transformation.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation The type element can hold these values. |
required |
The ApplicationId object
The contribution to the service ID calculation from the detected application ID.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The TransformationBase object
Configuration of transformation of the detected value.
If several transformations are specified, they are handled sequentially from top to bottom. Each transformation is applied to the result of the preceding transformation. For example, the second transformation is applied to the result of the first transformation.
The actual set of fields depends on the type
of the transformation.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
The ConditionsFullWebRequestAttributeTypeDto object
A condition of the service detection rule.
Element | Type | Description | Required |
---|---|---|---|
attributeType | string |
The type of the attribute to be checked. The attributeType element can hold these values. |
required |
compareOperations | CompareOperation[] |
A list of conditions for the rule. If several conditions are specified, the AND logic applies. |
optional |
The CompareOperation object
The condition of the rule.
The actual set of fields depends on the type
of the condition.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
The ConfigurationMetadata object
Metadata useful for debugging
Element | Type | Description | Required |
---|---|---|---|
configurationVersions | integer[] |
A Sorted list of the version numbers of the configuration. |
optional |
clusterVersion | string |
DESK server version. |
optional |
Possible values
Possible values for the type element in the ContextRootTransformation object:
- BEFORE
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
Possible values for the type element in the TransformationBase object:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
Possible values for the type element in the CompareOperation object:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
Possible values for the attributeType element in the ConditionsFullWebRequestAttributeTypeDto object:
- APPLICATION_ID
- CONTEXT_ROOT
- SERVER_NAME
- URL_HOST_NAME
- URL_PATH
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.
{
"type": "FULL_WEB_REQUEST",
"id": "f69d6702-9b6e-4c47-b94c-628acc391995",
"order": "1",
"name": "string",
"description": "string",
"enabled": true,
"conditions": [
{
"attributeType": "URL_PATH",
"compareOperations": [
{
"type": "STRING_CONTAINS",
"negate": false,
"ignoreCase": true,
"values": [
"string"
]
}
]
}
],
"applicationId": {
"transformations": [],
"valueOverride": "string"
},
"contextRoot": {
"transformations": [
{
"type": "AFTER",
"delimiter": "string"
}
],
"segmentsToCopyFromUrlPath": 2
},
"serverName": {
"transformations": [
{
"type": "BEFORE",
"delimiter": "string"
}
]
}
}
OPAQUE_AND_EXTERNAL_WEB_REQUEST
The OpaqueAndExternalWebRequestRule object
The service detection rule of the OPAQUE_AND_EXTERNAL_WEB_REQUEST
type.
Element | Type | Description | Required |
---|---|---|---|
type | string | optional | |
metadata | ConfigurationMetadata |
Metadata useful for debugging. |
optional |
id | string |
The ID of the service detection rule. |
optional |
order | string |
The order of the rule in the rules list. The rules are evaluated from top to bottom. The first matching rule applies. |
optional |
name | string |
The name of the rule. |
required |
description | string |
A short description of the rule. |
optional |
enabled | boolean |
The rule is enabled( |
required |
conditions | ConditionsOpaqueAndExternalWebRequestAttributeTypeDto[] |
A list of conditions of the rule. If several conditions are specified, the AND logic applies. |
optional |
applicationId | ApplicationId |
How to handle the detected ID of the application. |
optional |
contextRoot | ContextRoot |
How to handle the detected context root of the request URL. |
optional |
port | Port |
How to handle the port where the opaque request has been detected. |
optional |
publicDomainName | PublicDomainName |
How to handle the domain name where the opaque request has been detected. |
optional |
The PublicDomainName object
The contribution to the service ID calculation from the domain name where the web request has been detected.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
copyFromHostName | boolean |
Use ( Not applicable if the override is specified. |
optional |
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The Port object
The contribution to the service ID calculation from the port, where the web request has been detected.
Element | Type | Description | Required |
---|---|---|---|
doNotUseForServiceId | boolean |
The port is used ( |
optional |
The ContextRoot object
The contribution to the service ID calculation from the detected context root.
The context root is the first segment of the request URL after server name. For example, in the www.dexp.ae/support/help/extend-DESK/DESK-api/
URL the context root is support
.
You have two options:
- Keep a part of the detected URL. Specify the number of segments to be kept in the segmentsToCopyFromUrlPath field.
- Dynamically transform the detected URL. Specify the transformation parameters in the transformations field.
You can use one or both options. If you use both, the transformation applies to the modified URL.
Element | Type | Description | Required |
---|---|---|---|
segmentsToCopyFromUrlPath | integer |
The number of segments of the URL to be kept. The URL is divided by slashes ( For example, if you specify |
optional |
transformations | ContextRootTransformation[] |
Transformations to be applied to the detected value. |
optional |
The ContextRootTransformation object
Configuration of transformation of the detected value.
If several transformations are specified, they are handled sequentially from top to bottom. Each transformation is applied to the result of the preceding transformation. For example, the second transformation is applied to the result of the first transformation.
The actual set of fields depends on the type
of the transformation.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation The type element can hold these values. |
required |
The ApplicationId object
The contribution to the service ID calculation from the detected application ID.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The TransformationBase object
Configuration of transformation of the detected value.
If several transformations are specified, they are handled sequentially from top to bottom. Each transformation is applied to the result of the preceding transformation. For example, the second transformation is applied to the result of the first transformation.
The actual set of fields depends on the type
of the transformation.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
The ConditionsOpaqueAndExternalWebRequestAttributeTypeDto object
A condition of the service detection rule.
Element | Type | Description | Required |
---|---|---|---|
attributeType | string |
The type of the attribute to be checked. The attributeType element can hold these values. |
required |
compareOperations | CompareOperation[] |
A list of conditions for the rule. If several conditions are specified, the AND logic applies. |
optional |
The CompareOperation object
The condition of the rule.
The actual set of fields depends on the type
of the condition.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
The ConfigurationMetadata object
Metadata useful for debugging
Element | Type | Description | Required |
---|---|---|---|
configurationVersions | integer[] |
A Sorted list of the version numbers of the configuration. |
optional |
clusterVersion | string |
DESK server version. |
optional |
Possible values
Possible values for the type element in the ContextRootTransformation object:
- BEFORE
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
Possible values for the type element in the TransformationBase object:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
Possible values for the type element in the CompareOperation object:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
Possible values for the attributeType element in the ConditionsOpaqueAndExternalWebRequestAttributeTypeDto object:
- IP
- TOP_LEVEL_DOMAIN
- URL
- URL_HOST_NAME
- URL_PATH
- URL_PORT
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.
{
"type": "OPAQUE_AND_EXTERNAL_WEB_REQUEST",
"id": "9c22d0b1-e731-4baf-b3d0-140d14ead3c5",
"order": "2",
"name": "string",
"description": "string",
"enabled": true,
"conditions": [
{
"attributeType": "TOP_LEVEL_DOMAIN",
"compareOperations": [
{
"type": "ENDS_WITH",
"negate": false,
"ignoreCase": true,
"values": [
"string"
]
}
]
}
],
"applicationId": null,
"contextRoot": {
"transformations": [],
"segmentsToCopyFromUrlPath": 1
},
"port": null,
"publicDomainName": null
}
FULL_WEB_SERVICE
The FullWebServiceRule object
The service detection rule of the FULL_WEB_SERVICE
type.
Possible values for FRAMEWORK attribute type:
- JAX_WS_RI
- AXIS
- CXF
- JBOSS
- WEBSPHERE
- SPRING
- PROGRESS
- HESSIAN
- WEBMETHODS
- JERSEY
- RESTLET
- RESTEASY
- WINK
- TIBCO
- WEBLOGIC
Element | Type | Description | Required |
---|---|---|---|
type | string | optional | |
metadata | ConfigurationMetadata |
Metadata useful for debugging. |
optional |
id | string |
The ID of the service detection rule. |
optional |
order | string |
The order of the rule in the rules list. The rules are evaluated from top to bottom. The first matching rule applies. |
optional |
name | string |
The name of the rule. |
required |
description | string |
A short description of the rule. |
optional |
enabled | boolean |
The rule is enabled( |
required |
conditions | ConditionsFullWebServiceAttributeTypeDto[] |
A list of conditions of the rule. If several conditions are specified, the AND logic applies. |
optional |
detectAsWebRequestService | boolean |
Detect the matching requests as a web request service.
If |
optional |
webServiceName | WebServiceName |
How to handle the detected name of the web service. |
optional |
webServiceNameSpace | WebServiceNameSpace |
How to handle the detected name space of the web service. |
optional |
applicationId | ApplicationId |
How to handle the detected ID of the application. |
optional |
contextRoot | ContextRoot |
How to handle the detected context root of the service URL. |
optional |
serverName | ServerName |
How to handle the detected server name of the service URL. |
optional |
The ServerName object
The contribution to the service ID calculation from the detected server name.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The ContextRoot object
The contribution to the service ID calculation from the detected context root.
The context root is the first segment of the request URL after server name. For example, in the www.dexp.ae/support/help/extend-DESK/DESK-api/
URL the context root is support
.
You have two options:
- Keep a part of the detected URL. Specify the number of segments to be kept in the segmentsToCopyFromUrlPath field.
- Dynamically transform the detected URL. Specify the transformation parameters in the transformations field.
You can use one or both options. If you use both, the transformation applies to the modified URL.
Element | Type | Description | Required |
---|---|---|---|
segmentsToCopyFromUrlPath | integer |
The number of segments of the URL to be kept. The URL is divided by slashes ( For example, if you specify |
optional |
transformations | ContextRootTransformation[] |
Transformations to be applied to the detected value. |
optional |
The ContextRootTransformation object
Configuration of transformation of the detected value.
If several transformations are specified, they are handled sequentially from top to bottom. Each transformation is applied to the result of the preceding transformation. For example, the second transformation is applied to the result of the first transformation.
The actual set of fields depends on the type
of the transformation.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation The type element can hold these values. |
required |
The ApplicationId object
The contribution to the service ID calculation from the detected application ID.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The WebServiceNameSpace object
The contribution to the service ID calculation from the detected web service name space.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The WebServiceName object
The contribution to the service ID calculation from the detected web service name.
You have two mutually exclusive options:
- Override the detected value with a specified static value. Specify the new value in the valueOverride field.
- Dynamically transform the detected value. Specify the transformation parameters in the transformations field.
Element | Type | Description | Required |
---|---|---|---|
valueOverride | string |
The value to be used instead of the detected value. |
optional |
transformations | TransformationBase[] |
Transformations to be applied to the detected value. |
optional |
The TransformationBase object
Configuration of transformation of the detected value.
If several transformations are specified, they are handled sequentially from top to bottom. Each transformation is applied to the result of the preceding transformation. For example, the second transformation is applied to the result of the first transformation.
The actual set of fields depends on the type
of the transformation.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
The ConditionsFullWebServiceAttributeTypeDto object
A condition of the service detection rule.
Element | Type | Description | Required |
---|---|---|---|
attributeType | string |
The type of the attribute to be checked. The attributeType element can hold these values. |
required |
compareOperations | CompareOperation[] |
A list of conditions for the rule. If several conditions are specified, the AND logic applies. |
optional |
The CompareOperation object
The condition of the rule.
The actual set of fields depends on the type
of the condition.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
The ConfigurationMetadata object
Metadata useful for debugging
Element | Type | Description | Required |
---|---|---|---|
configurationVersions | integer[] |
A Sorted list of the version numbers of the configuration. |
optional |
clusterVersion | string |
DESK server version. |
optional |
Possible values
Possible values for the type element in the ContextRootTransformation object:
- BEFORE
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
Possible values for the type element in the TransformationBase object:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
Possible values for the type element in the CompareOperation object:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
Possible values for the attributeType element in the ConditionsFullWebServiceAttributeTypeDto object:
- APPLICATION_ID
- CONTEXT_ROOT
- FRAMEWORK
- IS_SOAP_SERVICE
- SERVER_NAME
- URL_HOST_NAME
- URL_PATH
- WEBSERVICE_METHOD
- WEBSERVICE_NAME
- WEBSERVICE_NAMESPACE
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.
{
"type": "FULL_WEB_SERVICE",
"id": "string",
"order": "1",
"name": "string",
"description": "string",
"enabled": true,
"conditions": [
{
"attributeType": "URL_PATH",
"compareOperations": [
{
"type": "STRING_CONTAINS",
"negate": false,
"ignoreCase": true,
"values": [
"string"
]
}
]
}
],
"detectWebRequestOnly": false,
"webServiceName" : {
"valueOverride": "string",
"transformations": []
},
"webServiceNameSpace": {
"valueOverride": "string",
"transformations": []
},
"applicationId": {
"transformations": [],
"valueOverride": "string"
},
"contextRoot": {
"transformations": [
{
"type": "AFTER",
"delimiter": "string"
}
],
"segmentsToCopyFromUrlPath": 2
},
"serverName": {
"transformations": [
{
"type": "BEFORE",
"delimiter": "string"
}
]
}
}
Variations of the CompareOperation
object
The CompareOperation
object is the base for all comparison operations. The actual set of fields depends on the type of the comparison.
STRING_CONTAINS
The StringContainsCompareOperation object
The condition of the STRING_CONTAINS
type.
The condition checks whether the string value contains the specified text.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
negate | boolean |
Inverts the operation of the condition. Set to If not set, then |
optional |
ignoreCase | boolean |
The condition is case sensitive ( If not set, then |
optional |
values | string[] |
The value to compare to. If several values are specified, the OR logic applies. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "STRING_CONTAINS",
"negate": false,
"ignoreCase": true,
"values": [
"compareValue1",
"compareValue2"
]
}
STRING_EQUALS
The StringEqualsCompareOperation object
The condition of the STRING_EQUALS
type.
The condition checks whether the string value equals the specified text.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
negate | boolean |
Inverts the operation of the condition. Set to If not set, then |
optional |
ignoreCase | boolean |
The condition is case sensitive ( If not set, then |
optional |
values | string[] |
The value to compare to. If several values are specified, the OR logic applies. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "STRING_EQUALS",
"negate": false,
"ignoreCase": true,
"values": [
"compareValue1",
"compareValue2"
]
}
STARTS_WITH
The StartsWithCompareOperation object
The condition of the STARTS_WITH
type.
The condition checks whether the string value starts with the specified text.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
negate | boolean |
Inverts the operation of the condition. Set to If not set, then |
optional |
ignoreCase | boolean |
The condition is case sensitive ( If not set, then |
optional |
values | string[] |
The value to compare to. If several values are specified, the OR logic applies. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "STARTS_WITH",
"negate": false,
"ignoreCase": true,
"values": [
"compareValue1",
"compareValue2"
]
}
ENDS_WITH
The EndsWithCompareOperation object
The condition of the ENDS_WITH
type.
The condition checks whether the string value ends with the specified text.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
negate | boolean |
Inverts the operation of the condition. Set to If not set, then |
optional |
ignoreCase | boolean |
The condition is case sensitive ( If not set, then |
optional |
values | string[] |
The value to compare to. If several values are specified, the OR logic applies. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "ENDS_WITH",
"negate": false,
"ignoreCase": true,
"values": [
"compareValue1",
"compareValue2"
]
}
EXISTS
The ExistsCompareOperation object
The condition of the EXISTS
type.
The condition checks whether the specified attribute exists.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
negate | boolean |
Inverts the operation of the condition. Set to If not set, then |
optional |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "EXISTS",
"negate": false
}
IP_IN_RANGE
The IpInRangeCompareOperation object
The condition of the IP_IN_RANGE
type.
The condition checks whether the IP address belongs to a specified range.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
negate | boolean |
Inverts the operation of the condition. Set to If not set, then |
optional |
lower | string |
The lower boundary of the IP range. |
required |
upper | string |
The upper boundary of the IP range. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "IP_IN_RANGE",
"negate": false,
"lower": "192.168.0.1",
"upper": "192.168.0.10"
}
INT_EQUALS
The IntEqualsCompareOperation object
The condition of the INT_EQUALS
type.
The condition checks whether the integer value equals the specified value.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
negate | boolean |
Inverts the operation of the condition. Set to If not set, then |
optional |
values | integer[] |
The value to compare to. If several values are specified, the OR logic applies. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "INT_EQUALS",
"negate": false,
"values": [
128,
258,
512
]
}
LESS_THAN
The LessThanCompareOperation object
The condition of the LESS_THAN
type.
The condition checks whether the integer value is less than the specified value.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
value | integer |
The value to compare to. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "LESS_THAN",
"value": 512
}
GREATER_THAN
The GreaterThanCompareOperation object
The condition of the GREATER_THAN
type.
The condition checks whether the integer value is greater than the specified value.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: EQUALS -> EqualsCompareOperation STRING_CONTAINS -> StringContainsCompareOperation STARTS_WITH -> StartsWithCompareOperation ENDS_WITH -> EndsWithCompareOperation EXISTS -> ExistsCompareOperation IP_IN_RANGE -> IpInRangeCompareOperation LESS_THAN -> LessThanCompareOperation GREATER_THAN -> GreaterThanCompareOperation INT_EQUALS -> IntEqualsCompareOperation STRING_EQUALS -> StringEqualsCompareOperation The type element can hold these values. |
required |
value | integer |
The value to compare to. |
required |
Possible values
Possible values for the type element:
- EQUALS
- STRING_CONTAINS
- STARTS_WITH
- ENDS_WITH
- EXISTS
- IP_IN_RANGE
- LESS_THAN
- GREATER_THAN
- INT_EQUALS
- STRING_EQUALS
{
"type": "GREATER_THAN",
"value": 256
}
Variations of the Transformation
object
The Transformation
object is the base for all transformation operations. The actual set of fields depends on the type of the transformation.
BEFORE
The transformation of the BEFORE
type.
The transformation keeps the value before the specified delimiter and removes everything after it.
Element | Type | Description | Required |
---|---|---|---|
type | string | The type of the transformation. | required |
delimiter | string | The delimiter of the transformation. The transformation keeps everything before this delimiter and removes everything after it. The delimiter itself is not kept. If several delimiters appear in the initial value, only the first one is used. |
required |
{
"type": "BEFORE",
"delimiter": "/"
}
AFTER
The transformation of the AFTER
type.
The transformation removes everything before the specified delimiter and keeps the value after it.
Element | Type | Description | Required |
---|---|---|---|
type | string | The type of the transformation. | required |
delimiter | string | The delimiter of the transformation. The transformation removes everything before this delimiter and keeps everything after it. The delimiter itself is not kept. If several delimiters appear in the initial value, only the first one is used. |
required |
{
"type": "AFTER",
"delimiter": "/"
}
BETWEEN
The transformation of the BETWEEN
type.
The transformation keeps the value between the specified delimiters and removes everything outside them.
Element | Type | Description | Required |
---|---|---|---|
type | string | The type of the transformation. | required |
after | string | The starting delimiter. The transformation removes everything before it. The delimiter itself is not kept. | required |
{
"type": "BETWEEN",
"after": "support",
"before": "/"
}
REPLACE_BETWEEN
The ReplaceBetweenTransformation object
The transformation of the REPLACE_BETWEEN
type.
The transformation replaces the content in between specified delimiters with specified static value and removes everything outside them.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
after | string |
The starting delimiter. The transformation removes everything before it. The delimiter itself is not kept. |
required |
before | string |
The ending delimiter. The transformation removes everything after it. The delimiter itself is not kept. |
required |
replacement | string |
The value to be used instead of the detected value. |
required |
Possible values
Possible values for the type element:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
{
"type": "REPLACE_BETWEEN",
"after": "support",
"before": "/",
"replacement": "newValue"
}
REMOVE_NUMBERS
The RemoveNumbersTransformation object
The transformation of the REMOVE_NUMBERS
type.
The transformation removes any numbers from the detected value.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
minDigitCount | integer |
Remove numbers that contain at least X digits. |
required |
includeHexNumbers | boolean |
Remove ( If not set, then |
optional |
Possible values
Possible values for the type element:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
{
"type": "REMOVE_NUMBERS",
"minDigitCount": 2,
"includeHexNumbers": true
}
REMOVE_CREDIT_CARDS
The RemoveCreditCardNumbersTransformation object
The transformation of the REMOVE_CREDIT_CARDS
type.
The transformation automatically detects and removes credit card numbers. No additional parameters needed.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
Possible values
Possible values for the type element:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
{
"type": "REMOVE_CREDIT_CARDS"
}
REMOVE_IBANS
The RemoveIBANsTransformation object
The transformation of the REMOVE_IBANS
type.
The transformation automatically detects and removes International Bank Account Numbers (IBAN). No additional parameters needed.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
Possible values
Possible values for the type element:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
{
"type": "REMOVE_IBANS"
}
REMOVE_IPS
The RemoveIPsTransformation object
The transformation of the REMOVE_IPS
type.
The transformation automatically detects and removes IP addresses. No additional parameters needed.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
Possible values
Possible values for the type element:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
{
"type": "REMOVE_IPS"
}
SPLIT_SELECT
The SplitSelectTransformation object
The transformation of the SPLIT_SELECT
type.
The transformation splits the detected value into an array and keeps the specified element of the array.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
delimiter | string |
The delimiter for splitting the detected value. The delimiter itself is not kept. |
required |
itemIndex | integer |
The index of the element in the split array to be used. Indexing starts with |
required |
Possible values
Possible values for the type element:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
{
"type": "SPLIT_SELECT",
"delimiter": "/",
"itemIndex": 2
}
TAKE_SEGMENTS
The TakeSegmentsTransformation object
The transformation of the TAKE_SEGMENTS
type.
The transformation splits the detected value into an array and keeps the specified number of first or last elements.
Element | Type | Description | Required |
---|---|---|---|
type | string |
Defines the actual set of fields depending on the value: BEFORE -> BeforeTransformation AFTER -> AfterTransformation BETWEEN -> BetweenTransformation REPLACE_BETWEEN -> ReplaceBetweenTransformation REMOVE_NUMBERS -> RemoveNumbersTransformation REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation REMOVE_IBANS -> RemoveIBANsTransformation REMOVE_IPS -> RemoveIPsTransformation SPLIT_SELECT -> SplitSelectTransformation TAKE_SEGMENTS -> TakeSegmentsTransformation The type element can hold these values. |
required |
segmentCount | integer |
The number of elements to be kept. |
required |
delimiter | string |
The delimiter for splitting the detected value. The delimiter itself is not kept. |
required |
takeFromEnd | boolean |
Keeps the first ( If not set, then |
optional |
Possible values
Possible values for the type element:
- BEFORE
- AFTER
- BETWEEN
- REPLACE_BETWEEN
- REMOVE_NUMBERS
- REMOVE_CREDIT_CARDS
- REMOVE_IBANS
- REMOVE_IPS
- SPLIT_SELECT
- TAKE_SEGMENTS
{
"type": "TAKE_SEGMENTS",
"delimiter": "/",
"takeFromEnd": false
}