• Home
  • Dynatrace API
  • Configuration
  • Services
  • Detection rules
  • JSON models

Service detection 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

FullWebRequestRule

The FullWebRequestRule object

The service detection rule of the FULL_WEB_REQUEST type.

ElementTypeDescription
typestring

The type of the service detection rule.

metadataConfigurationMetadata

Metadata useful for debugging

managementZonesstring[]

The management zone (specified by the ID) of the process group for which this service detection rule should be created.

You can specify only 1 management zone here.

idstring

The ID of the service detection rule.

orderstring

The order of the rule in the rules list.

The rules are evaluated from top to bottom. The first matching rule applies.

namestring

The name of the rule.

descriptionstring

A short description of the rule.

enabledboolean

The rule is enabled(true) or disabled (false).

conditionsConditionsFullWebRequestAttributeTypeDto[]

A list of conditions of the rule.

If several conditions are specified, the AND logic applies.

applicationIdApplicationId

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.
contextRootContextRoot

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.dynatrace.com/support/help/dynatrace-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.

serverNameServerName

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.

The ConfigurationMetadata object

Metadata useful for debugging

ElementTypeDescription
configurationVersionsinteger[]

A sorted list of the version numbers of the configuration.

currentConfigurationVersionsstring[]

A sorted list of version numbers of the configuration.

clusterVersionstring

Dynatrace version.

The ConditionsFullWebRequestAttributeTypeDto object

A condition of the service detection rule.

ElementTypeDescription
attributeTypestring

The type of the attribute to be checked.

The element can hold these values
  • APPLICATION_ID
  • CONTEXT_ROOT
  • PG_TAG
  • SERVER_NAME
  • URL_HOST_NAME
  • URL_PATH
compareOperationsCompareOperation[]

A list of conditions for the rule.

If several conditions are specified, the AND logic applies.

The CompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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
  • TAG -> TagCompareOperation
The element can hold these values
  • ENDS_WITH
  • EQUALS
  • EXISTS
  • GREATER_THAN
  • INT_EQUALS
  • IP_IN_RANGE
  • LESS_THAN
  • STARTS_WITH
  • STRING_CONTAINS
  • STRING_EQUALS
  • TAG

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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 element can hold these values
  • AFTER
  • BEFORE
  • BETWEEN
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN
  • SPLIT_SELECT
  • TAKE_SEGMENTS

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.dynatrace.com/support/help/dynatrace-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.

ElementTypeDescription
transformationsContextRootTransformation[]

Transformations to be applied to the detected value.

segmentsToCopyFromUrlPathinteger

The number of segments of the URL to be kept.

The URL is divided by slashes (/), the indexing starts with 1 at context root.

For example, if you specify 2 for the www.dynatrace.com/support/help/dynatrace-api/ URL, the value of support/help is used.

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.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • BEFORE -> BeforeTransformation
  • REPLACE_BETWEEN -> ReplaceBetweenTransformation
  • REMOVE_NUMBERS -> RemoveNumbersTransformation
  • REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation
  • REMOVE_IBANS -> RemoveIBANsTransformation
  • REMOVE_IPS -> RemoveIPsTransformation
The element can hold these values
  • BEFORE
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.

json
{ "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

OpaqueAndExternalWebRequestRule

The OpaqueAndExternalWebRequestRule object

The service detection rule of the OPAQUE_AND_EXTERNAL_WEB_REQUEST type.

ElementTypeDescription
typestring

The type of the service detection rule.

metadataConfigurationMetadata

Metadata useful for debugging

managementZonesstring[]

The management zone (specified by the ID) of the process group for which this service detection rule should be created.

You can specify only 1 management zone here.

idstring

The ID of the service detection rule.

orderstring

The order of the rule in the rules list.

The rules are evaluated from top to bottom. The first matching rule applies.

namestring

The name of the rule.

descriptionstring

A short description of the rule.

enabledboolean

The rule is enabled(true) or disabled (false).

conditionsConditionsOpaqueAndExternalWebRequestAttributeTypeDto[]

A list of conditions of the rule.

If several conditions are specified, the AND logic applies.

applicationIdApplicationId

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.
contextRootContextRoot

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.dynatrace.com/support/help/dynatrace-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.

portPort

The contribution to the service ID calculation from the port, where the web request has been detected.

publicDomainNamePublicDomainName

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.

The ConfigurationMetadata object

Metadata useful for debugging

ElementTypeDescription
configurationVersionsinteger[]

A sorted list of the version numbers of the configuration.

currentConfigurationVersionsstring[]

A sorted list of version numbers of the configuration.

clusterVersionstring

Dynatrace version.

The ConditionsOpaqueAndExternalWebRequestAttributeTypeDto object

A condition of the service detection rule.

ElementTypeDescription
attributeTypestring

The type of the attribute to be checked.

The element can hold these values
  • IP
  • PG_TAG
  • TOP_LEVEL_DOMAIN
  • URL
  • URL_HOST_NAME
  • URL_PATH
  • URL_PORT
compareOperationsCompareOperation[]

A list of conditions for the rule.

If several conditions are specified, the AND logic applies.

The CompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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
  • TAG -> TagCompareOperation
The element can hold these values
  • ENDS_WITH
  • EQUALS
  • EXISTS
  • GREATER_THAN
  • INT_EQUALS
  • IP_IN_RANGE
  • LESS_THAN
  • STARTS_WITH
  • STRING_CONTAINS
  • STRING_EQUALS
  • TAG

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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 element can hold these values
  • AFTER
  • BEFORE
  • BETWEEN
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN
  • SPLIT_SELECT
  • TAKE_SEGMENTS

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.dynatrace.com/support/help/dynatrace-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.

ElementTypeDescription
transformationsContextRootTransformation[]

Transformations to be applied to the detected value.

segmentsToCopyFromUrlPathinteger

The number of segments of the URL to be kept.

The URL is divided by slashes (/), the indexing starts with 1 at context root.

For example, if you specify 2 for the www.dynatrace.com/support/help/dynatrace-api/ URL, the value of support/help is used.

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.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • BEFORE -> BeforeTransformation
  • REPLACE_BETWEEN -> ReplaceBetweenTransformation
  • REMOVE_NUMBERS -> RemoveNumbersTransformation
  • REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation
  • REMOVE_IBANS -> RemoveIBANsTransformation
  • REMOVE_IPS -> RemoveIPsTransformation
The element can hold these values
  • BEFORE
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN

The Port object

The contribution to the service ID calculation from the port, where the web request has been detected.

ElementTypeDescription
doNotUseForServiceIdboolean

The port is used (false) or isn't used (true) in the service ID calculation.

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

copyFromHostNameboolean

Use (true) or don't use (false) the detected host name as base for transformation.

Not applicable if the override is specified.

This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.

json
{ "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

FullWebServiceRule

The FullWebServiceRule object

The service detection rule of the FULL_WEB_SERVICE type.

If you have a condition with the attributeType set to FRAMEWORK, the values field from compareOperations is limited to the following possible values:

  • AXIS
  • CXF
  • HESSIAN
  • JAX_WS_RI
  • JBOSS
  • JERSEY
  • PROGRESS
  • RESTEASY
  • RESTLET
  • SPRING
  • TIBCO
  • WEBLOGIC
  • WEBMETHODS
  • WEBSPHERE
  • WINK
ElementTypeDescription
typestring

The type of the service detection rule.

metadataConfigurationMetadata

Metadata useful for debugging

managementZonesstring[]

The management zone (specified by the ID) of the process group for which this service detection rule should be created.

You can specify only 1 management zone here.

idstring

The ID of the service detection rule.

orderstring

The order of the rule in the rules list.

The rules are evaluated from top to bottom. The first matching rule applies.

namestring

The name of the rule.

descriptionstring

A short description of the rule.

enabledboolean

The rule is enabled(true) or disabled (false).

conditionsConditionsFullWebServiceAttributeTypeDto[]

A list of conditions of the rule.

If several conditions are specified, the AND logic applies.

detectAsWebRequestServiceboolean

Detect the matching requests as full web services (false) or web request services (true).

Setting this field to true prevents detecting of matching requests as full web services. A web request service is created instead. If you need to further modify the resulting web request service, you need to create a separate rule of the FULL_WEB_REQUEST type.

Default is false, detecting matching requests as full web services.

webServiceNameWebServiceName

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.
webServiceNameSpaceWebServiceNameSpace

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.
applicationIdApplicationId

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.
contextRootContextRoot

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.dynatrace.com/support/help/dynatrace-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.

serverNameServerName

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.

The ConfigurationMetadata object

Metadata useful for debugging

ElementTypeDescription
configurationVersionsinteger[]

A sorted list of the version numbers of the configuration.

currentConfigurationVersionsstring[]

A sorted list of version numbers of the configuration.

clusterVersionstring

Dynatrace version.

The ConditionsFullWebServiceAttributeTypeDto object

A condition of the service detection rule.

ElementTypeDescription
attributeTypestring

The type of the attribute to be checked.

The element can hold these values
  • APPLICATION_ID
  • CONTEXT_ROOT
  • FRAMEWORK
  • IS_SOAP_SERVICE
  • PG_TAG
  • SERVER_NAME
  • URL_HOST_NAME
  • URL_PATH
  • WEBSERVICE_METHOD
  • WEBSERVICE_NAME
  • WEBSERVICE_NAMESPACE
compareOperationsCompareOperation[]

A list of conditions for the rule.

If several conditions are specified, the AND logic applies.

The CompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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
  • TAG -> TagCompareOperation
The element can hold these values
  • ENDS_WITH
  • EQUALS
  • EXISTS
  • GREATER_THAN
  • INT_EQUALS
  • IP_IN_RANGE
  • LESS_THAN
  • STARTS_WITH
  • STRING_CONTAINS
  • STRING_EQUALS
  • TAG

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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 element can hold these values
  • AFTER
  • BEFORE
  • BETWEEN
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN
  • SPLIT_SELECT
  • TAKE_SEGMENTS

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

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.dynatrace.com/support/help/dynatrace-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.

ElementTypeDescription
transformationsContextRootTransformation[]

Transformations to be applied to the detected value.

segmentsToCopyFromUrlPathinteger

The number of segments of the URL to be kept.

The URL is divided by slashes (/), the indexing starts with 1 at context root.

For example, if you specify 2 for the www.dynatrace.com/support/help/dynatrace-api/ URL, the value of support/help is used.

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.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • BEFORE -> BeforeTransformation
  • REPLACE_BETWEEN -> ReplaceBetweenTransformation
  • REMOVE_NUMBERS -> RemoveNumbersTransformation
  • REMOVE_CREDIT_CARDS -> RemoveCreditCardNumbersTransformation
  • REMOVE_IBANS -> RemoveIBANsTransformation
  • REMOVE_IPS -> RemoveIPsTransformation
The element can hold these values
  • BEFORE
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN

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.
ElementTypeDescription
transformationsTransformationBase[]

Transformations to be applied to the detected value.

valueOverridestring

The value to be used instead of the detected value.

This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.

json
{ "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

StringContainsCompareOperation

The StringContainsCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
negateboolean

Inverts the operation of the condition. Set to true to turn contains into does not contain.

If not set, then false is used.

ignoreCaseboolean

The condition is case sensitive (false) or case insensitive (true).

If not set, then false is used, making the condition case sensitive.

valuesstring[]

The value to compare to.

If several values are specified, the OR logic applies.

json
{ "type": "STRING_CONTAINS", "negate": false, "ignoreCase": true, "values": [ "compareValue1", "compareValue2" ] }

STRING_EQUALS

StringEqualsCompareOperation

The StringEqualsCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
negateboolean

Inverts the operation of the condition. Set to true to turn equals into does not equal.

If not set, then false is used.

ignoreCaseboolean

The condition is case sensitive (false) or case insensitive (true).

If not set, then false is used, making the condition case sensitive.

valuesstring[]

The value to compare to.

If several values are specified, the OR logic applies.

json
{ "type": "STRING_EQUALS", "negate": false, "ignoreCase": true, "values": [ "compareValue1", "compareValue2" ] }

STARTS_WITH

StartsWithCompareOperation

The StartsWithCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
negateboolean

Inverts the operation of the condition. Set to true to turn starts with into does not start with.

If not set, then false is used.

ignoreCaseboolean

The condition is case sensitive (false) or case insensitive (true).

If not set, then false is used, making the condition case sensitive.

valuesstring[]

The value to compare to.

If several values are specified, the OR logic applies.

json
{ "type": "STARTS_WITH", "negate": false, "ignoreCase": true, "values": [ "compareValue1", "compareValue2" ] }

ENDS_WITH

EndsWithCompareOperation

The EndsWithCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
negateboolean

Inverts the operation of the condition. Set to true to turn ends with into does not end with.

If not set, then false is used.

ignoreCaseboolean

The condition is case sensitive (false) or case insensitive (true).

If not set, then false is used, making the condition case sensitive.

valuesstring[]

The value to compare to.

If several values are specified, the OR logic applies.

json
{ "type": "ENDS_WITH", "negate": false, "ignoreCase": true, "values": [ "compareValue1", "compareValue2" ] }

EXISTS

ExistsCompareOperation

The ExistsCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
negateboolean

Inverts the operation of the condition. Set to true to turn exists into does not exist.

If not set, then false is used.

json
{ "type": "EXISTS", "negate": false }

IP_IN_RANGE

IpInRangeCompareOperation

The IpInRangeCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
negateboolean

Inverts the operation of the condition. Set to true to turn IP is in range into IP is not in range.

If not set, then false is used.

lowerstring

The lower boundary of the IP range.

upperstring

The upper boundary of the IP range.

json
{ "type": "IP_IN_RANGE", "negate": false, "lower": "192.168.0.1", "upper": "192.168.0.10" }

INT_EQUALS

IntEqualsCompareOperation

The IntEqualsCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
negateboolean

Inverts the operation of the condition. Set to true to turn equals into does not equal.

If not set, then false is used.

valuesinteger[]

The value to compare to.

If several values are specified, the OR logic applies.

json
{ "type": "INT_EQUALS", "negate": false, "values": [ 128, 258, 512 ] }

LESS_THAN

LessThanCompareOperation

The LessThanCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
valueinteger

The value to compare to.

json
{ "type": "LESS_THAN", "value": 512 }

GREATER_THAN

GreaterThanCompareOperation

The GreaterThanCompareOperation object

The condition of the rule.

The actual set of fields depends on the type of the condition. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
valueinteger

The value to compare to.

json
{ "type": "GREATER_THAN", "value": 256 }

Variations of the TransformationBase object

The TransformationBase object is the base for all transformation operations. The actual set of fields depends on the type of the transformation.

BEFORE

BeforeTransformation

The BeforeTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
delimiterstring

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.

json
{ "type": "BEFORE", "delimiter": "/" }

AFTER

AfterTransformation

The AfterTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
delimiterstring

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.

json
{ "type": "AFTER", "delimiter": "/" }

BETWEEN

BetweenTransformation

The BetweenTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
afterstring

The starting delimiter. The transformation removes everything before it. The delimiter itself is not kept.

beforestring

The ending delimiter. The transformation removes everything after it. The delimiter itself is not kept.

json
{ "type": "BETWEEN", "after": "support", "before": "/" }

REPLACE_BETWEEN

ReplaceBetweenTransformation

The ReplaceBetweenTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
afterstring

The starting delimiter. The transformation replaces everything from here until ending delimiter. The delimiter itself remain intact.

beforestring

The ending delimiter. The transformation replaces everything from starting delimiter until here. The delimiter itself remain intact.

replacementstring

The value to be used instead of the content between delimiters.

json
{ "type": "REPLACE_BETWEEN", "after": "support", "before": "/", "replacement": "newValue" }

REMOVE_NUMBERS

RemoveNumbersTransformation

The RemoveNumbersTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
minDigitCountinteger

Remove numbers that contain at least X digits.

includeHexNumbersboolean

Remove (true) or keep (false) hexadecimal numbers.

If not set, then false is used, keeping hexadecimal numbers.

json
{ "type": "REMOVE_NUMBERS", "minDigitCount": 2, "includeHexNumbers": true }

REMOVE_CREDIT_CARDS

RemoveCreditCardNumbersTransformation

The RemoveCreditCardNumbersTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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 element can hold these values
  • AFTER
  • BEFORE
  • BETWEEN
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN
  • SPLIT_SELECT
  • TAKE_SEGMENTS
json
{ "type": "REMOVE_CREDIT_CARDS" }

REMOVE_IBANS

RemoveIBANsTransformation

The RemoveIBANsTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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 element can hold these values
  • AFTER
  • BEFORE
  • BETWEEN
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN
  • SPLIT_SELECT
  • TAKE_SEGMENTS
json
{ "type": "REMOVE_IBANS" }

REMOVE_IPS

RemoveIPsTransformation

The RemoveIPsTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • 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 element can hold these values
  • AFTER
  • BEFORE
  • BETWEEN
  • REMOVE_CREDIT_CARDS
  • REMOVE_IBANS
  • REMOVE_IPS
  • REMOVE_NUMBERS
  • REPLACE_BETWEEN
  • SPLIT_SELECT
  • TAKE_SEGMENTS
json
{ "type": "REMOVE_IPS" }

SPLIT_SELECT

SplitSelectTransformation

The SplitSelectTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
delimiterstring

The delimiter for splitting the detected value. The delimiter itself is not kept.

itemIndexinteger

The index of the element in the split array to be used. Indexing starts with 1.

json
{ "type": "SPLIT_SELECT", "delimiter": "/", "itemIndex": 2 }

TAKE_SEGMENTS

TakeSegmentsTransformation

The TakeSegmentsTransformation 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. Find the list of actual objects in the description of the type field or see Service detection API - JSON models.

ElementTypeDescription
segmentCountinteger

The number of elements to be kept.

delimiterstring

The delimiter for splitting the detected value. The delimiter itself is not kept.

takeFromEndboolean

Keeps the first (false) or last (true) elements.

If not set, then false is used, keeping the first elements.

json
{ "type": "TAKE_SEGMENTS", "delimiter": "/", "takeFromEnd": false }