Classic Environment V2
Documentation of the Dynatrace Environment API v2. Resources here generally supersede those in v1. Migration of resources from v1 is in progress.
If you miss a resource, consider using the Dynatrace Environment API v1.
To read about use cases and examples, see Dynatrace Documentation.
To authorize, use a valid access token or personal access token. For usage in a Dynatrace app, refer to the Dynatrace Developer documentation.
Notes about compatibility:
- Operations marked as early adopter or preview may be changed in non-compatible ways, although we try to avoid this.
- We may add new enum constants without incrementing the API version; thus, clients need to handle unknown enum constants gracefully.
npm install @dynatrace-sdk/client-classic-environment-v2
accessTokensActiveGateTokensClient
import { accessTokensActiveGateTokensClient } from '@dynatrace-sdk/client-classic-environment-v2';
createToken
Creates a new ActiveGate token
One of the following scopes is required:
- environment-api:activegate-tokens:create
- environment-api:activegate-tokens:write
Required permission: environment:roles:manage-settings
The newly created token will be owned by the same user who owns the token used for authentication of the call.
Parameters
Name | Type |
---|---|
config.body*required | ActiveGateTokenCreate |
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateTokenCreated | 201 | Success. The token has been created. The body of the response contains the token secret. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { accessTokensActiveGateTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensActiveGateTokensClient.createToken({
body: {
activeGateType: "ENVIRONMENT",
name: "myToken",
},
});
getToken
Gets metadata of an ActiveGate token
Required scope: environment-api:activegate-tokens:read Required permission: environment:roles:manage-settings
The token secret is not exposed.
Parameters
Name | Type | Description |
---|---|---|
config.activeGateTokenIdentifier*required | string | The ActiveGate token identifier, consisting of prefix and public part of the token. |
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateToken | 200 | Success. The response contains the metadata of the tokens. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { accessTokensActiveGateTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensActiveGateTokensClient.getToken({
activeGateTokenIdentifier: "...",
});
listTokens
Lists all available ActiveGate tokens
Required scope: environment-api:activegate-tokens:read Required permission: environment:roles:manage-settings
You can limit the output by using pagination:
- Specify the number of results per page in the pageSize query parameter.
- Use the cursor from the nextPageKey field of the previous response in the nextPageKey query parameter to obtain subsequent pages.
Parameters
Name | Type | Description |
---|---|---|
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of ActiveGate tokens in a single response payload. The maximal allowed page size is 3000 and the minimal size is 100. If not set, 100 is used. |
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateTokenList | 200 | Success. The response contains the list of ActiveGate tokens. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { accessTokensActiveGateTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensActiveGateTokensClient.listTokens();
revokeToken
Deletes an ActiveGate token
Required scope: environment-api:activegate-tokens:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.activeGateTokenIdentifier*required | string | The ActiveGate token identifier, consisting of prefix and public part of the token to be deleted. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { accessTokensActiveGateTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensActiveGateTokensClient.revokeToken({
activeGateTokenIdentifier: "...",
});
accessTokensAgentTokensClient
import { accessTokensAgentTokensClient } from '@dynatrace-sdk/client-classic-environment-v2';
getAgentConnectionToken
Gets the agent connection token | maturity=EARLY_ADOPTER
Required scope: environment-api:agent-connection-tokens:read Required permission: environment:roles:agent-install
Returns the agent connection token.
Returns
Return type | Status code | Description |
---|---|---|
AgentConnectionToken | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { accessTokensAgentTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensAgentTokensClient.getAgentConnectionToken();
accessTokensApiTokensClient
import { accessTokensApiTokensClient } from '@dynatrace-sdk/client-classic-environment-v2';
createApiToken
Creates a new API token
Required scope: environment-api:api-tokens:write Required permission: environment:roles:viewer
The newly created token will be owned by the same user who owns the token used for authentication of the call.
Creating personal access tokens requires the environment:roles:viewer
permission. Creating access tokens requires the environment:roles:manage-settings
permission.
Parameters
Name | Type |
---|---|
config.body*required | ApiTokenCreate |
Returns
Return type | Status code | Description |
---|---|---|
ApiTokenCreated | 201 | Success. The token has been created. The body of the response contains the token secret. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { accessTokensApiTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensApiTokensClient.createApiToken({
body: { name: "tokenName", scopes: ["metrics.read"] },
});
deleteApiToken
Deletes an API token
Required scope: environment-api:api-tokens:write Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the token to be deleted. You can specify either the ID or the secret of the token. You can't delete the token you're using for authentication of the request. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. You can't delete the token you're using for authentication of the request. | Client side error. | Server side error. |
Code example
import { accessTokensApiTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensApiTokensClient.deleteApiToken({
id: "...",
});
getApiToken
Gets API token metadata by token ID
Required scope: environment-api:api-tokens:read Required permission: environment:roles:viewer
The token secret is not exposed.
Parameters
Name | Type |
---|---|
config.id*required | string |
Returns
Return type | Status code | Description |
---|---|---|
ApiToken | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { accessTokensApiTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await accessTokensApiTokensClient.getApiToken({
id: "...",
});
listApiTokens
Lists all available API tokens
Required scope: environment-api:api-tokens:read Required permission: environment:roles:viewer
You can limit the output by using pagination:
- Specify the number of results per page in the pageSize query parameter.
- Use the cursor from the nextPageKey field of the previous response in the nextPageKey query parameter to obtain subsequent pages.
Parameters
Name | Type | Description |
---|---|---|
config.apiTokenSelector | string | Filters the resulting sets of tokens. Only tokens matching the specified criteria are included into response. You can set one or more of the following criteria:
To set multiple criteria, separate them with commas ( |
config.fields | string | Specifies the fields to be included in the response. The following fields are included by default:
To remove fields from the response, specify them with the minus ( You can include additional fields:
To add fields to the response, specify them with the plus ( Alternatively, you can define the desired set of fields in the response. Specify the required fields as a comma-separated list, without operators (for example, The fields string must be URL-encoded. |
config.from | string | Filters tokens based on the last usage time. The start of the requested timeframe. You can use one of the following formats:
|
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of API tokens in a single response payload. The maximal allowed page size is 10000 and the minimal allowed page size is 100. If not set, 200 is used. |
config.sort | string | The sort order of the token list. You can sort by the following properties with a sign prefix for the sort order:
If no prefix is set, + is used. If not set, tokens are sorted by creation date with newest first. |
config.to | string | Filters tokens based on the last usage time. The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
ApiTokenList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { accessTokensApiTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensApiTokensClient.listApiTokens();
lookupApiToken
Gets API token metadata by token secret
Required scope: environment-api:api-tokens:read Required permission: environment:roles:viewer
Parameters
Name | Type |
---|---|
config.body*required | ApiTokenSecret |
Returns
Return type | Status code | Description |
---|---|---|
ApiToken | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { accessTokensApiTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensApiTokensClient.lookupApiToken({
body: {
token:
"dt0c01.ST2EY72KQINMH574WMNVI7YN.G3DFPBEJYMODIDAEX454M7YWBUVEFOWKPRVMWFASS64NFH52PX6BNDVFFM572RZM",
},
});
updateApiToken
Updates an API token
Required scope: environment-api:api-tokens:write Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.body*required | ApiTokenUpdate | |
config.id*required | string | The ID of the token to be updated. You can't disable the token you're using for authentication of the request. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { accessTokensApiTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensApiTokensClient.updateApiToken({
id: "...",
body: {},
});
accessTokensTenantTokensClient
import { accessTokensTenantTokensClient } from '@dynatrace-sdk/client-classic-environment-v2';
cancelRotation
Cancels tenant token rotation
Required scope: environment-api:tenant-token-rotation:write Required permission: environment:roles:manage-settings
To learn how to rotate tokens, see Token rotation in Dynatrace Documentation.
Returns
Return type | Status code | Description |
---|---|---|
TenantTokenConfig | 200 | Success. Rotation process has been cancelled. The current tenant token remains valid. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. There is no ongoing rotation process. | Client side error. | Server side error. |
Code example
import { accessTokensTenantTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensTenantTokensClient.cancelRotation();
finishRotation
Finishes tenant token rotation
Required scope: environment-api:tenant-token-rotation:write Required permission: environment:roles:manage-settings
To learn how to rotate tokens, see Token rotation in Dynatrace Documentation.
Returns
Return type | Status code | Description |
---|---|---|
TenantTokenConfig | 200 | Success. The rotation process is completed. The active field of the response contains the new tenant token. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | No ongoing rotation process. | Client side error. | Server side error. |
Code example
import { accessTokensTenantTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensTenantTokensClient.finishRotation();
startRotation
Starts tenant token rotation
Required scope: environment-api:tenant-token-rotation:write Required permission: environment:roles:manage-settings
To learn how to rotate tokens, see Token rotation in Dynatrace Documentation.
Returns
Return type | Status code | Description |
---|---|---|
TenantTokenConfig | 200 | Success. The new tenant token is created and will replace the old one. The active field of the response contains the new tenant token. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Another rotation process is already in progress. | Client side error. | Server side error. |
Code example
import { accessTokensTenantTokensClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await accessTokensTenantTokensClient.startRotation();
activeGatesActiveGateGroupsClient
import { activeGatesActiveGateGroupsClient } from '@dynatrace-sdk/client-classic-environment-v2';
getActiveGateGroups
Lists ActiveGate groups
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateGroups | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { activeGatesActiveGateGroupsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesActiveGateGroupsClient.getActiveGateGroups();
activeGatesAutoUpdateConfigurationClient
import { activeGatesAutoUpdateConfigurationClient } from '@dynatrace-sdk/client-classic-environment-v2';
getAutoUpdateConfigById
Gets the configuration of auto-update for the specified ActiveGate
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateAutoUpdateConfig | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Not found. See response body for details. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateConfigurationClient.getAutoUpdateConfigById(
{ agId: "..." },
);
getGlobalAutoUpdateConfigForTenant
Gets the global auto-update configuration of environment ActiveGates.
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateGlobalAutoUpdateConfig | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateConfigurationClient.getGlobalAutoUpdateConfigForTenant();
putAutoUpdateConfigById
Updates the configuration of auto-update for the specified ActiveGate
Required scope: environment-api:activegates:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
config.body*required | ActiveGateAutoUpdateConfig |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The auto-update configuration have been updated. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateConfigurationClient.putAutoUpdateConfigById(
{ agId: "...", body: { setting: "INHERITED" } },
);
putGlobalAutoUpdateConfigForTenant
Puts the global auto-update configuration of environment ActiveGates.
Required scope: environment-api:activegates:write Required permission: environment:roles:manage-settings
Parameters
Name | Type |
---|---|
config.body*required | ActiveGateGlobalAutoUpdateConfig |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The global auto-update configuration have been updated. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateConfigurationClient.putGlobalAutoUpdateConfigForTenant(
{ body: { globalSetting: "ENABLED" } },
);
validateAutoUpdateConfigById
Validates the payload for the POST /activeGates/{agId}/autoUpdate
request.
Required scope: environment-api:activegates:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
config.body*required | ActiveGateAutoUpdateConfig |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Validated. The submitted auto-update configuration is valid. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateConfigurationClient.validateAutoUpdateConfigById(
{ agId: "...", body: { setting: "INHERITED" } },
);
validateGlobalAutoUpdateConfigForTenant
Validates the payload for the POST /activeGates/autoUpdate
request.
Required scope: environment-api:activegates:write Required permission: environment:roles:manage-settings
Parameters
Name | Type |
---|---|
config.body*required | ActiveGateGlobalAutoUpdateConfig |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Validated. The submitted configuration is valid. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateConfigurationClient.validateGlobalAutoUpdateConfigForTenant(
{ body: { globalSetting: "ENABLED" } },
);
activeGatesAutoUpdateJobsClient
import { activeGatesAutoUpdateJobsClient } from '@dynatrace-sdk/client-classic-environment-v2';
createUpdateJobForAg
Creates a new update job for the specified ActiveGate
Required scope: environment-api:activegates:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
config.body*required | UpdateJob |
Returns
Return type | Status code | Description |
---|---|---|
UpdateJob | 201 | Success. The update-job have been created. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateJobsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateJobsClient.createUpdateJobForAg(
{
agId: "...",
body: { targetVersion: "1.190.0.20200301-130000" },
},
);
deleteUpdateJobByJobIdForAg
Deletes the specified update job
Required scope: environment-api:activegates:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
config.jobId*required | string | A unique identifier for a update-job of ActiveGate. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The update-job have been deleted. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Not found. See response body for details. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateJobsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateJobsClient.deleteUpdateJobByJobIdForAg(
{ agId: "...", jobId: "..." },
);
getAllUpdateJobList
List ActiveGates with update jobs
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
The response includes ActiveGates that have both completed (successful and failed) jobs and jobs in progress.
Parameters
Name | Type | Description |
---|---|---|
config.from | string | The start of the requested timeframe for update jobs. You can use one of the following formats:
If not set, the relative timeframe of one day is used ( Maximum timeframe is 31 days. |
config.lastUpdates | boolean | If true , filters the resulting set of update jobs to the most recent update of each type. |
config.startVersion | string | Filters the resulting set of update-jobs by the initial version (required format <major>.<minor>.<revision> ). |
config.startVersionCompareType | "EQUAL" | "GREATER" | "GREATER_EQUAL" | "LOWER" | "LOWER_EQUAL" | Filters the resulting set of update jobs by the specified initial version. Specify the comparison operator here. |
config.targetVersion | string | Filters the resulting set of update-jobs by the target version (required format <major>.<minor>.<revision> ). |
config.targetVersionCompareType | "EQUAL" | "GREATER" | "GREATER_EQUAL" | "LOWER" | "LOWER_EQUAL" | Filters the resulting set of update jobs by the specified target version. Specify the comparison operator here. |
config.to | string | The end of the requested timeframe for update jobs. You can use one of the following formats:
If not set, the current timestamp is used. |
config.updateType | "SYNTHETIC" | "ACTIVE_GATE" | "REMOTE_PLUGIN_AGENT" | "Z_REMOTE" | Filters the resulting set of update-jobs by the update type. |
Returns
Return type | Status code | Description |
---|---|---|
UpdateJobsAll | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateJobsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateJobsClient.getAllUpdateJobList();
getUpdateJobByJobIdForAg
Gets the parameters of the specified update job
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
config.jobId*required | string | A unique identifier for a update-job of ActiveGate. |
Returns
Return type | Status code | Description |
---|---|---|
UpdateJob | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Not found. See response body for details. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateJobsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateJobsClient.getUpdateJobByJobIdForAg(
{ agId: "...", jobId: "..." },
);
getUpdateJobListByAgId
Lists update jobs for the specified ActiveGate
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
The job can update the ActiveGate to the specified version or the latest available one.
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
config.from | string | The start of the requested timeframe for update jobs. You can use one of the following formats:
If not set, the relative timeframe of one week is used ( Maximum timeframe is 31 days. |
config.lastUpdates | boolean | If true , filters the resulting set of update jobs to the most recent update of each type. |
config.startVersion | string | Filters the resulting set of update-jobs by the initial version (required format <major>.<minor>.<revision> ). |
config.startVersionCompareType | "EQUAL" | "GREATER" | "GREATER_EQUAL" | "LOWER" | "LOWER_EQUAL" | Filters the resulting set of update jobs by the specified initial version. Specify the comparison operator here. |
config.targetVersion | string | Filters the resulting set of update-jobs by the target version (required format <major>.<minor>.<revision> ). |
config.targetVersionCompareType | "EQUAL" | "GREATER" | "GREATER_EQUAL" | "LOWER" | "LOWER_EQUAL" | Filters the resulting set of update jobs by the specified target version. Specify the comparison operator here. |
config.to | string | The end of the requested timeframe for update jobs. You can use one of the following formats:
If not set, the current timestamp is used. |
config.updateType | "SYNTHETIC" | "ACTIVE_GATE" | "REMOTE_PLUGIN_AGENT" | "Z_REMOTE" | Filters the resulting set of update-jobs by the update type. |
Returns
Return type | Status code | Description |
---|---|---|
UpdateJobList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Not found. See response body for details. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateJobsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateJobsClient.getUpdateJobListByAgId(
{ agId: "..." },
);
validateUpdateJobForAg
Validates the payload for the POST /activeGates/{agId}/updateJobs
request.
Required scope: environment-api:activegates:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
config.body*required | UpdateJob |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Validated. The submitted update-job is valid. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesAutoUpdateJobsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await activeGatesAutoUpdateJobsClient.validateUpdateJobForAg(
{
agId: "...",
body: { targetVersion: "1.190.0.20200301-130000" },
},
);
activeGatesClient
import { activeGatesClient } from '@dynatrace-sdk/client-classic-environment-v2';
getAllActiveGates
Lists all available ActiveGates
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
The response includes all ActiveGates that are currently connected to the environment or have been connected during last 2 hours.
Parameters
Name | Type | Description |
---|---|---|
config.autoUpdate | "ENABLED" | "DISABLED" | Filters the resulting set of ActiveGates by the actual state of auto-update. |
config.containerized | boolean | Filters the resulting set of ActiveGates to those which are running in container (true ) or not (false ). |
config.disabledModule | Array<"SYNTHETIC" | "AWS" | "AZURE" | "BEACON_FORWARDER" | "CLOUD_FOUNDRY" | "DB_INSIGHT" | "DEBUGGING" | "EXTENSIONS_V1" | "EXTENSIONS_V2" | "KUBERNETES" | "LOGS" | "MEMORY_DUMPS" | "METRIC_API" | "ONE_AGENT_ROUTING" | "OTLP_INGEST" | "REST_API" | "VMWARE" | "Z_OS"> | Filters the resulting set of ActiveGates by the disabled modules. |
config.enabledModule | Array<"SYNTHETIC" | "AWS" | "AZURE" | "BEACON_FORWARDER" | "CLOUD_FOUNDRY" | "DB_INSIGHT" | "DEBUGGING" | "EXTENSIONS_V1" | "EXTENSIONS_V2" | "KUBERNETES" | "LOGS" | "MEMORY_DUMPS" | "METRIC_API" | "ONE_AGENT_ROUTING" | "OTLP_INGEST" | "REST_API" | "VMWARE" | "Z_OS"> | Filters the resulting set of ActiveGates by the enabled modules. |
config.fipsMode | boolean | Filters the resulting set of ActiveGates to those which are running in FIPS mode (true ) or not (false ). |
config.group | string | Filters the resulting set of ActiveGates by the group. You can specify a partial name. In that case, the |
config.hostname | string | Filters the resulting set of ActiveGates by the name of the host it's running on. You can specify a partial name. In that case, the |
config.loadBalancerAddress | string | Filters the resulting set of ActiveGates by the Load Balancer address. You can specify a partial address. In that case, the |
config.networkAddress | string | Filters the resulting set of ActiveGates by the network address. You can specify a partial address. In that case, the |
config.networkZone | string | Filters the resulting set of ActiveGates by the network zone. You can specify a partial name. In that case, the |
config.online | boolean | Filters the resulting set of ActiveGates by the communication status. |
config.osArchitecture | "S390" | "X86" | "ARM" | "PPCLE" | Filters the resulting set of ActiveGates by the OS architecture of the host it's running on. |
config.osType | "LINUX" | "WINDOWS" | Filters the resulting set of ActiveGates by the OS type of the host it's running on. |
config.tokenExpirationSet | boolean | Filters the resulting set of ActiveGates to those with set expiration date for authorization token. |
config.tokenState | "UNKNOWN" | "ABSENT" | "EXPIRING" | "INVALID" | "UNSUPPORTED" | "VALID" | Filters the resulting set of ActiveGates to those with authorization token in specified state. |
config.type | "ENVIRONMENT" | "ENVIRONMENT_MULTI" | Filters the resulting set of ActiveGates by the ActiveGate type. |
config.updateStatus | "UNKNOWN" | "INCOMPATIBLE" | "OUTDATED" | "SCHEDULED" | "SUPPRESSED" | "UP2DATE" | "UPDATE_IN_PROGRESS" | "UPDATE_PENDING" | "UPDATE_PROBLEM" | Filters the resulting set of ActiveGates by the auto-update status. |
config.version | string | Filters the resulting set of ActiveGates by the specified version. Specify the version in |
config.versionCompareType | "EQUAL" | "GREATER" | "GREATER_EQUAL" | "LOWER" | "LOWER_EQUAL" | Filters the resulting set of ActiveGates by the specified version. Specify the comparison operator here. |
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { activeGatesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await activeGatesClient.getAllActiveGates();
getOneActiveGateById
Gets the details of the specified ActiveGate
Required scope: environment-api:activegates:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.agId*required | string | The ID of the required ActiveGate. |
Returns
Return type | Status code | Description |
---|---|---|
ActiveGate | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Not found. See response body for details. | Client side error. | Server side error. |
Code example
import { activeGatesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await activeGatesClient.getOneActiveGateById({
agId: "...",
});
attacksClient
import { attacksClient } from '@dynatrace-sdk/client-classic-environment-v2';
getAttack
Gets the specified attack
Required scope: environment-api:attacks:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.fields | string | A list of additional attack properties you can add to the response. The following properties are available (all other properties are always included and you can't remove them from the response):
To add properties, specify them in a comma-separated list and prefix each property with a plus (for example, |
config.id*required | string | The ID of the attack. |
Returns
Return type | Status code | Description |
---|---|---|
Attack | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { attacksClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await attacksClient.getAttack({ id: "..." });
getAttacks
Lists all attacks
Required scope: environment-api:attacks:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.attackSelector | string | Defines the scope of the query. Only attacks matching the specified criteria are included in the response. You can add one or more of the following criteria. Values are not case-sensitive and the
To set several criteria, separate them with a comma ( Specify the value of a criterion as a quoted string. The following special characters must be escaped with a tilde (
|
config.fields | string | A list of additional attack properties you can add to the response. The following properties are available (all other properties are always included and you can't remove them from the response):
To add properties, specify them in a comma-separated list and prefix each property with a plus (for example, |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of thirty days is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of attacks in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
config.sort | string | Specifies one or more fields for sorting the attack list. Multiple fields can be concatenated using a comma ( You can sort by the following properties with a sign prefix for the sorting order.
|
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
AttackList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { attacksClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await attacksClient.getAttacks();
auditLogsClient
import { auditLogsClient } from '@dynatrace-sdk/client-classic-environment-v2';
getLog
Gets the specified entry of the audit log | maturity=EARLY_ADOPTER
Required scope: environment-api:audit-logs:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the required log entry. |
Returns
Return type | Status code | Description |
---|---|---|
AuditLogEntry | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Invalid ID format. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { auditLogsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await auditLogsClient.getLog({ id: "..." });
getLogs
Gets the audit log of your Dynatrace environment | maturity=EARLY_ADOPTER
Required scope: environment-api:audit-logs:read Required permission: environment:roles:manage-settings
You can limit the output by using pagination:
- Specify the number of results per page in the pageSize query parameter.
- Use the cursor from the nextPageKey field of the previous response in the nextPageKey query parameter to obtain subsequent pages.
Parameters
Name | Type | Description |
---|---|---|
config.filter | string | Filters the audit log. You can use the following criteria:
For each criterion, you can specify multiple alternatives with comma-separated values. In this case, the OR logic applies. For example, You can specify multiple comma-separated criteria, such as Specify the value of a criterion as a quoted string. The following special characters must be escaped with a tilde (
|
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of log entries in a single response payload. The maximal allowed page size is 5000. If not set, 1000 is used. |
config.sort | string | The sorting of audit log entries:
If not set, the newest first sorting is applied. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
AuditLog | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { auditLogsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await auditLogsClient.getLogs();
businessEventsClient
import { businessEventsClient } from '@dynatrace-sdk/client-classic-environment-v2';
ingest
Ingests a business event
Required scope: storage:events:write Required permission: storage:events:write
The maximum payload size of a single request is 5 MiB. Requests with a greater payload are rejected, and the API returns a 413 response code.
The ingestion of business events is subject to licensing (see licensing documentation).
Parameters
Name | Type |
---|---|
config.body*required | CloudEvent | Array<CloudEvent> | IngestBody |
config.type*required | "application/cloudevent+json" | "application/cloudevents+json" | "application/cloudevent-batch+json" | "application/cloudevents-batch+json" | "application/json; charset=utf-8" |
Returns
Return type | Status code | Description |
---|---|---|
void | 202 | The provided business events are all accepted and will be processed. |
Throws
Error Type | Error Message |
---|---|
BizEventIngestResultError | Some business events are invalid. Valid business events are accepted and will be processed. | Content too large | Too many requests | Service is temporarily unavailable |
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { businessEventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await businessEventsClient.ingest({
type: "application/cloudevent+json",
body: {
specversion: "1.0",
id: "1",
source: "custom.source",
type: "com.mycompany.shop.checkout",
dtcontext:
'dt.session_id="234234234324235345345",dt.entity.rum_application="APPLICATION-53453458340758",host.name="123.123.123.123"',
dataschema:
"http://dynatrace.com/schema/bizevents/generic/1.0",
traceparent:
"00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-00",
data: {
id: "OR-838475",
paymentType: "paypal",
plannedDeliveryDate: "01.01.2021",
total: 234,
},
},
});
credentialVaultClient
import { credentialVaultClient } from '@dynatrace-sdk/client-classic-environment-v2';
createCredentials
Creates a new credentials set.
Required scope: environment-api:credentials:write Required permission: environment:roles:viewer
The body must not provide an ID. An ID is assigned automatically by the Dynatrace server.
Parameters
Name | Type |
---|---|
config.body*required | Credentials |
Returns
Return type | Status code | Description |
---|---|---|
CredentialsId | 201 | Success. The new credentials set has been created. The response contains the ID of the set. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { credentialVaultClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await credentialVaultClient.createCredentials({
body: {
name: "...",
scopes: ["APP_ENGINE"],
type: "AWS_MONITORING_KEY_BASED",
},
});
getCredentials
Gets the metadata of the specified credentials set.
Required scope: environment-api:credentials:read Required permission: environment:roles:viewer
The credentials set itself (e.g. username/certificate and password) is not included in the response.
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The Dynatrace entity ID of the required credentials set. |
Returns
Return type | Status code | Description |
---|---|---|
CredentialsResponseElement | 200 | Success. The response contains the metadata of the credentials set. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { credentialVaultClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await credentialVaultClient.getCredentials({
id: "...",
});
getCredentialsDetails
Gets the details of the specified credentials set.
Required scope: environment-api:credentials:read
The credentials set including username/certificate, password or token is included in the response.
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The Dynatrace entity ID of the required credentials set. |
Returns
Return type | Status code | Description |
---|---|---|
AbstractCredentialsResponseElement | 200 | Success. The response contains the details of the credentials set. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. E.g. Requested credentials with unsupported scope. Only APP_ENGINE scope is supported. | Failed. Requested credentials belong to another user. |
Code example
import { credentialVaultClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await credentialVaultClient.getCredentialsDetails({
id: "...",
});
listCredentials
Lists all sets of credentials in your environment.
Required scope: environment-api:credentials:read Required permission: environment:roles:viewer
The credentials set itself (username/certificate and password) is not included in the response.
Parameters
Name | Type | Description |
---|---|---|
config.name | string | Filters the result by the name. When in quotation marks, whole phrase is taken. Case insensitive. |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of credentials in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
config.scope | string | Filters credentials with specified scope. |
config.type | "CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | "AWS_MONITORING_KEY_BASED" | "AWS_MONITORING_ROLE_BASED" | "SNMPV3" | Filters the result by the specified credentials type. |
config.user | string | Filters credentials accessible to the user (owned by the user or the ones that are accessible for all). |
Returns
Return type | Status code | Description |
---|---|---|
CredentialsList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { credentialVaultClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await credentialVaultClient.listCredentials();
removeCredentials
Deletes the specified credentials set
Required scope: environment-api:credentials:write Required permission: environment:roles:viewer
Provide credential ID in the path.
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the credentials set to be deleted. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The credentials set has been deleted. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { credentialVaultClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await credentialVaultClient.removeCredentials({
id: "...",
});
updateCredentials
Updates the specified credentials set.
Required scope: environment-api:credentials:write Required permission: environment:roles:viewer
The body must not provide an ID. The ID should be provided in the path.
Parameters
Name | Type | Description |
---|---|---|
config.body*required | Credentials | |
config.id*required | string | The Dynatrace entity ID of the credentials set to be updated. |
Returns
Return type | Status code | Description |
---|---|---|
CredentialsId | 201 | Success. The new credentials set has been created. The response contains the ID of the set. |
void | 204 | Success. The credentials set has been updated. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { credentialVaultClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await credentialVaultClient.updateCredentials({
id: "...",
body: {
name: "...",
scopes: ["APP_ENGINE"],
type: "AWS_MONITORING_KEY_BASED",
},
});
davisSecurityAdvisorClient
import { davisSecurityAdvisorClient } from '@dynatrace-sdk/client-classic-environment-v2';
getAdviceForSecurityProblems
Provides advice for security problems.
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
You can narrow down the output by providing the management zone and pagination. If you specify a management zone, only problems originating from that zone are included to the request.
Parameters
Name | Type | Description |
---|---|---|
config.managementZoneFilter | string | To specify management zones, use one of the options listed below. For each option you can specify multiple comma-separated values. If several values are specified, the OR logic applies. All values are case-sensitive and must be quoted.
You can specify several comma-separated criteria (for example, |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of security advices in a single response payload. The maximal allowed page size is 500. If not set, 5 is used. |
Returns
Return type | Status code | Description |
---|---|---|
DavisSecurityAdviceList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { davisSecurityAdvisorClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await davisSecurityAdvisorClient.getAdviceForSecurityProblems();
eventsClient
import { eventsClient } from '@dynatrace-sdk/client-classic-environment-v2';
createEvent
Ingests a custom event
One of the following scopes is required:
- storage:events:write
- environment-api:events:write
One of the following permissions is required:
- environment:roles:viewer
- storage:events:write
The ingestion of custom events is subject to licensing (see licensing documentation).
Parameters
Name | Type |
---|---|
config.body*required | EventIngest |
Returns
Return type | Status code | Description |
---|---|---|
EventIngestResults | 201 | The event ingest request was received by the server. The response body indicates for each event whether its creation was successful. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { eventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await eventsClient.createEvent({
body: { eventType: "AVAILABILITY_EVENT", title: "..." },
});
getEvent
Gets the properties of an event
Required scope: environment-api:events:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.eventId*required | string | The ID of the required event. |
Returns
Return type | Status code | Description |
---|---|---|
Event | 200 | Success. The response contains the configuration of the event. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { eventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await eventsClient.getEvent({
eventId: "...",
});
getEventProperties
Lists all event properties
Required scope: environment-api:events:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of event properties in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
Returns
Return type | Status code | Description |
---|---|---|
EventPropertiesList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { eventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await eventsClient.getEventProperties();
getEventProperty
Gets the details of an event property
Required scope: environment-api:events:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.propertyKey*required | string | The event property key you're inquiring. |
Returns
Return type | Status code | Description |
---|---|---|
EventPropertyDetails | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { eventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await eventsClient.getEventProperty({
propertyKey: "...",
});
getEventType
Gets the properties of an event type
Required scope: environment-api:events:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.eventType*required | string | The event type you're inquiring. |
Returns
Return type | Status code | Description |
---|---|---|
EventType | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { eventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await eventsClient.getEventType({
eventType: "...",
});
getEventTypes
Lists all event types
Required scope: environment-api:events:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of event types in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
Returns
Return type | Status code | Description |
---|---|---|
EventTypeList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { eventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await eventsClient.getEventTypes();
getEvents
Lists events within the specified timeframe
Required scope: environment-api:events:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.entitySelector | string | The entity scope of the query. You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. The number of entities that can be selected is limited to 10000. |
config.eventSelector | string | Defines the scope of the query. Only events matching the specified criteria are included in the response. You can add one or several of the criteria listed below. For each criterion you can specify multiple comma-separated values, unless stated otherwise. If several values are specified, the OR logic applies.
To set several criteria, separate them with commas ( |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two hours is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of events in a single response payload. The maximal allowed page size is 1000. If not set, 100 is used. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
EventList | 200 | Success. The response contains the list of events. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { eventsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await eventsClient.getEvents();
extensions_2_0Client
import { extensions_2_0Client } from '@dynatrace-sdk/client-classic-environment-v2';
activateExtensionEnvironmentConfiguration
Activates the environment configuration from the specified version of the extension 2.0
Required scope: environment-api:extensions:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | ExtensionEnvironmentConfigurationVersion | |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionEnvironmentConfigurationVersion | 200 | Success. Environment configuration created. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.activateExtensionEnvironmentConfiguration(
{ extensionName: "...", body: { version: "1.2.3" } },
);
createMonitoringConfiguration
Creates new monitoring configuration for the specified extension 2.0
Required scope: environment-api:extension-configurations:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | Array<MonitoringConfigurationDto> | |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
MonitoringConfigurationResponse | 200 | Success |
ErrorEnvelope | 207 | Multi-Status, if not all requests resulted in the same status |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.createMonitoringConfiguration({
extensionName: "...",
body: [{ scope: "HOST-D3A3C5A146830A79" }],
});
Parameters
Name | Type | Description |
---|---|---|
config.body*required | Array<MonitoringConfigurationDto> | |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
MonitoringConfigurationResponse | 200 | Success |
ErrorEnvelope | 207 | Multi-Status, if not all requests resulted in the same status |
deleteEnvironmentConfiguration
Deactivates the environment configuration of the specified extension 2.0
Required scope: environment-api:extensions:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:write
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionEnvironmentConfigurationVersion | 200 | Success. Environment configuration deactivated. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.deleteEnvironmentConfiguration(
{ extensionName: "..." },
);
executeExtensionMonitoringConfigurationActions
Executes Data Source action of Active Gate or Host
Required scope: environment-api:extension-configuration-actions:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configuration.actions:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | ExecuteActionsDto | |
config.configurationId*required | string | The ID of the requested monitoring configuration. |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExecuteActionsResponse | 202 | Accepted. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Authentication failed | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.executeExtensionMonitoringConfigurationActions(
{
extensionName: "...",
configurationId: "...",
body: {},
},
);
extensionConfigurationSchema
Gets the configuration schema of the specified version of the extension 2.0
One of the following scopes is required:
- environment-api:extensions:read
- environment-api:extension-configurations:read
One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
config.extensionVersion*required | string | The version of the requested extension 2.0 Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
SchemaDefinitionRestDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.extensionConfigurationSchema({
extensionName: "...",
extensionVersion: "...",
});
extensionDetails
Gets details of the specified version of the extension 2.0
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.acceptType*required | "application/json; charset=utf-8" | |
config.extensionName*required | string | The name of the requested extension 2.0. |
config.extensionVersion*required | string | The version of the requested extension 2.0 Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.extensionDetails({
acceptType: "application/json; charset=utf-8",
extensionName: "...",
extensionVersion: "...",
});
Parameters
Name | Type | Description |
---|---|---|
config.acceptType*required | "application/octet-stream" | |
config.extensionName*required | string | The name of the requested extension 2.0. |
config.extensionVersion*required | string | The version of the requested extension 2.0 Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success |
extensionMonitoringConfigurations
Lists all the monitoring configurations of the specified extension 2.0
Required scope: environment-api:extension-configurations:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:read
Parameters
Name | Type | Description |
---|---|---|
config.active | boolean | Filters the resulting set of configurations by the active state. |
config.extensionName*required | string | The name of the requested extension 2.0. |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of extensions in a single response payload. The maximal allowed page size is 100. If not set, 20 is used. |
config.version | string | Filters the resulting set of configurations by extension 2.0 version. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionMonitoringConfigurationsList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.extensionMonitoringConfigurations(
{ extensionName: "..." },
);
getActiveEnvironmentConfiguration
Gets the active environment configuration version of the specified extension 2.0
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionEnvironmentConfigurationVersion | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.getActiveEnvironmentConfiguration(
{ extensionName: "..." },
);
getActiveGateGroupsInfo
List all activeGate groups available for extension
Required scope: environment-api:extension-configurations:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:write
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
config.extensionVersion*required | string | The version of the requested extension 2.0 Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
ActiveGateGroupsInfoDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.getActiveGateGroupsInfo({
extensionName: "...",
extensionVersion: "...",
});
getAlertTemplate
Gets an alert template asset for given ID
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.assetId*required | string | ID of the requested asset. |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
AlertTemplateDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.getAlertTemplate({
extensionName: "...",
assetId: "...",
});
getEnvironmentConfigurationAssetsInfo
Gets the information about assets in an active extension 2.0
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionAssetsDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.getEnvironmentConfigurationAssetsInfo(
{ extensionName: "..." },
);
getEnvironmentConfigurationEvents
⚠️ Deprecated
List of the latest extension environment configuration events
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.content | string | Content of the event |
config.extensionName*required | string | The name of the requested extension 2.0. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two hours is used ( |
config.status | "ERROR" | "INFO" | "NONE" | "WARN" | Status of the event |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionEventsList | 200 | List of the latest extension environment configuration events |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.getEnvironmentConfigurationEvents(
{ extensionName: "..." },
);
getExtensionMonitoringConfigurationEvents
⚠️ Deprecated
Gets the list of the events linked to specific monitoring configuration
Required scope: environment-api:extension-configurations:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:read
Parameters
Name | Type | Description |
---|---|---|
config.configurationId*required | string | The ID of the requested monitoring configuration. |
config.content | string | Content of the event |
config.dtActiveGateId | string | Hexadecimal ID of Active Gate that uses this monitoring configuration. Example: |
config.dtEntityHost | string | Host that uses this monitoring configuration. Example: |
config.dtExtensionDs | string | Data source that uses this monitoring configuration. Example: |
config.extensionName*required | string | The name of the requested extension 2.0. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two hours is used ( |
config.status | "ERROR" | "INFO" | "NONE" | "WARN" | Status of the event |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionEventsList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.getExtensionMonitoringConfigurationEvents(
{ extensionName: "...", configurationId: "..." },
);
getExtensionMonitoringConfigurationStatus
Gets the most recent status of the execution of given monitoring configuration
Required scope: environment-api:extension-configurations:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:read
Parameters
Name | Type | Description |
---|---|---|
config.configurationId*required | string | The ID of the requested monitoring configuration. |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionStatusDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.getExtensionMonitoringConfigurationStatus(
{ extensionName: "...", configurationId: "..." },
);
getExtensionStatus
Gets the most recent status of the execution of monitoring configurations of given extension
Required scope: environment-api:extension-configurations:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:read
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionStatusWithIdDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.getExtensionStatus({
extensionName: "...",
});
getSchemaFile
Gets the extension 2.0 schema file in the specified version
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.fileName*required | string | The name of the schema file. |
config.schemaVersion*required | string | The version of the schema. Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
JsonNode | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.getSchemaFile({
schemaVersion: "...",
fileName: "...",
});
installExtension
Installs Extension from HUB
Required scope: environment-api:extensions:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:write
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
config.version | string | Filters the resulting set of configurations by extension 2.0 version. |
Returns
Return type | Status code | Description |
---|---|---|
RegisteredExtensionResultDto | 200 | Success. The extension 2.0 has been uploaded. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.installExtension({
extensionName: "...",
});
listExtensionInfos
Lists all the extensions 2.0 available in your environment with additional metadata
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.name | string | Filters the resulting set of extensions 2.0 by name. You can specify a partial name. In that case, the CONTAINS operator is used. |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of extensions in a single response payload. The maximal allowed page size is 100. If not set, 20 is used. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionInfoList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.listExtensionInfos();
listExtensionVersions
Lists all versions of the extension 2.0
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of extensions in a single response payload. The maximal allowed page size is 100. If not set, 20 is used. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.listExtensionVersions({
extensionName: "...",
});
listExtensions
Lists all the extensions 2.0 available in your environment
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.name | string | Filters the resulting set of extensions 2.0 by name. You can specify a partial name. In that case, the CONTAINS operator is used. |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of extensions in a single response payload. The maximal allowed page size is 100. If not set, 20 is used. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.listExtensions();
listSchemaFiles
Lists all the files available for the specified extension 2.0 schema version
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Parameters
Name | Type | Description |
---|---|---|
config.acceptType*required | "application/json; charset=utf-8" | |
config.schemaVersion*required | string | The version of the schema. Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.listSchemaFiles({
acceptType: "application/json; charset=utf-8",
schemaVersion: "...",
});
Parameters
Name | Type | Description |
---|---|---|
config.acceptType*required | "application/octet-stream" | |
config.schemaVersion*required | string | The version of the schema. Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success |
listSchemas
Lists all the extension 2.0 schemas versions available in your environment
Required scope: environment-api:extensions:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:read
Returns
Return type | Status code | Description |
---|---|---|
SchemasList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.listSchemas();
monitoringConfigurationAudit
Gets the audit logs of monitoring configuration of given extension
Required scope: environment-api:extension-configurations:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:read
Parameters
Name | Type | Description |
---|---|---|
config.configurationId*required | string | The ID of the requested monitoring configuration. |
config.extensionName*required | string | The name of the requested extension 2.0. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of extensions in a single response payload. The maximal allowed page size is 100. If not set, 20 is used. |
config.sort | string | The sorting of audit log entries:
If not set, the newest first sorting is applied. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
AuditLog | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.monitoringConfigurationAudit({
extensionName: "...",
configurationId: "...",
});
monitoringConfigurationDetails
Gets the details of the specified monitoring configuration
Required scope: environment-api:extension-configurations:read One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:read
Parameters
Name | Type | Description |
---|---|---|
config.configurationId*required | string | The ID of the requested monitoring configuration. |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionMonitoringConfiguration | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.monitoringConfigurationDetails(
{ extensionName: "...", configurationId: "..." },
);
removeExtension
Deletes the specified version of the extension 2.0
Required scope: environment-api:extensions:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:write
Parameters
Name | Type | Description |
---|---|---|
config.extensionName*required | string | The name of the requested extension 2.0. |
config.extensionVersion*required | string | The version of the requested extension 2.0 Pattern: ^(0|[1-9]\d*)(\.(0|[1-9]\d*))?(\.(0|[1-9]\d*))? |
Returns
Return type | Status code | Description |
---|---|---|
Extension | 200 | Success. The extension 2.0 version has been deleted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.removeExtension({
extensionName: "...",
extensionVersion: "...",
});
removeMonitoringConfiguration
Deletes the specified monitoring configuration
Required scope: environment-api:extension-configurations:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:write
Parameters
Name | Type | Description |
---|---|---|
config.configurationId*required | string | The ID of the requested monitoring configuration. |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.removeMonitoringConfiguration({
extensionName: "...",
configurationId: "...",
});
updateExtensionEnvironmentConfiguration
Updates the active environment configuration version of the extension 2.0
Required scope: environment-api:extensions:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | ExtensionEnvironmentConfigurationVersion | |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionEnvironmentConfigurationVersion | 200 | Success. Environment configuration updated. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.updateExtensionEnvironmentConfiguration(
{ extensionName: "...", body: { version: "1.2.3" } },
);
updateMonitoringConfiguration
Updates the specified monitoring configuration
Required scope: environment-api:extension-configurations:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:configurations:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | MonitoringConfigurationUpdateDto | |
config.configurationId*required | string | The ID of the requested monitoring configuration. |
config.extensionName*required | string | The name of the requested extension 2.0. |
Returns
Return type | Status code | Description |
---|---|---|
MonitoringConfigurationResponse | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await extensions_2_0Client.updateMonitoringConfiguration({
extensionName: "...",
configurationId: "...",
body: {},
});
uploadExtension
Uploads or verifies a new extension 2.0
Required scope: environment-api:extensions:write One of the following permissions is required:
- environment:roles:manage-settings
- extensions:definitions:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | Blob | |
config.validateOnly | boolean | Only run validation but do not persist the extension even if validation was successful. |
Returns
Return type | Status code | Description |
---|---|---|
ExtensionUploadResponseDto | 200 | The extension is valid |
ExtensionUploadResponseDto | 201 | Success. The extension 2.0 has been uploaded. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input file is invalid. | Upload not possible yet, please try again in a few seconds. | Client side error. | Server side error. |
Code example
import { extensions_2_0Client } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await extensions_2_0Client.uploadExtension({
body: new Blob(),
});
logsClient
import { logsClient } from '@dynatrace-sdk/client-classic-environment-v2';
exportLogRecords
Exports log records | maturity=EARLY_ADOPTER
Required scope: storage:logs:read One of the following permissions is required:
- environment:roles:logviewer
- storage:logs:read
Returns the first X records (specified in the pageSize query parameter).
Unlike the search API, this API does not split the result into slices and has no limit for the total number of records. Log records are sorted by the criteria specified in the sort query parameter.
In order to fetch large amount of records (exceeding the pageSize value), one should repeat the export call with nextPageKey param.
Please note that export works only for Logs Classic.
Parameters
Name | Type | Description |
---|---|---|
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The number of results per result page. |
config.query | string | The log search query. The query must use the Dynatrace search query language. |
config.sort | string | Defines the ordering of the log records. Each field has a sign prefix (+/-) for sorting order. If no sign prefix is set, then the Currently, ordering is available only for the timestamp (+timestamp for the oldest records first, or -timestamp for the newest records first). When millisecond resolution provided by the timestamp is not enough, log records are sorted based on the order in which they appear in the log source (remote process writing to REST API endpoint or remote process from which logs are collected). Pattern: ^[+-]?[a-z]+$ |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
ExportedLogRecordList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The server either does not recognize the request method, or it lacks the ability to fulfill the request. May happen when Grail log storage is enabled. | Client side error. | Server side error. |
Code example
import { logsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await logsClient.exportLogRecords();
getLogHistogramData
Gets aggregated log records | maturity=EARLY_ADOPTER
Required scope: storage:logs:read One of the following permissions is required:
- environment:roles:logviewer
- storage:logs:read
Returns the aggregated number of occurrences of log values divided into time slots.
It is possible that the timeframe covered by results exceeds the specified timeframe. In that case the request returns fewer time slots than specified in the timeBuckets query parameter.
If Log Management and Analytics, powered by Grail is enabled,
then a bearer OAuth token (with storage:logs:read
and storage:buckets:read
scopes)
needs to be used for authentication.
Please note that Dynatrace API explorer does not currently support OAuth authentication.
Logs on Grail:
It is not recommended to run Grail queries using Logs v2 API, please use Grail API instead.
Parameters
Name | Type | Description |
---|---|---|
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.groupBy | Array<string> | The groupings to be included in the response. You can specify several groups in the following format: If not set, all possible groups are returned. You can use this option to check for possible grouping values. Unique log data attributes (high-cardinality attributes) for example, |
config.maxGroupValues | number | The maximum number of values in each group. You can get up to 100 values per group. If not set, 10 is used. |
config.query | string | The log search query. The query must use the Dynatrace search query language. |
config.timeBuckets | number | The number of time slots in the result. The query timeframe is divided equally into the specified number of slots. The minimum length of a slot is 1 ms. If not set, 1 is used. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
AggregatedLog | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { logsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await logsClient.getLogHistogramData();
getLogRecords
Reads log records | maturity=EARLY_ADOPTER
Required scope: storage:logs:read One of the following permissions is required:
- environment:roles:logviewer
- storage:logs:read
Returns the first X records (specified in the limit query parameter). Log records are sorted by the criteria specified in the sort query parameter.
If the query is too large to be processed in a single request, it is divided into slices (slices are unsupported on Log Management and Analytics, powered by Grail). In that case the first response contains the nextSliceKey cursor for the second slice. Use it in the nextSliceKey query parameter to obtain the second slice, which contains nextSliceKey cursor for the third slice, and so on.
Results can be distributed unevenly between slices and some slices might be empty.
If Log Management and Analytics, powered by Grail is enabled,
then a bearer OAuth token (with storage:logs:read
and storage:buckets:read
scopes)
needs to be used for authentication.
Please note that Dynatrace API explorer does not currently support OAuth authentication.
Logs on Grail:
It is not recommended to run Grail queries using Logs v2 API, please use Grail API instead.
Parameters
Name | Type | Description |
---|---|---|
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.limit | number | The desired amount of log records. The maximal allowed limit is 1000. If not set, 1000 is used. |
config.nextSliceKey | string | The cursor for the next slice of results. You can find it in the nextSliceKey field of the previous response. The first slice is always returned if you don't specify this parameter. If this parameter is set, all other query parameters are ignored. Unsupported on Log Management and Analytics, powered by Grail. |
config.query | string | The log search query. The query must use the Dynatrace search query language. |
config.sort | string | Defines the ordering of the log records. Each field has a sign prefix (+/-) for sorting order. If no sign prefix is set, then the Currently, ordering is available only for the timestamp (+timestamp for the oldest records first, or -timestamp for the newest records first). When millisecond resolution provided by the timestamp is not enough, log records are sorted based on the order in which they appear in the log source (remote process writing to REST API endpoint or remote process from which logs are collected). Pattern: ^[+-]?[a-z]+$ |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
LogRecordsList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { logsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await logsClient.getLogRecords();
storeLog
Pushes log records to Dynatrace
Required scope: storage:logs:write Required permission: storage:logs:write
Ingested logs are stored in the indexed log storage.
This endpoint requires an ActiveGate with the Log Analytics Collector module enabled.
High-cardinality attributes:
Unique log data attributes (high-cardinality attributes) such as span_id
and trace_id
generate unnecessarily excessive facet lists that may impact log viewer performance. Because of this, they aren't listed in log viewer facets. You can still use them in a log viewer advanced search query.
Limitations:
Please refer to the following documentation pages:
Error handling:
The following HTTP status codes are considered retryable:
- 429 Too Many Requests
- 502 Bad Gateway
- 503 Service Unavailable
- 504 Gateway Timeout
It is recommended to use an exponential backoff strategy for retrying requests.
Parameters
Name | Type |
---|---|
config.body*required | LogMessageJson | LogMessagePlain |
config.type*required | "application/json" | "application/json; charset=utf-8" | "application/jsonl" | "application/jsonl; charset=utf-8" | "application/jsonlines" | "application/jsonlines+json" | "application/jsonlines+json; charset=utf-8" | "application/jsonlines; charset=utf-8" | "application/x-jsonlines" | "application/x-jsonlines; charset=utf-8" | "application/x-ndjson" | "application/x-ndjson; charset=utf-8" | "text/plain; charset=utf-8" |
Returns
Return type | Status code | Description |
---|---|---|
SuccessEnvelope | 200 | Only a part of input events were ingested due to event invalidity. For details, check the response body. |
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. This is due either to the status of your licensing agreement or because you've exhausted your DPS license. | Failed. The requested resource doesn't exist. This may happen when no ActiveGate is available with the Log Analytics Collector module enabled. | Failed. Request payload size is too big. This may happen when the payload byte size exceeds the limit or when the ingested payload is a JSON array with the size exceeding the limit. | Failed. Too Many Requests. This may happen when ActiveGate is unable to process more requests at the moment or when log ingest is disabled. Retryable with exponential backoff strategy. | Failed. The server either does not recognize the request method, or it lacks the ability to fulfil the request. In Log Monitoring Classic, this may happen when indexed log storage is not enabled. | Failed. The server is currently unable to handle the request. This may happen when ActiveGate is overloaded. Retryable with exponential backoff strategy. | Client side error. | Server side error. |
Code example
import { logsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await logsClient.storeLog({
type: "application/json",
body: [
{
content:
"Exception: Custom error log sent via Generic Log Ingest",
"log.source": "/var/log/syslog",
timestamp: "2022-01-17T22:12:31.0000",
severity: "error",
"custom.attribute": "attribute value",
},
{
content:
"Exception: Custom error log sent via Generic Log Ingest",
"log.source": "/var/log/syslog",
timestamp: "2022-01-17T22:12:35.0000",
},
{
content:
"Exception: Custom error log sent via Generic Log Ingest",
"log.source": "/var/log/syslog",
},
{
content:
"Exception: Custom error log sent via Generic Log Ingest",
},
],
});
metricsClient
import { metricsClient } from '@dynatrace-sdk/client-classic-environment-v2';
allMetrics
Lists all available metrics
Required scope: environment-api:metrics:read Required permission: environment:roles:viewer
You can narrow down the output by selecting metrics in the metricSelector field.
You can additionally limit the output by using pagination:
-
Specify the number of results per page in the pageSize query parameter.
-
Then use the cursor from the nextPageKey field of the response in the nextPageKey query parameter to obtain subsequent pages. All other query parameters must be omitted.
Parameters
Name | Type | Description |
---|---|---|
config.acceptType*required | "application/json; charset=utf-8" | "text/csv; header=absent; charset=utf-8" | "text/csv; header=present; charset=utf-8" | |
config.fields | string | Defines the list of metric properties included in the response.
To add properties, list them with leading plus To specify several properties, join them with a comma (for example If you specify just one property, the response contains the metric key and the specified property. To return metric keys only, specify |
config.metadataSelector | string | The metadata scope of the query. Only metrics with specified properties are included to the response. You can set one or more of the following criteria. Values are case-sensitive and the
To set several criteria, separate them with a comma ( For example, to list metrics that have the tags feature AND cloud with a unit of Percent OR MegaByte AND a dimension with a dimension key location, use this metadataSelector: |
config.metricSelector | string | Selects metrics for the query by their keys. You can specify multiple metric keys separated by commas (for example, You can select a full set of related metrics by using a trailing asterisk ( You can set additional transformation operators, separated by a colon ( Only If the metric key contains any symbols you must quote (
For example, to query the metric with the key of ext:selfmonitoring.jmx.Agents: Type "APACHE" you must specify this selector:
To find metrics based on a search term, rather than metricId, use the text query parameter instead of this one. |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of metric schemata in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. If a value higher than 500 is used, only 500 results per page are returned. |
config.text | string | Metric registry search term. Only show metrics that contain the term in their key, display name, or description. Use the metricSelector parameter instead of this one to select a complete metric hierarchy instead of doing a text-based search. |
config.writtenSince | string | Filters the resulted set of metrics to those that have data points within the specified timeframe. You can use one of the following formats:
|
Returns
Return type | Status code | Description |
---|---|---|
MetricDescriptorCollection | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsClient.allMetrics({
acceptType: "application/json; charset=utf-8",
});
delete
Deletes the specified metric
Required scope: environment-api:metrics:write Required permission: environment:roles:manage-settings
Deletion cannot be undone! You can't delete a metric if it has data points ingested within the last two hours.
Parameters
Name | Type | Description |
---|---|---|
config.metricKey*required | string | The key of the required metric. |
Returns
Return type | Status code | Description |
---|---|---|
void | 202 | Success. The deletion of the metric has been triggered. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsClient.delete({
metricKey: "...",
});
ingest
Pushes metric data points to Dynatrace
Required scope: storage:metrics:write Required permission: storage:metrics:write
Parameters
Name | Type |
---|---|
config.body*required | string |
Returns
Return type | Status code | Description |
---|---|---|
void | 202 | The provided business events are all accepted and will be processed. |
Throws
Error Type | Error Message |
---|---|
ValidationResponseError | Some data points are invalid. Valid data points are accepted and will be processed in the background. |
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsClient.ingest({
body: "server.cpu.temperature,cpu.id=0 42",
});
metric
Gets the descriptor of the specified metric
Required scope: environment-api:metrics:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.acceptType*required | "application/json; charset=utf-8" | "text/csv; header=absent; charset=utf-8" | "text/csv; header=present; charset=utf-8" | |
config.metricKey*required | string | The key of the required metric. You can set additional transformation operators, separated by a colon ( |
Returns
Return type | Status code | Description |
---|---|---|
MetricDescriptor | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsClient.metric({
acceptType: "application/json; charset=utf-8",
metricKey: "...",
});
query
Gets data points of the specified metrics
Required scope: environment-api:metrics:read Required permission: environment:roles:viewer
The following limits apply:
- The amount of aggregated data points in the response is limited to 1,000
- The amount of series in the response is limited to 1,000
- The amount of data points per series is limited to 10,080 (minutes of one week)
- The overall amount of data points is limited to 100,000
The dataPointCountRatio specifies the ratio of queried data points divided by the maximum number of data points per metric that are allowed in a single query. The dimensionCountRatio specifies the ratio of queried dimension tuples divided by the maximum number of dimension tuples allowed in a single query.
Parameters
Name | Type | Description |
---|---|---|
config.acceptType*required | "application/json; charset=utf-8" | "text/csv; header=absent; charset=utf-8" | "text/csv; header=present; charset=utf-8" | |
config.entitySelector | string | Specifies the entity scope of the query. Only data points delivered by matched entities are included in response. You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. Use the To set a universal scope matching all entities, omit this parameter. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two hours is used ( |
config.metricSelector | string | Selects metrics for the query by their keys. You can select up to 10 metrics for one query. You can specify multiple metric keys separated by commas (for example, If the metric key contains any symbols you must quote (
For example, to query the metric with the key of ext:selfmonitoring.jmx.Agents: Type "APACHE" you must specify this selector:
You can set additional transformation operators, separated by a colon ( |
config.mzSelector | string | The management zone scope of the query. Only metrics data relating to the specified management zones are included to the response. You can set one or more of the following criteria. Values are case-sensitive and the
|
config.resolution | string | The desired resolution of data points. You can use one of the following options:
Valid units for the timespan are:
If not set, the default is 120 data points. For example:
|
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
MetricData | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsClient.query({
acceptType: "application/json; charset=utf-8",
});
metricsUnitsClient
import { metricsUnitsClient } from '@dynatrace-sdk/client-classic-environment-v2';
allUnits
Lists all available units
Required scope: environment-api:metrics:read Required permission: environment:roles:viewer
You can narrow down the output by providing filter criteria in the unitSelector field.
Parameters
Name | Type | Description |
---|---|---|
config.fields | string | Defines the list of properties to be included in the response. The ID of the unit is always included. The following additional properties are available:
By default, the ID, the display name, and the symbol are included. To add properties, list them with leading plus To specify several properties, join them with a comma (for example If you specify just one property, the response contains the unitId and the specified property. To return unit IDs only, specify |
config.unitSelector | string | Selects units to be included to the response. Available criteria:
|
Returns
Return type | Status code | Description |
---|---|---|
UnitList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsUnitsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsUnitsClient.allUnits();
convert
Converts a value from a source unit into a target unit
Required scope: environment-api:metrics:read Required permission: environment:roles:viewer
If no target unit is set, the request finds an appropriate target unit automatically, taking into account the preferred number format (if specified).
Parameters
Name | Type | Description |
---|---|---|
config.numberFormat | string | The preferred number format of the target value. You can specify the following formats:
`Only used if the target unit if not set. |
config.targetUnit | string | The ID of the target unit. If not set, the request finds an appropriate target unit automatically, based on the specified number format. |
config.unitId*required | string | The ID of the source unit. |
config.value*required | number | The value to be converted. |
Returns
Return type | Status code | Description |
---|---|---|
UnitConversionResult | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsUnitsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsUnitsClient.convert({
unitId: "...",
value: 10,
});
unit
Gets the properties of the specified unit
Required scope: environment-api:metrics:read Required permission: environment:roles:viewer
Parameters
Name | Type |
---|---|
config.unitId*required | string |
Returns
Return type | Status code | Description |
---|---|---|
Unit | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { metricsUnitsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await metricsUnitsClient.unit({
unitId: "...",
});
monitoredEntitiesClient
import { monitoredEntitiesClient } from '@dynatrace-sdk/client-classic-environment-v2';
deleteSecurityContext
Deletes the security context for all entities matching the entity selector.
Required scope: settings:objects:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
Automatic management zone rules will apply again to entities without a security context.
Parameters
Name | Type | Description |
---|---|---|
config.entitySelector*required | string | Defines the scope of the entities to set the security context for. Only entities that can have management zones are considered for this operation You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of three days is used ( |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
SecurityContextResultDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await monitoredEntitiesClient.deleteSecurityContext({
entitySelector: "...",
});
getEntities
Gets the information about monitored entities
Required scope: environment-api:entities:read Required permission: environment:roles:viewer
Lists entities observed within the specified timeframe along with their properties.
When you query entities of the SERVICE_METHOD
type, only the following requests are returned:
- Key requests
- Top X requests that are used for baselining
- Requests that have caused a problem
You can limit the output by using pagination:
- Specify the number of results per page in the pageSize query parameter.
- Use the cursor from the nextPageKey field of the previous response in the nextPageKey query parameter to obtain subsequent pages.
Parameters
Name | Type | Description |
---|---|---|
config.entitySelector | string | Defines the scope of the query. Only entities matching the specified criteria are included into response. You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. The field is required when you're querying the first page of results. |
config.fields | string | Defines the list of entity properties included in the response. The ID and the name of an entity are always included to the response. To add properties, list them with leading plus Use the GET entity type request to fetch the list of properties available for your entity type. Fields from the properties object must be specified in the When requesting large amounts of relationship fields, throttling can apply. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of three days is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of entities. If not set, 50 is used. |
config.sort | string | Defines the ordering of the entities returned. This field is optional, each field has a sign prefix (+/-), which corresponds to sorting order ( + for ascending and - for descending). If no sign prefix is set, then default ascending sorting order will be applied. Currently ordering is only available for the display name (for example |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
EntitiesList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await monitoredEntitiesClient.getEntities();
getEntity
Gets the properties of the specified monitored entity
Required scope: environment-api:entities:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.entityId*required | string | The ID of the required entity. |
config.fields | string | Defines the list of entity properties included in the response. The ID and the name of an entity are always included to the response. To add properties, list them with leading plus Use the GET entity type request to fetch the list of properties available for your entity type. Fields from the properties object must be specified in the When requesting large amounts of relationship fields, throttling can apply. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of three days is used ( |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
Entity | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await monitoredEntitiesClient.getEntity({
entityId: "...",
});
getEntityType
Gets a list of properties for the specified entity type
Required scope: environment-api:entities:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.type*required | string | The required entity type. |
Returns
Return type | Status code | Description |
---|---|---|
EntityType | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await monitoredEntitiesClient.getEntityType({
type: "...",
});
getEntityTypes
Gets a list of properties for all entity types
Required scope: environment-api:entities:read Required permission: environment:roles:viewer
You can limit the output by using pagination:
- Specify the number of results per page in the pageSize query parameter.
- Use the cursor from the nextPageKey field of the previous response in the nextPageKey query parameter to obtain subsequent pages.
Parameters
Name | Type | Description |
---|---|---|
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of entity types in a single response payload. The maximal allowed page size is 500. If not set, 50 is used. |
Returns
Return type | Status code | Description |
---|---|---|
EntityTypeList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await monitoredEntitiesClient.getEntityTypes();
pushCustomDevice
Creates or updates a custom device
Required scope: environment-api:entities:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.body*required | CustomDeviceCreation | |
config.uiBased | boolean | If true, it will be handled as if it was created via UI. It will be refreshed automatically and won't age out. |
Returns
Return type | Status code | Description |
---|---|---|
CustomDeviceCreationResult | 201 | Success |
void | 204 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await monitoredEntitiesClient.pushCustomDevice(
{ body: { customDeviceId: "...", displayName: "..." } },
);
setSecurityContext
Sets the given security context for all entities matching the entity selector.
Required scope: settings:objects:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
Matching entities will have a management zone assigned, if the given security context matches the name of an already existing management zone. This endpoint does not create a new management zone, if there is no management zone with the provided name. Automatic management zone rules will not apply to entities with a set security context. It will need to be removed, to have them apply again.
Parameters
Name | Type | Description |
---|---|---|
config.body*required | SecurityContextDtoImpl | |
config.entitySelector*required | string | Defines the scope of the entities to set the security context for. Only entities that can have management zones are considered for this operation You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of three days is used ( |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
SecurityContextResultDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await monitoredEntitiesClient.setSecurityContext({
entitySelector: "...",
body: {},
});
monitoredEntitiesCustomTagsClient
import { monitoredEntitiesCustomTagsClient } from '@dynatrace-sdk/client-classic-environment-v2';
deleteTags
Deletes the specified tag from the specified entities
Required scope: environment-api:entities:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.deleteAllWithKey | boolean |
If not set, |
config.entitySelector*required | string | Specifies the entities where you want to delete tags. You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of 24 hours is used ( |
config.key*required | string | The key of the tag to be deleted. If deleteAllWithKey is For value-only tags, specify the value here. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
config.value | string | The value of the tag to be deleted. The value is ignored if deleteAllWithKey is For value-only tags, specify the value in the key parameter. |
Returns
Return type | Status code | Description |
---|---|---|
DeletedEntityTags | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesCustomTagsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await monitoredEntitiesCustomTagsClient.deleteTags({
key: "...",
entitySelector: "...",
});
getTags
Gets a list of custom tags applied to the specified entities
Required scope: environment-api:entities:read Required permission: environment:roles:viewer
Automatically applied tags and imported tags are not included.
Parameters
Name | Type | Description |
---|---|---|
config.entitySelector*required | string | Specifies the entities where you want to read tags. You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of 24 hours is used ( |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
CustomEntityTags | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesCustomTagsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await monitoredEntitiesCustomTagsClient.getTags({
entitySelector: "...",
});
postTags
Adds custom tags to the specified entities
Required scope: environment-api:entities:write Required permission: environment:roles:manage-settings
All existing tags remain unaffected.
Parameters
Name | Type | Description |
---|---|---|
config.body*required | AddEntityTags | |
config.entitySelector*required | string | Specifies the entities where you want to update tags. You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of 24 hours is used ( |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
AddedEntityTags | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { monitoredEntitiesCustomTagsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await monitoredEntitiesCustomTagsClient.postTags({
entitySelector: "...",
body: { tags: [{ key: "..." }] },
});
monitoredEntitiesMonitoringStateClient
import { monitoredEntitiesMonitoringStateClient } from '@dynatrace-sdk/client-classic-environment-v2';
getStates
Lists monitoring states of entities
Required scope: environment-api:entities:read Required permission: environment:roles:viewer
Only process group instances are supported.
Parameters
Name | Type | Description |
---|---|---|
config.entitySelector | string | Specifies the process group instances where you're querying the state. Use the You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of 24 hours is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of monitoring states in a single response payload. The maximal allowed page size is 500. If not set, 500 is used. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
MonitoredStates | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Unavailable | Client side error. | Server side error. |
Code example
import { monitoredEntitiesMonitoringStateClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await monitoredEntitiesMonitoringStateClient.getStates();
networkZonesClient
import { networkZonesClient } from '@dynatrace-sdk/client-classic-environment-v2';
createOrUpdateNetworkZone
Updates an existing network zone or creates a new one
Required scope: environment-api:network-zones:write Required permission: environment:roles:manage-settings
If the network zone with the specified ID does not exist, a new network zone is created.
The ID is not case sensitive. Dynatrace stores the ID in lowercase.
Parameters
Name | Type | Description |
---|---|---|
config.body*required | NetworkZone | |
config.id*required | string | The ID of the network zone to be updated. If you set the ID in the body as well, it must match this ID. The ID is not case sensitive. Dynatrace stores the ID in lowercase. |
Returns
Return type | Status code | Description |
---|---|---|
EntityShortRepresentation | 201 | Success. The new network zone has been created. The response body contains the ID of the new network zone. |
void | 204 | Success. The network zone has been updated. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { networkZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await networkZonesClient.createOrUpdateNetworkZone({
id: "...",
body: {},
});
deleteNetworkZone
Deletes the specified network zone
Required scope: environment-api:network-zones:write Required permission: environment:roles:manage-settings
You can only delete an empty network zone (a zone that no ActiveGate or OneAgent is using).
If the network zone is used as an alternative zone for any OneAgent, it will be automatically removed from the list of possible alternatives.
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the network zone to be deleted. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Deleted. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. See error message in the response body for details. | Client side error. | Server side error. |
Code example
import { networkZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await networkZonesClient.deleteNetworkZone({
id: "...",
});
getAllNetworkZones
Lists all existing network zones
Required scope: environment-api:network-zones:read Required permission: environment:roles:viewer
Returns
Return type | Status code | Description |
---|---|---|
NetworkZoneList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { networkZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await networkZonesClient.getAllNetworkZones();
getHostStats
Gets the statistics about hosts using the network zone
Required scope: environment-api:network-zones:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.filter | "all" | "configuredButNotConnectedOnly" | "connectedAsAlternativeOnly" | "connectedAsFailoverOnly" | "connectedAsFailoverWithoutOwnActiveGatesOnly" | Filters the resulting set of hosts:
If not set, |
config.id*required | string | The ID of the required network zone. |
Returns
Return type | Status code | Description |
---|---|---|
NetworkZoneConnectionStatistics | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { networkZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await networkZonesClient.getHostStats({
id: "...",
});
getNetworkZoneSettings
Gets the global configuration of network zones
Required scope: environment-api:network-zones:read Required permission: environment:roles:viewer
Returns
Return type | Status code | Description |
---|---|---|
NetworkZoneSettings | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { networkZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await networkZonesClient.getNetworkZoneSettings();
getSingleNetworkZone
Gets parameters of the specified network zone
Required scope: environment-api:network-zones:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the required network zone. |
Returns
Return type | Status code | Description |
---|---|---|
NetworkZone | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { networkZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await networkZonesClient.getSingleNetworkZone({
id: "...",
});
updateNetworkZoneSettings
Updates the global configuration of network zones
Required scope: environment-api:network-zones:write Required permission: environment:roles:manage-settings
Parameters
Name | Type |
---|---|
config.body*required | NetworkZoneSettings |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The global network zones configuration has been updated. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { networkZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await networkZonesClient.updateNetworkZoneSettings({
body: {},
});
problemsClient
import { problemsClient } from '@dynatrace-sdk/client-classic-environment-v2';
closeProblem
Closes the specified problem and adds a closing comment on it
Required scope: environment-api:problems:write Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.body*required | ProblemCloseRequestDtoImpl | |
config.problemId*required | string | The ID of the required problem. |
Returns
Return type | Status code | Description |
---|---|---|
ProblemCloseResult | 200 | Success |
void | 204 | The problem is closed already the request hasn't been executed. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.closeProblem({
problemId: "...",
body: { message: "..." },
});
createComment
Adds a new comment on the specified problem
Required scope: environment-api:problems:write Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.body*required | CommentRequestDtoImpl | |
config.problemId*required | string | The ID of the required problem. |
Returns
Return type | Status code | Description |
---|---|---|
void | 201 | Success. The comment has been added. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.createComment({
problemId: "...",
body: { message: "..." },
});
deleteComment
Deletes the specified comment from a problem
Required scope: environment-api:problems:write Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.commentId*required | string | The ID of the required comment. |
config.problemId*required | string | The ID of the required problem. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The comment has been deleted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.deleteComment({
problemId: "...",
commentId: "...",
});
getComment
Gets the specified comment on a problem
Required scope: environment-api:problems:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.commentId*required | string | The ID of the required comment. |
config.problemId*required | string | The ID of the required problem. |
Returns
Return type | Status code | Description |
---|---|---|
Comment | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.getComment({
problemId: "...",
commentId: "...",
});
getComments
Gets all comments on the specified problem
Required scope: environment-api:problems:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters except the optional fields parameter. |
config.pageSize | number | The amount of comments in a single response payload. The maximal allowed page size is 500. If not set, 10 is used. |
config.problemId*required | string | The ID of the required problem. |
Returns
Return type | Status code | Description |
---|---|---|
CommentsList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.getComments({
problemId: "...",
});
getProblem
Gets the properties of the specified problem
Required scope: environment-api:problems:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.fields | string | A list of additional problem properties you can add to the response. The following properties are available (all other properties are always included and you can't remove them from the response):
To add properties, specify them as a comma-separated list (for example, |
config.problemId*required | string | The ID of the required problem. |
Returns
Return type | Status code | Description |
---|---|---|
Problem | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.getProblem({
problemId: "...",
});
getProblems
Lists problems observed within the specified timeframe
Required scope: environment-api:problems:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.entitySelector | string | The entity scope of the query. You must set one of these criteria:
You can add one or more of the following criteria. Values are case-sensitive and the
For more information, see Entity selector in Dynatrace Documentation. To set several criteria, separate them with a comma ( The maximum string length is 2,000 characters. The maximum number of entities that may be selected is limited to 10000. |
config.fields | string | A list of additional problem properties you can add to the response. The following properties are available (all other properties are always included and you can't remove them from the response):
To add properties, specify them as a comma-separated list (for example, The field is valid only for the current page of results. You must set it for each page you're requesting. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two hours is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters except the optional fields parameter. |
config.pageSize | number | The amount of problems in a single response payload. The maximal allowed page size is 500. If not set, 50 is used. |
config.problemSelector | string | Defines the scope of the query. Only problems matching the specified criteria are included into response. You can add one or several of the criteria listed below. For each criterion you can specify multiple comma-separated values, unless stated otherwise. If several values are specified, the OR logic applies. All values must be quoted.
To set several criteria, separate them with a comma ( |
config.sort | string | Specifies a set of comma-separated ( You can sort by the following properties with a sign prefix for the sorting order.
If no prefix is set, You can specify several levels of sorting. For example, |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
Problems | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.getProblems();
updateComment
Updates the specified comment on a problem
Required scope: environment-api:problems:write Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.body*required | CommentRequestDtoImpl | |
config.commentId*required | string | The ID of the required comment. |
config.problemId*required | string | The ID of the required problem. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The comment has been updated. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { problemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await problemsClient.updateComment({
problemId: "...",
commentId: "...",
body: { message: "..." },
});
releasesClient
import { releasesClient } from '@dynatrace-sdk/client-classic-environment-v2';
getReleases
Returns all releases
Required scope: environment-api:releases:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.demo | boolean | Get your Releases (false ) or a set of demo Releases (true ). |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of Releases in a single response payload. The maximal allowed page size is 1000. If not set, 100 is used. |
config.releasesSelector | string | Defines the scope of the query. Only Releases matching the provided criteria are included in the response. You can add one or several of the criteria listed below.
To set several criteria, separate them with comma (,). Only results matching all criteria are included in the response. e.g., .../api/v2/releases?releasesSelector=name("Server"),monitoringState("Active"),healthState("HEALTHY"),releasesVersion("1.0.7"). The special characters ~ and " need to be escaped using a ~ (e.g. double quote search entityName("~""). |
config.sort | string | Specifies the field that is used for sorting the releases list. The field has a sign prefix (+/-) which corresponds to the sorting order ('+' for ascending and '-' for descending). If no sign prefix is set, then the default ascending sorting order will be applied. You can sort by the following properties:
If not set, the ascending order sorting for name is applied. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
Releases | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { releasesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await releasesClient.getReleases();
securityProblemsClient
import { securityProblemsClient } from '@dynatrace-sdk/client-classic-environment-v2';
bulkMuteRemediationItems
Mutes several remediation items
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.body*required | RemediationItemsBulkMute | |
config.id*required | string | The ID of the requested third-party security problem. |
Returns
Return type | Status code | Description |
---|---|---|
RemediationItemsBulkMuteResponse | 200 | Success. The remediation item(s) have been muted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.bulkMuteRemediationItems({
id: "...",
body: {
reason: "CONFIGURATION_NOT_AFFECTED",
remediationItemIds: ["..."],
},
});
bulkMuteSecurityProblems
Mutes several security problems
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type |
---|---|
config.body*required | SecurityProblemsBulkMute |
Returns
Return type | Status code | Description |
---|---|---|
SecurityProblemsBulkMuteResponse | 200 | Success. The security problem(s) have been muted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.bulkMuteSecurityProblems({
body: {
reason: "CONFIGURATION_NOT_AFFECTED",
securityProblemIds: ["..."],
},
});
bulkUnmuteRemediationItems
Un-mutes several remediation items
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.body*required | RemediationItemsBulkUnmute | |
config.id*required | string | The ID of the requested third-party security problem. |
Returns
Return type | Status code | Description |
---|---|---|
RemediationItemsBulkUnmuteResponse | 200 | Success. The remediation item(s) have been un-muted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.bulkUnmuteRemediationItems({
id: "...",
body: {
reason: "AFFECTED",
remediationItemIds: ["..."],
},
});
bulkUnmuteSecurityProblems
Un-mutes several security problems
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type |
---|---|
config.body*required | SecurityProblemsBulkUnmute |
Returns
Return type | Status code | Description |
---|---|---|
SecurityProblemsBulkUnmuteResponse | 200 | Success. The security problem(s) have been un-muted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.bulkUnmuteSecurityProblems({
body: {
reason: "AFFECTED",
securityProblemIds: ["..."],
},
});
getEventsForSecurityProblem
Lists all events of a security problem
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of thirty days is used ( |
config.id*required | string | The ID of the requested security problem. |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
SecurityProblemEventsList | 200 | Success. The response contains the list of security problem events. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.getEventsForSecurityProblem({
id: "...",
});
getRemediationItem
Gets parameters of a remediation item of a security problem
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the requested third-party security problem. |
config.remediationItemId*required | string | The ID of the remediation item. |
Returns
Return type | Status code | Description |
---|---|---|
RemediationDetailsItem | 200 | Success. The response contains details of a single remediation item of a security problem. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.getRemediationItem({
id: "...",
remediationItemId: "...",
});
getRemediationItems
Lists remediation items of a third-party security problem
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the requested third-party security problem. |
config.remediationItemSelector | string | Defines the scope of the query. Only remediable entities matching the specified criteria are included in the response. You can add one or more of the following criteria. Values are not case-sensitive and the
To set several criteria, separate them with a comma ( Specify the value of a criterion as a quoted string. The following special characters must be escaped with a tilde (
|
Returns
Return type | Status code | Description |
---|---|---|
RemediationItemList | 200 | Success. The response contains the list of remediation items of a problem. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.getRemediationItems({
id: "...",
});
getRemediationProgressEntities
Lists remediation progress entities
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.id*required | string | The ID of the requested third-party security problem. |
config.remediationItemId*required | string | The ID of the remediation item. |
config.remediationProgressEntitySelector | string | Defines the scope of the query. Only remediation progress entities matching the specified criteria are included in the response. You can add one or more of the following criteria. Values are not case-sensitive and the
To set several criteria, separate them with a comma ( Specify the value of a criterion as a quoted string. The following special characters must be escaped with a tilde (
|
Returns
Return type | Status code | Description |
---|---|---|
RemediationProgressEntityList | 200 | Success. The response contains a list of remediation progress entities of a remediation item of a security problem. The number of entities returned is limited. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.getRemediationProgressEntities(
{ id: "...", remediationItemId: "..." },
);
getSecurityProblem
Gets parameters of a security problem
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.fields | string | A list of additional security problem properties you can add to the response. The following properties are available (all other properties are always included and you can't remove them from the response):
To add properties, specify them in a comma-separated list and prefix each property with a plus (for example, |
config.from | string | Based on the timeframe start the affected-, related- and vulnerable entities are being calculated. You can use one of the following formats:
If not set, the default timeframe start of 24 hours in the past is used ( The timeframe start must not be older than 365 days. |
config.id*required | string | The ID of the requested security problem. |
config.managementZoneFilter | string | To specify management zones, use one of the options listed below. For each option you can specify multiple comma-separated values. If several values are specified, the OR logic applies. All values are case-sensitive and must be quoted.
You can specify several comma-separated criteria (for example, |
Returns
Return type | Status code | Description |
---|---|---|
SecurityProblemDetails | 200 | Success. The response contains parameters of the security problem. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.getSecurityProblem({
id: "...",
});
getSecurityProblems
Lists all security problems
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.fields | string | A list of additional security problem properties you can add to the response. The following properties are available (all other properties are always included and you can't remove them from the response):
To add properties, specify them in a comma-separated list and prefix each property with a plus (for example, |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of thirty days is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of security problems in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
config.securityProblemSelector | string | Defines the scope of the query. Only security problems matching the specified criteria are included in the response. You can add one or more of the following criteria. Values are not case-sensitive and the
Risk score and risk category are mutually exclusive (cannot be used at the same time). To set several criteria, separate them with a comma ( Specify the value of a criterion as a quoted string. The following special characters must be escaped with a tilde (
|
config.sort | string | Specifies one or more fields for sorting the security problem list. Multiple fields can be concatenated using a comma ( You can sort by the following properties with a sign prefix for the sorting order.
If no prefix is set, |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. The end of the timeframe must not be older than 365 days. |
Returns
Return type | Status code | Description |
---|---|---|
SecurityProblemList | 200 | Success. The response contains the list of security problems. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.getSecurityProblems();
getVulnerableFunctions
Lists all vulnerable functions and their usage for a third-party security problem
Required scope: environment-api:security-problems:read One of the following permissions is required:
- environment:roles:manage-security-problems
- environment:roles:view-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.groupBy | string | Defines additional grouping types in which vulnerable functions should be displayed. You can add one of the following grouping types.
|
config.id*required | string | The ID of the requested third-party security problem. |
config.vulnerableFunctionsSelector | string | Defines the scope of the query. Only vulnerable functions matching the specified criteria are included in the response. You can add the following criteria. Values are not case sensitive and the
Specify the value of a criterion as a quoted string. The following special characters must be escaped with a tilde (
|
Returns
Return type | Status code | Description |
---|---|---|
VulnerableFunctionsContainer | 200 | Success. The response contains the list of vulnerable functions. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.getVulnerableFunctions({
id: "...",
});
muteSecurityProblem
Mutes a security problem
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.body*required | SecurityProblemMute | |
config.id*required | string | The ID of the requested security problem. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success. The security problem has been muted. |
void | 204 | Not executed. The security problem is already muted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.muteSecurityProblem({
id: "...",
body: { reason: "CONFIGURATION_NOT_AFFECTED" },
});
setRemediationItemMuteState
Sets the mute state of a remediation item
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.body*required | RemediationItemMuteStateChange | |
config.id*required | string | The ID of the requested third-party security problem. |
config.remediationItemId*required | string | The ID of the remediation item. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success. The requested mute state has been applied to the remediation item. |
void | 204 | Not executed. The remediation item was previously put into the requested mute state by the same user with the same reason and comment. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.setRemediationItemMuteState({
id: "...",
remediationItemId: "...",
body: {
comment: "...",
muted: false,
reason: "IGNORE",
},
});
trackingLinkBulkUpdateAndDelete
Updates the external tracking links of the remediation items. | maturity=EARLY_ADOPTER
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.body*required | RemediationItemsBulkUpdateDeleteDto | |
config.id*required | string | The ID of the requested third-party security problem. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The requested tracking links have been updated. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.trackingLinkBulkUpdateAndDelete(
{ id: "...", body: {} },
);
unmuteSecurityProblem
Un-mutes a security problem
Required scope: environment-api:security-problems:write Required permission: environment:roles:manage-security-problems
Parameters
Name | Type | Description |
---|---|---|
config.body*required | SecurityProblemUnmute | |
config.id*required | string | The ID of the requested security problem. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success. The security problem has been un-muted. |
void | 204 | Not executed. The security problem is already un-muted. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { securityProblemsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await securityProblemsClient.unmuteSecurityProblem({
id: "...",
body: { reason: "AFFECTED" },
});
serviceLevelObjectivesClient
import { serviceLevelObjectivesClient } from '@dynatrace-sdk/client-classic-environment-v2';
createAlert
Creates an alert of the provided alert type for an SLO
Required scope: environment-api:slo:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | AbstractSloAlertDto | |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.id*required | string | The ID of the required SLO. |
config.timeFrame | "CURRENT" | "GTF" | The timeframe to calculate the SLO values:
If not set, the |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
EntityShortRepresentation | 201 | Success. The new alert has been created. The response contains the parameters of the new alert. The location response header contains the ID of the new alert. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Precondition for creating an SLO alert not fulfilled. The SLO func metric cannot be created or is not created by the SLO. | Internal server error. | Client side error. | Server side error. |
Code example
import { serviceLevelObjectivesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await serviceLevelObjectivesClient.createAlert(
{
id: "...",
body: {
alertName: "...",
alertThreshold: 10,
alertType: "BURN_RATE",
},
},
);
createSlo
Creates a new SLO
Required scope: environment-api:slo:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
Parameters
Name | Type |
---|---|
config.body*required | SloConfigItemDtoImpl |
Returns
Return type | Status code | Description |
---|---|---|
void | 201 | Success. The new SLO has been created. Response doesn't have a body. The location response header contains the ID of the new SLO. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. Conflicting resource. | Internal server error. | Client side error. | Server side error. |
Code example
import { serviceLevelObjectivesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await serviceLevelObjectivesClient.createSlo({
body: {
evaluationType: "AGGREGATE",
name: "Payment service availability",
target: 95,
timeframe: "-1d",
warning: 97.5,
},
});
deleteSlo
Deletes an SLO
Required scope: environment-api:slo:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
Parameters
Name | Type |
---|---|
config.id*required | string |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The SLO has been deleted. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The requested resource doesn't exist. | Failed. Conflicting resource. | Internal server error. | Client side error. | Server side error. |
Code example
import { serviceLevelObjectivesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await serviceLevelObjectivesClient.deleteSlo({
id: "...",
});
getSlo
Lists all available SLOs along with calculated values
Required scope: environment-api:slo:read One of the following permissions is required:
- environment:roles:viewer
- settings:objects:read
By default the values are calculated for the SLO's own timeframe. You can use a custom timeframe:
- Set the timeFrame parameter to
GTF
. - Provide the timeframe in from and to parameters.
Parameters
Name | Type | Description |
---|---|---|
config.demo | boolean | Get your SLOs (false ) or a set of demo SLOs (true ). |
config.enabledSlos | "false" | "true" | "all" | Get your enabled SLOs (true ), disabled ones (false ) or both enabled and disabled ones (all ). |
config.evaluate | "false" | "true" | Get your SLOs without them being evaluated (false ) or with evaluations (true ) with maximum pageSize of 25. |
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of SLOs in a single response payload. The maximal allowed page size is 10000. If not set, 10 is used. |
config.showGlobalSlos | boolean | Get your global SLOs (true ) regardless of the selected filter or filter them out (false ). |
config.sloSelector | string | The scope of the query. Only SLOs matching the provided criteria are included in the response. You can add one or several of the criteria listed below.
To set several criteria, separate them with comma (
The special characters |
config.sort | string | The sorting of SLO entries:
If not set, the ascending order is used. |
config.timeFrame | "CURRENT" | "GTF" | The timeframe to calculate the SLO values:
If not set, the |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
SLOs | 200 | Success. The response contains the parameters and calculated values of the requested SLO. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { serviceLevelObjectivesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await serviceLevelObjectivesClient.getSlo();
getSloById
Gets parameters and calculated values of a specific SLO
Required scope: environment-api:slo:read One of the following permissions is required:
- environment:roles:viewer
- settings:objects:read
If from and to parameters are provided, the SLO is calculated for that timeframe; otherwise the SLO's own timeframe is used.
Parameters
Name | Type | Description |
---|---|---|
config.from | string | The start of the requested timeframe. You can use one of the following formats:
If not set, the relative timeframe of two weeks is used ( |
config.id*required | string | The ID of the required SLO. |
config.timeFrame | "CURRENT" | "GTF" | The timeframe to calculate the SLO values:
If not set, the |
config.to | string | The end of the requested timeframe. You can use one of the following formats:
If not set, the current timestamp is used. |
Returns
Return type | Status code | Description |
---|---|---|
SLO | 200 | Success. The response contains the parameters and calculated values of the requested SLO. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. The requested resource doesn't exist. | Client side error. | Server side error. |
Code example
import { serviceLevelObjectivesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await serviceLevelObjectivesClient.getSloById({
id: "...",
});
updateSloById
Updates an existing SLO
Required scope: environment-api:slo:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
Parameters
Name | Type | Description |
---|---|---|
config.body*required | SloConfigItemDtoImpl | |
config.id*required | string | The ID of the required SLO. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Internal server error. | Client side error. | Server side error. |
Code example
import { serviceLevelObjectivesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await serviceLevelObjectivesClient.updateSloById({
id: "...",
body: {
evaluationType: "AGGREGATE",
name: "Payment service availability",
target: 95,
timeframe: "-1d",
warning: 97.5,
},
});
settingsManagementZonesClient
import { settingsManagementZonesClient } from '@dynatrace-sdk/client-classic-environment-v2';
getManagementZoneDetails
Reads management zone details.
Required scope: settings:objects:read One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:read
Allows to convert from an objectId to the ID of the management zone, and can serve as a replacement for the old config endpoint for that purpose.
Parameters
Name | Type | Description |
---|---|---|
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
ManagementZoneDetails | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Forbidden. | No object available for the given objectId | Client side error. | Server side error. |
Code example
import { settingsManagementZonesClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsManagementZonesClient.getManagementZoneDetails(
{ objectId: "..." },
);
settingsObjectsClient
import { settingsObjectsClient } from '@dynatrace-sdk/client-classic-environment-v2';
addPermission
Add the permissions for a single accessor on this object.
Required scope: settings:objects:write Required permission: settings:objects:write
Add the permissions for a single accessor on this object, anyone with read/write permissions is allowed to add more permissions.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.body*required | AccessorPermissions | |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
AccessorPermissions | 201 | Created |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | If accessor id already exists. | Failed. Forbidden. | No object available for the given objectId. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await settingsObjectsClient.addPermission({
objectId: "...",
body: { accessor: { type: "user" } },
});
deleteSettingsObjectByObjectId
Deletes the specified settings object
Required scope: settings:objects:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.objectId*required | string | The ID of the required settings object. |
config.updateToken | string | The update token of the object. You can use it to detect simultaneous modifications by different users. It is generated upon retrieval (GET requests). If set on update (PUT request) or deletion, the update/deletion will be allowed only if there wasn't any change between the retrieval and the update. If omitted on update/deletion, the operation overrides the current value or deletes it without any checks. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
SettingsObjectResponseError | Failed. Schema validation failed. | Failed. The requested resource doesn't exist. | Failed. Conflicting resource. |
ErrorEnvelopeError | Failed. Forbidden. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.deleteSettingsObjectByObjectId(
{ objectId: "..." },
);
getEffectiveSettingsValues
Lists effective settings values
Required scope: settings:objects:read One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:read
Lists effective settings values for selected schemas at a selected scope (or entity). This operation evaluates the hierarchy of persisted objects (see /settings/objects)
It will always return a result for a schema/scope combination, even if the schema would not be relevant to the given scope/entity.
If no object along the hierarchy is persisted, the default value as defined in the schema will be returned.
Deprecation notice: The ability to query values of any schema by leaving out the schemaIds
parameter in the first-page query is deprecated and will eventually be removed.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.fields | string | A list of fields to be included to the response. The provided set of fields replaces the default set. Specify the required top-level fields, separated by commas (for example, Supported fields: |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of settings objects in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
config.schemaIds | string | A list of comma-separated schema IDs to which the requested objects belong. Only considered on load of the first page, when the nextPageKey is not set. |
config.scope | string | The scope that the requested objects target. The selection only matches objects directly targeting the specified scope. For example, To load the first page, when the nextPageKey is not set, this parameter is required. |
Returns
Return type | Status code | Description |
---|---|---|
EffectiveSettingsValuesList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The specified schema or scope is not found. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.getEffectiveSettingsValues();
getPermission
Get current permissions of the accessor on this object.
Required scope: settings:objects:read Required permission: settings:objects:read
Get current permissions of the accessor on this object.
Parameters
Name | Type | Description |
---|---|---|
config.accessorId*required | string | The user uuid or group uuid of the accessor, depending on the type. |
config.accessorType*required | "group" | "user" | The type of the accessor. |
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
AccessorPermissions | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | No object available for the given objectId or the accessor doesn't have any permissions on this object. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await settingsObjectsClient.getPermission({
objectId: "...",
accessorType: "group",
accessorId: "...",
});
getPermissionAllUsers
Get current permissions of the all-users accessor on this object.
Required scope: settings:objects:read Required permission: settings:objects:read
Get current permissions of the all-users accessor on this object.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
AccessorPermissions | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | No object available for the given objectId or the all-users accessor doesn't have any permissions on this object. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.getPermissionAllUsers({
objectId: "...",
});
getPermissions
Get current permissions on this object.
Required scope: settings:objects:read Required permission: settings:objects:read
Get current permissions on this object.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
AccessorPermissionsList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | No object available for the given objectId. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await settingsObjectsClient.getPermissions({
objectId: "...",
});
getSettingsHistory
Gets the history of settings objects
Required scope: settings:objects:read One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:read
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.fields | string | A list of fields to be included to the response.Specify the required top-level fields, separated by commas (for example, revision,modificationInfo). Supported fields: revision, jsonPatch, jsonBefore, jsonAfter, objectId, type, schemaId, schemaVersion, schemaDisplayName, modificationInfo, summary, source, appId.(optional, default to revision, modificationInfo) |
config.filter | string | The filter parameter, as explained here. Filtering is supported on the following fields:
The fields can only be combined with |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of settings objects in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
config.schemaId | string | Schema ID to which the requested revisions belong. |
config.scope | string | The scope that the requested history objects target. The selection only matches revisions directly targeting the specified scope. For example, To load the first page, when the nextPageKey is not set, this parameter is required. |
config.sort | string | The sort parameter, as explained here. Sorting is supported on the following fields:
|
Returns
Return type | Status code | Description |
---|---|---|
RevisionDiffPage | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Forbidden. | No object available for the given objectId | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.getSettingsHistory();
getSettingsObjectByObjectId
Gets the specified settings object
Required scope: settings:objects:read One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:read
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
SettingsObjectByObjectIdResponse | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Forbidden. | No object available for the given objectId | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.getSettingsObjectByObjectId({
objectId: "...",
});
getSettingsObjects
Lists persisted settings objects
Required scope: settings:objects:read One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:read
Lists persisted settings objects for selected schemas at selected scopes (or entities).
If nothing is persisted or if all persisted settings objects are not accessible due to missing permissions, no items will be returned.
Deprecation notice: The ability to query values of any schema by leaving out the schemaIds
parameter in the first-page query is deprecated and will eventually be removed.
To query the effective values (including schema defaults) please see /settings/effectiveValues.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.externalIds | string | A list of comma-separated external IDs that the requested objects have. Each external ID has a maximum length of 500 characters. Only considered on load of the first page, when the nextPageKey is not set. |
config.fields | string | A list of fields to be included to the response. The provided set of fields replaces the default set. Specify the required top-level fields, separated by commas (for example, Supported fields: |
config.filter | string | The filter parameter, as explained here. Filtering is supported on the following fields:
If this parameter is omitted, all settings objects will be returned. The maximum nesting depth (via parentheses) is 5. The maximum expression length is 1024 characters. Note that only fields included to the response via |
config.nextPageKey | string | The cursor for the next page of results. You can find it in the nextPageKey field of the previous response. The first page is always returned if you don't specify the nextPageKey query parameter. When the nextPageKey is set to obtain subsequent pages, you must omit all other query parameters. |
config.pageSize | number | The amount of settings objects in a single response payload. The maximal allowed page size is 500. If not set, 100 is used. |
config.schemaIds | string | A list of comma-separated schema IDs to which the requested objects belong. To load the first page, when the nextPageKey is not set, either this parameter or scopes is required. To load all objects belonging to the given schema IDs leave the scopes parameter empty. |
config.scopes | string | A list of comma-separated scopes, that the requested objects target. The selection only matches objects directly targeting the specified scopes. For example, To load the first page, when the nextPageKey is not set, either this parameter or schemaIds is required. To load all objects belonging to the given scopes leave the schemaIds parameter empty. |
config.sort | string | The sort parameter, as explained here. Sorting is supported on the following fields:
Note that only fields included to the response via |
Returns
Return type | Status code | Description |
---|---|---|
ObjectsList | 200 | Success. Accessible objects returned. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Forbidden. | Failed. The specified schema or scope is not found. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.getSettingsObjects();
postSettingsObjects
Creates a new settings object
Required scope: settings:objects:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
You can upload several objects at once. In that case each object returns its own response code. Check the response body for details.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.body*required | Array<SettingsObjectCreate> | |
config.validateOnly | boolean | If true , the request runs only validation of the submitted settings objects, without saving them. |
Returns
Return type | Status code | Description |
---|---|---|
SettingsObjectResponse | 200 | Success |
SettingsObjectResponse | 207 | Multi-status: different objects in the payload resulted in different statuses. |
Throws
Error Type | Error Message |
---|---|
SettingsObjectResponseArrayError | Failed. Schema validation failed. | Failed. The requested resource doesn't exist. | Failed. Conflicting resource. |
ErrorEnvelopeError | Failed. Forbidden. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.postSettingsObjects({
body: [
{
schemaId:
"builtin:container.built-in-monitoring-rule",
scope: "HOST-D3A3C5A146830A79",
value: {},
},
],
});
putSettingsObjectByObjectId
Updates an existing settings object
Required scope: settings:objects:write One of the following permissions is required:
- environment:roles:manage-settings
- settings:objects:write
To update a property of the secret
type you need to pass the new value unmasked. To keep the current value, send the current masked secret. You can obtain it via GET an object endpoint.
Some schemas don't allow passing of the masked secret. In that case you need to send the unmasked secret with every update of the object.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.body*required | SettingsObjectUpdate | |
config.objectId*required | string | The ID of the required settings object. |
config.validateOnly | boolean | If true , the request runs only validation of the submitted settings object, without saving it. |
Returns
Return type | Status code | Description |
---|---|---|
SettingsObjectResponse | 200 | Success |
Throws
Error Type | Error Message |
---|---|
SettingsObjectResponseError | Failed. Schema validation failed. | Failed. The requested resource doesn't exist. | Failed. Conflicting resource. |
ErrorEnvelopeError | Failed. Forbidden. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.putSettingsObjectByObjectId({
objectId: "...",
body: { value: {} },
});
removePermission
Remove the permissions for an existing accessor on this object.
Required scope: settings:objects:write Required permission: settings:objects:write
Remove the permissions for an existing accessor on this object, anyone with read/write permissions is allowed to delete permissions.
Parameters
Name | Type | Description |
---|---|---|
config.accessorId*required | string | The user uuid or group uuid of the accessor, depending on the type. |
config.accessorType*required | "group" | "user" | The type of the accessor. |
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | No object available for the given objectId or the accessor doesn't have any permissions on this object. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await settingsObjectsClient.removePermission({
objectId: "...",
accessorType: "group",
accessorId: "...",
});
removePermissionAllUsers
Remove the permissions for an existing all-users accessor on this object.
Required scope: settings:objects:write Required permission: settings:objects:write
Remove the permissions for an existing all-users accessor on this object, anyone with read/write permissions is allowed to delete permissions.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | No object available for the given objectId or the all-users accessor doesn't have any permissions on this object. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.removePermissionAllUsers({
objectId: "...",
});
resolveEffectivePermissions
Get the effective settings permissions of the calling user in the environment
One of the following scopes is required:
- settings:objects:write
- settings:objects:read
- settings:schemas:read
One of the following permissions is required:
- environment:roles:viewer
- settings:schemas:read
Parameters
Name | Type |
---|---|
config.body*required | ResolutionRequest |
Returns
Return type | Status code | Description |
---|---|---|
EffectivePermission | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Forbidden. No access to any settings. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.resolveEffectivePermissions({
body: {
permissions: [
{
context: {
schemaId: "service:schema",
scope: "environment",
},
permission: "settings:objects:write",
},
],
},
});
transferOwnership
Transfer ownership of the object.
Required scope: settings:objects:write Required permission: settings:objects:write
Transfer ownership of the object, only the owner or the main admin is allowed to transfer the ownership (IAM permission needed).
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.body*required | TransferOwnershipRequest | |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Failed. Forbidden. | No object available for the given objectId. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await settingsObjectsClient.transferOwnership({
objectId: "...",
body: { newOwner: { type: "user" } },
});
updatePermission
Update the permissions for an existing accessor on this object.
Required scope: settings:objects:write Required permission: settings:objects:write
Update the permissions for an existing accessor on this object, anyone with read/write permissions is allowed to update permissions.
Parameters
Name | Type | Description |
---|---|---|
config.accessorId*required | string | The user uuid or group uuid of the accessor, depending on the type. |
config.accessorType*required | "group" | "user" | The type of the accessor. |
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.body*required | UpdatePermissionsRequest | |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | If permission list is empty, contains unsupported entries or unsupported combinations of entries. | No object available for the given objectId or the accessor doesn't have any permissions on this object. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data = await settingsObjectsClient.updatePermission({
objectId: "...",
accessorType: "group",
accessorId: "...",
body: {},
});
updatePermissionAllUsers
Update the permissions for an existing all-users accessor on this object.
Required scope: settings:objects:write Required permission: settings:objects:write
Update the permissions for an existing all-users accessor on this object, anyone with read/write permissions is allowed to update permissions.
Parameters
Name | Type | Description |
---|---|---|
config.adminAccess | boolean | If set to true and user has settings:objects:admin permission, the endpoint will act as if the user is the owner of all objects |
config.body*required | UpdatePermissionsRequest | |
config.objectId*required | string | The ID of the required settings object. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | If permission list is empty, contains unsupported entries or unsupported combinations of entries. | No object available for the given objectId or the all-users accessor doesn't have any permissions on this object. | Client side error. | Server side error. |
Code example
import { settingsObjectsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsObjectsClient.updatePermissionAllUsers({
objectId: "...",
body: {},
});
settingsSchemasClient
import { settingsSchemasClient } from '@dynatrace-sdk/client-classic-environment-v2';
getAvailableSchemaDefinitions
Lists available settings schemas
Required scope: settings:schemas:read One of the following permissions is required:
- environment:roles:manage-settings
- settings:schemas:read
Parameters
Name | Type | Description |
---|---|---|
config.fields | string | A list of fields to be included to the response. The provided set of fields replaces the default set. Specify the required top-level fields, separated by commas (for example, Supported fields: |
Returns
Return type | Status code | Description |
---|---|---|
SchemaList | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { settingsSchemasClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsSchemasClient.getAvailableSchemaDefinitions();
getSchemaDefinition
Gets parameters of the specified settings schema
Required scope: settings:schemas:read One of the following permissions is required:
- environment:roles:manage-settings
- settings:schemas:read
Parameters
Name | Type | Description |
---|---|---|
config.schemaId*required | string | The ID of the required schema. |
config.schemaVersion | string | The version of the required schema. If not set, the most recent version is returned. |
Returns
Return type | Status code | Description |
---|---|---|
SchemaDefinitionRestDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. Forbidden. | Failed. The specified schema doesn't exist. | Client side error. | Server side error. |
Code example
import { settingsSchemasClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await settingsSchemasClient.getSchemaDefinition({
schemaId: "...",
});
syntheticHttpMonitorExecutionsClient
import { syntheticHttpMonitorExecutionsClient } from '@dynatrace-sdk/client-classic-environment-v2';
getExecutionResult
Gets detailed information about the last execution of the specified HTTP monitor
Required scope: environment-api:synthetic-execution:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.locationId | string | Filters the results to those executed by specified Synthetic location. Specify the ID of the location. |
config.monitorId*required | string | Identifier of the HTTP monitor for which last execution result is returned. |
config.resultType*required | "SUCCESS" | "FAILED" | Defines the result type of the last HTTP monitor's execution. |
Returns
Return type | Status code | Description |
---|---|---|
MonitorExecutionResults | 200 | Success. The response contains detailed data. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticHttpMonitorExecutionsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticHttpMonitorExecutionsClient.getExecutionResult(
{ monitorId: "...", resultType: "SUCCESS" },
);
syntheticLocationsNodesAndConfigurationClient
import { syntheticLocationsNodesAndConfigurationClient } from '@dynatrace-sdk/client-classic-environment-v2';
addLocation
Creates a new private synthetic location
Required scope: environment-api:synthetic:write Required permission: environment:roles:manage-settings
Parameters
Name | Type |
---|---|
config.body*required | PrivateSyntheticLocation |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticLocationIdsDto | 201 | Success. The private location has been created. The response contains the ID of the new location. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.addLocation(
{
body: {
latitude: 10,
longitude: 10,
name: "...",
nodes: ["..."],
type: "CLUSTER",
},
},
);
getConfiguration
Gets set of synthetic related parameters defined for whole tenant (affects all monitors and all private locations). | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Returns
Return type | Status code | Description |
---|---|---|
SyntheticConfigDto | 200 | Success. The response contains synthetic related parameters defined for whole tenant. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getConfiguration();
getLocation
Gets properties of the specified location
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.locationId*required | string | The Dynatrace entity ID of the required location. |
Returns
Return type | Status code | Description |
---|---|---|
PrivateSyntheticLocation | 200 | Success. The response contains parameters of the synthetic location. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getLocation(
{ locationId: "..." },
);
getLocationDeploymentApplyCommands
Gets list of commands to deploy synthetic location in Kubernetes/Openshift cluster | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.filename | string | Filename |
config.namespace | string | Namespace |
config.platform | string | Container platform, currently supported are: KUBERNETES and OPENSHIFT. Default value is KUBERNETES. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success. The response contains the list of commands that needs to be executed to deploy a synthetic location. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getLocationDeploymentApplyCommands();
getLocationDeploymentDeleteCommands
Gets list of commands to delete synthetic location in Kubernetes/Openshift cluster | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.filename | string | Filename |
config.locationId*required | string | The Dynatrace entity ID of the required location. |
config.namespace | string | Namespace |
config.platform | string | Container platform, currently supported are: KUBERNETES and OPENSHIFT. Default value is KUBERNETES. |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success. The response contains the list of commands that needs to be executed to delete a synthetic location. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getLocationDeploymentDeleteCommands(
{ locationId: "..." },
);
getLocationDeploymentYaml
Gets yaml file content to deploy location in Kubernetes/Openshift cluster | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.activeGateName | string | Active gate name |
config.customRegistry | string | Custom images registry prefix - this will replace 'dynatrace' in image URLs in generated yaml. |
config.locationId*required | string | The Dynatrace entity ID of the required location. |
config.namespace | string | Namespace |
config.tagVersionActiveGate | string | Custom version tag for Active Gate - this will be used as desired Active Gate version in generated yaml. |
config.tagVersionSynthetic | string | Custom version tag for Synthetic- this will be used as desired Synthetic version in generated yaml |
Returns
Return type | Status code | Description |
---|---|---|
void | 200 | Success. The response contains the content of deployment yaml file. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getLocationDeploymentYaml(
{ locationId: "..." },
);
getLocations
Lists all synthetic locations (both public and private) available for your environment
Required scope: environment-api:synthetic:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.capability | "BROWSER" | "HTTP" | "HTTP_HIGH_RESOURCE" | "ICMP" | "TCP" | "DNS" | Filters the resulting set of locations to those which support specific capability. |
config.cloudPlatform | "AWS" | "AZURE" | "ALIBABA" | "GOOGLE_CLOUD" | "OTHER" | Filters the resulting set of locations to those which are hosted on a specific cloud platform. |
config.type | "PUBLIC" | "PRIVATE" | Filters the resulting set of locations to those of a specific type. |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticLocations | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getLocations();
getLocationsStatus
Checks the status of public synthetic locations
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Returns
Return type | Status code | Description |
---|---|---|
SyntheticPublicLocationsStatus | 200 | Success. The response contains the public locations status. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getLocationsStatus();
getNode
Lists properties of the specified synthetic node
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.nodeId*required | string | The ID of the required synthetic node. |
Returns
Return type | Status code | Description |
---|---|---|
Node | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getNode(
{ nodeId: "..." },
);
getNodes
Lists all synthetic nodes available in your environment
Required scope: environment-api:synthetic:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.assignedToLocation | "TRUE" | "FALSE" | Filters the resulting set of nodes to those which are assigned to a synthetic location or not. |
config.isContainerized | boolean | If set to true, returns only containerized nodes. |
Returns
Return type | Status code | Description |
---|---|---|
Nodes | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.getNodes();
removeLocation
Deletes the specified private synthetic location
Required scope: environment-api:synthetic:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.locationId*required | string | The Dynatrace entity ID of the private synthetic location to be deleted. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The location has been deleted. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.removeLocation(
{ locationId: "..." },
);
updateConfiguration
Updates set of synthetic related parameters defined for whole tenant (affects all monitors and all private locations). | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic:write Required permission: environment:roles:manage-settings
Parameters
Name | Type |
---|---|
config.body*required | SyntheticConfigDto |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticConfigDto | 204 | Success. The set of synthetic related parameters has been updated. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.updateConfiguration(
{ body: { bmMonitorTimeout: 10, bmStepTimeout: 10 } },
);
updateLocation
Updates the specified synthetic location
Required scope: environment-api:synthetic:write Required permission: environment:roles:manage-settings
For public locations you can only change the location status.
Parameters
Name | Type | Description |
---|---|---|
config.body*required | SyntheticLocationUpdate | |
config.locationId*required | string | The Dynatrace entity ID of the synthetic location to be updated. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. The location has been updated. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.updateLocation(
{ locationId: "...", body: { type: "PRIVATE" } },
);
updateLocationsStatus
Changes the status of public synthetic locations
Required scope: environment-api:synthetic:write Required permission: environment:roles:manage-settings
Parameters
Name | Type |
---|---|
config.body*required | SyntheticPublicLocationsStatus |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Locations status has been updated. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticLocationsNodesAndConfigurationClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticLocationsNodesAndConfigurationClient.updateLocationsStatus(
{ body: { publicLocationsEnabled: false } },
);
syntheticNetworkAvailabilityMonitorsClient
import { syntheticNetworkAvailabilityMonitorsClient } from '@dynatrace-sdk/client-classic-environment-v2';
createMonitor
Creates a synthetic monitor definition. Currently network availability monitors only. | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic-monitors:write Required permission: environment:roles:manage-settings
Parameters
Name | Type |
---|---|
config.body*required | SyntheticMultiProtocolMonitorRequest |
Returns
Return type | Status code | Description |
---|---|---|
MonitorEntityIdDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticNetworkAvailabilityMonitorsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticNetworkAvailabilityMonitorsClient.createMonitor(
{},
);
deleteMonitor
Deletes a synthetic monitor definition for the given monitor ID. Currently network availability monitors only. | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic-monitors:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.monitorId*required | string | The identifier of the monitor. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticNetworkAvailabilityMonitorsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticNetworkAvailabilityMonitorsClient.deleteMonitor(
{ monitorId: "..." },
);
getMonitor
Gets a synthetic monitor definition for the given monitor ID. Currently network availability monitors only. | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic-monitors:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.monitorId*required | string | The identifier of the monitor. |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticMultiProtocolMonitorResponse | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticNetworkAvailabilityMonitorsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticNetworkAvailabilityMonitorsClient.getMonitor(
{ monitorId: "..." },
);
getMonitors
Gets all synthetic monitors. Currently network availability monitors only. | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic-monitors:read Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.monitorSelector | string | Defines the scope of the query. Only monitors matching the specified criteria are included into response. You can add one or several of the criteria listed below. For each criterion you can specify multiple comma-separated values, unless stated otherwise. If several values are specified, the OR logic applies.
To set several criteria, separate them with a comma ( |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticMonitorListDto | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticNetworkAvailabilityMonitorsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticNetworkAvailabilityMonitorsClient.getMonitors();
updateMonitor
Updates a synthetic monitor definition for the given monitor ID. Currently network availability monitors only. | maturity=EARLY_ADOPTER
Required scope: environment-api:synthetic-monitors:write Required permission: environment:roles:manage-settings
Parameters
Name | Type | Description |
---|---|---|
config.body*required | SyntheticMultiProtocolMonitorRequest | |
config.monitorId*required | string | The identifier of the monitor. |
Returns
Return type | Status code | Description |
---|---|---|
void | 204 | Success. Response doesn't have a body. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Client side error. | Server side error. |
Code example
import { syntheticNetworkAvailabilityMonitorsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticNetworkAvailabilityMonitorsClient.updateMonitor(
{ monitorId: "..." },
);
syntheticOnDemandMonitorExecutionsClient
import { syntheticOnDemandMonitorExecutionsClient } from '@dynatrace-sdk/client-classic-environment-v2';
execute
Triggers on-demand executions for synthetic monitors
Required scope: environment-api:synthetic-execution:write Required permission: environment:roles:viewer
Parameters
Name | Type |
---|---|
config.body*required | SyntheticOnDemandExecutionRequest |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticOnDemandExecutionResult | 201 | Success. The monitor's execution response details |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Unavailable | Client side error. | Server side error. |
Code example
import { syntheticOnDemandMonitorExecutionsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticOnDemandMonitorExecutionsClient.execute({
body: {},
});
getBatch
Gets summary information and the list of failed executions for the given batch ID
Required scope: environment-api:synthetic-execution:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.batchId*required | number | The batch identifier of the executions. |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticOnDemandBatchStatus | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Batch with the given ID doesn't exist. | Client side error. | Server side error. |
Code example
import { syntheticOnDemandMonitorExecutionsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticOnDemandMonitorExecutionsClient.getBatch({
batchId: 10,
});
getExecution
Gets basic results of the specified on-demand execution
Required scope: environment-api:synthetic-execution:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.executionId*required | number | The identifier of the on-demand execution. |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticOnDemandExecution | 200 | Success. The response contains basic information about the on-demand execution. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Execution with the given ID doesn't exist. | Client side error. | Server side error. |
Code example
import { syntheticOnDemandMonitorExecutionsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticOnDemandMonitorExecutionsClient.getExecution(
{ executionId: 10 },
);
getExecutionFullReport
Gets detailed results of the specified on-demand execution
Required scope: environment-api:synthetic-execution:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.executionId*required | number | The identifier of the on-demand execution. |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticOnDemandExecution | 200 | Success. The response contains detailed information about the on-demand execution. |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Execution with the given ID doesn't exist. | Client side error. | Server side error. |
Code example
import { syntheticOnDemandMonitorExecutionsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticOnDemandMonitorExecutionsClient.getExecutionFullReport(
{ executionId: 10 },
);
getExecutions
Gets the list of all on-demand executions of synthetic monitors
Required scope: environment-api:synthetic-execution:read Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.batchId | number | Filters the resulting set of the executions by batch. Specify the ID of the batch. |
config.dataDeliveryFrom | string | The start of the requested timeframe for data delivering timestamps. You can use one of the following formats:
If not set, the maximum relative timeframe of six hours is used ( |
config.dataDeliveryTo | string | The end of the requested timeframe for data delivering timestamps. You can use one of the following formats:
If not set, the current timestamp is used. |
config.executionFrom | string | The start of the requested timeframe for execution timestamps. You can use one of the following formats:
If not set, the maximum relative timeframe of six hours is used ( |
config.executionStage | "TRIGGERED" | "EXECUTED" | "DATA_RETRIEVED" | Filters the resulting set of executions by their stage. |
config.executionTo | string | The end of the requested timeframe for execution timestamps. You can use one of the following formats:
If not set, the current timestamp is used. |
config.locationId | string | Filters the resulting set of the executions by Synthetic location. Specify the ID of the location. |
config.monitorId | string | Filters the resulting set of the executions by monitor synthetic monitor. Specify the ID of the monitor. |
config.schedulingFrom | string | The start of the requested timeframe for scheduling timestamps. You can use one of the following formats:
If not set, the maximum relative timeframe of six hours is used ( |
config.schedulingTo | string | The end of the requested timeframe for scheduling timestamps. You can use one of the following formats:
If not set, the current timestamp is used. |
config.source | "API" | "UI" | Filters the resulting set of the executions by the source of the triggering request. |
config.userId | string | Filters the resulting set of executions by scheduled user. |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticOnDemandExecutions | 200 | Success |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Client side error. | Server side error. |
Code example
import { syntheticOnDemandMonitorExecutionsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticOnDemandMonitorExecutionsClient.getExecutions();
rerun
Reruns specified on-demand execution of synthetic monitors
Required scope: environment-api:synthetic-execution:write Required permission: environment:roles:viewer
Parameters
Name | Type | Description |
---|---|---|
config.executionId*required | number | The identifier of the on-demand execution. |
Returns
Return type | Status code | Description |
---|---|---|
SyntheticOnDemandExecutionResult | 201 | Success. The monitor's execution response details |
Throws
Error Type | Error Message |
---|---|
ErrorEnvelopeError | Failed. The input is invalid. | Unavailable | Client side error. | Server side error. |
Code example
import { syntheticOnDemandMonitorExecutionsClient } from "@dynatrace-sdk/client-classic-environment-v2";
const data =
await syntheticOnDemandMonitorExecutionsClient.rerun({
executionId: 10,
});
Types
AWSKeyBasedCredentialsDto
A credentials set of the AWS_MONITORING_KEY_BASED
type.
Name | Type | Description |
---|---|---|
accessKeyID | string | Access Key ID of the credentials set. |
allowContextlessRequests | boolean | Allow ad-hoc functions to access the credential details (requires the APP_ENGINE scope). |
allowedEntities | Array<CredentialAccessData> | The set of entities allowed to use the credential. |
awsPartition | "CHINA" | "DEFAULT" | "US_GOV" | AWS partition of the credential. |
description | string | A short description of the credentials set. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
ownerAccessOnly | boolean | The credentials set is available to every user (false ) or to owner only (true ). |
"EXTENSION" | "SYNTHETIC" | "APP_ENGINE" | The scope of the credentials set. | |
scopes*required | Array<"EXTENSION" | "SYNTHETIC" | "APP_ENGINE"> | The set of scopes of the credentials set. Limitations: |
secretKey | string | Secret access key of the credential. |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | "AWS_MONITORING_KEY_BASED" | "AWS_MONITORING_ROLE_BASED" | "SNMPV3" | Defines the actual set of fields depending on the value. See one of the following objects:
|
AWSRoleBasedCredentials
A credentials set of the AWS_MONITORING_ROLE_BASED
type.
Name | Type | Description |
---|---|---|
accountID | string | Amazon account ID of the credential. |
allowContextlessRequests | boolean | Allow ad-hoc functions to access the credential details (requires the APP_ENGINE scope). |
allowedEntities | Array<CredentialAccessData> | The set of entities allowed to use the credential. |
description | string | A short description of the credentials set. |
iamRole | string | The IAM role name of the credentials set. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
ownerAccessOnly | boolean | The credentials set is available to every user (false ) or to owner only (true ). |
"EXTENSION" | "SYNTHETIC" | "APP_ENGINE" | The scope of the credentials set. | |
scopes*required | Array<"EXTENSION" | "SYNTHETIC" | "APP_ENGINE"> | The set of scopes of the credentials set. Limitations: |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | "AWS_MONITORING_KEY_BASED" | "AWS_MONITORING_ROLE_BASED" | "SNMPV3" | Defines the actual set of fields depending on the value. See one of the following objects:
|
AbstractCredentialsResponseElement
Credentials set.
Name | Type | Description |
---|---|---|
credentialUsageSummary*required | Array<CredentialUsageHandler> | The list contains summary data related to the use of credentials. |
description*required | string | A short description of the credentials set. |
externalVault | ExternalVaultConfig | Configuration for external vault synchronization for username and password credentials. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
owner*required | string | The owner of the credential (user for which used API token was created). |
ownerAccessOnly*required | boolean | Flag indicating that this credential is visible only to the owner. |
scope | "ALL" | "EXTENSION" | "SYNTHETIC" | "UNKNOWN" | The scope of the credentials set. |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | Defines the actual set of fields depending on the value. See one of the following objects:
|
AbstractSloAlertDto
Name | Type | Description |
---|---|---|
alertName*required | string | Name of the alert. |
alertThreshold*required | number | Threshold of the alert. Status alerts trigger if they fall below this value, burn rate alerts trigger if they exceed the value. |
alertType*required | "BURN_RATE" | "STATUS" | Defines the actual set of fields depending on the value. See one of the following objects:
|
AccessorPermissions
An accessor identity and it's associated permissions.
Name | Type | Description |
---|---|---|
accessor | Identity | An Identity describing either a user, a group, or the all-users group (applying to all users). |
permissions | Array<"r" | "w"> | The permissions associated with the accessor. |
AccessorPermissionsList
All configured permissions of an object (excluding owner).
Name | Type |
---|---|
accessors | Array<AccessorPermissions> |
ActiveGate
Parameters of the ActiveGate.
Name | Type | Description |
---|---|---|
activeGateTokens | Array<ActiveGateTokenInfoDto> | A list of the ActiveGate tokens. |
autoUpdateSettings | ActiveGateAutoUpdateConfig | Configuration of the ActiveGate auto-updates. |
autoUpdateStatus | "UNKNOWN" | "INCOMPATIBLE" | "OUTDATED" | "SCHEDULED" | "SUPPRESSED" | "UP2DATE" | "UPDATE_IN_PROGRESS" | "UPDATE_PENDING" | "UPDATE_PROBLEM" | The current status of auto-updates of the ActiveGate. |
connectedHosts | ActiveGateConnectedHosts | Information about hosts currently connected to the ActiveGate |
containerized | boolean | ActiveGate is deployed in container (true ) or not (false ). |
environments | Array<string> | A list of environments (specified by IDs) the ActiveGate can connect to. |
fipsMode | boolean | ActiveGate is running in FIPS compliant mode (true ) or not (false ). |
group | string | The group of the ActiveGate. |
hostname | string | The name of the host the ActiveGate is running on. |
id | string | The ID of the ActiveGate. |
loadBalancerAddresses | Array<string> | A list of Load Balancer addresses of the ActiveGate. |
mainEnvironment | string | The ID of the main environment for a multi-environment ActiveGate. |
modules | Array<ActiveGateModule> | A list of modules of the ActiveGate. |
networkAddresses | Array<string> | A list of network addresses of the ActiveGate. |
networkZone | string | The network zone of the ActiveGate. |
offlineSince | number | The timestamp since when the ActiveGate is offline. The |
osArchitecture | "S390" | "X86" | "ARM" | "PPCLE" | The OS architecture that the ActiveGate is running on. |
osBitness | "64" | The OS bitness that the ActiveGate is running on. |
osType | "LINUX" | "WINDOWS" | The OS type that the ActiveGate is running on. |
type | "CLUSTER" | "ENVIRONMENT" | "ENVIRONMENT_MULTI" | The type of the ActiveGate. |
version | string | The current version of the ActiveGate in the <major>.<minor>.<revision>.<timestamp> format. |
ActiveGateAutoUpdateConfig
Configuration of the ActiveGate auto-updates.
Name | Type | Description |
---|---|---|
effectiveSetting | "ENABLED" | "DISABLED" | The actual state of the ActiveGate auto-update. Applicable only if the setting parameter is set to |
setting*required | "ENABLED" | "DISABLED" | "INHERITED" | The state of the ActiveGate auto-update: enabled, disabled, or inherited. If set to |
ActiveGateConnectedHosts
Information about hosts currently connected to the ActiveGate
Name | Type | Description |
---|---|---|
number | number | The number of hosts currently connected to the ActiveGate |
ActiveGateGlobalAutoUpdateConfig
Global configuration of ActiveGates auto-update.
Name | Type | Description |
---|---|---|
globalSetting*required | "ENABLED" | "DISABLED" | The state of auto-updates for all ActiveGates connected to the environment or Managed cluster. This setting is inherited by all ActiveGates that have the |
metadata | ConfigurationMetadata | Metadata useful for debugging |
ActiveGateGroup
Information about ActiveGate group.
Name | Type | Description |
---|---|---|
name | string | Name of ActiveGate group |
ActiveGateGroupInfoDto
Metadata for each ActiveGate group.
Name | Type | Description |
---|---|---|
activeGates*required | Array<ActiveGateInfoDto> | ActiveGates in group. |
availableActiveGates*required | number | Number of ActiveGates in group available for extension. |
groupName*required | string | ActiveGate group name. |
ActiveGateGroups
The collection of ActiveGate groups.
Name | Type | Description |
---|---|---|
groups | Array<ActiveGateGroup> | List of ActiveGate groups |
ActiveGateGroupsInfoDto
ActiveGate groups metadata for extensions.
Name | Type | Description |
---|---|---|
activeGateGroups*required | Array<ActiveGateGroupInfoDto> | Metadata for each ActiveGate group. |
ActiveGateInfoDto
ActiveGates in group.
Name | Type | Description |
---|---|---|
errors*required | Array<string> | List of errors if Extension cannot be run on the ActiveGate |
id*required | number | ActiveGate ID. |
ActiveGateList
A list of ActiveGates.
Name | Type | Description |
---|---|---|
activeGates | Array<ActiveGate> | A list of ActiveGates. |
ActiveGateModule
Information about ActiveGate module
Name | Type | Description |
---|---|---|
attributes | ActiveGateModuleAttributes | The attributes of the ActiveGate module. |
enabled | boolean | The module is enabled (true ) or disabled (false ). |
misconfigured | boolean | The module is misconfigured (true ) or not (false ). |
type | "SYNTHETIC" | "AWS" | "AZURE" | "BEACON_FORWARDER" | "CLOUD_FOUNDRY" | "DB_INSIGHT" | "DEBUGGING" | "EXTENSIONS_V1" | "EXTENSIONS_V2" | "KUBERNETES" | "LOGS" | "MEMORY_DUMPS" | "METRIC_API" | "ONE_AGENT_ROUTING" | "OTLP_INGEST" | "REST_API" | "VMWARE" | "Z_OS" | The type of ActiveGate module. |
version | string | The version of the ActiveGate module. |
ActiveGateModuleAttributes
The attributes of the ActiveGate module.
type: Record<string, string | undefined>
ActiveGateToken
Metadata of an ActiveGate token.
Name | Type | Description |
---|---|---|
activeGateType*required | "CLUSTER" | "ENVIRONMENT" | The type of the ActiveGate for which the token is valid. |
creationDate*required | string | The token creation date in ISO 8601 format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z' ). |
expirationDate | string | The token expiration date in ISO 8601 format ( If not set, the token never expires. |
id*required | string | The ActiveGate token identifier, consisting of prefix and public part of the token. |
lastUsedDate | string | The token last used date in ISO 8601 format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z' ). |
name*required | string | The name of the token. |
owner*required | string | The owner of the token. |
seedToken | boolean | The token is a seed token (true ) or an individual token (false ). |
ActiveGateTokenCreate
Parameters of a new ActiveGate token.
Name | Type | Description |
---|---|---|
activeGateType*required | "CLUSTER" | "ENVIRONMENT" | The type of the ActiveGate for which the token is valid. |
expirationDate | string | The expiration date of the token. You can use one of the following formats:
If not set, the token never expires. Ensure that it is not set in the past and does not exceed |
name*required | string | The name of the token. |
seedToken | boolean | The token is a seed token ( We recommend the individual token option (false). |
ActiveGateTokenCreated
The newly created ActiveGate token.
Name | Type | Description |
---|---|---|
expirationDate | string | The token expiration date in ISO 8601 format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z' ). |
id*required | string | The ActiveGate token identifier, consisting of prefix and public part of the token. |
token*required | string | The secret of the token. |
ActiveGateTokenInfoDto
Information about ActiveGate token.
Name | Type | Description |
---|---|---|
environmentId | string | The environment ID to which the token belongs. Only available if more than one environment is supported. |
id | string | The ActiveGate token identifier, consisting of prefix and public part of the token. |
state | "UNKNOWN" | "ABSENT" | "EXPIRING" | "INVALID" | "UNSUPPORTED" | "VALID" | State of the ActiveGate token. |
ActiveGateTokenList
A list of ActiveGate tokens.
Name | Type | Description |
---|---|---|
activeGateTokens | Array<ActiveGateToken> | A list of ActiveGate tokens. |
nextPageKey | string | The cursor for the next page of results. Has the value of Use it in the nextPageKey query parameter to obtain subsequent pages of the result. |
pageSize | number | The number of entries per page. |
totalCount*required | number | The total number of entries in the result. |
AddEntityTag
The custom tag to be added to monitored entities.
Name | Type | Description |
---|---|---|
key*required | string | The key of the custom tag to be added to monitored entities. |
value | string | The value of the custom tag to be added to monitored entities. May be null |
AddEntityTags
A list of tags to be added to monitored entities.
Name | Type | Description |
---|---|---|
tags*required | Array<AddEntityTag> | A list of tags to be added to monitored entities. |
AddedEntityTags
A list of custom tags added to monitored entities.
Name | Type | Description |
---|---|---|
appliedTags | Array<METag> | A list of added custom tags. |
matchedEntitiesCount | number | The number of monitored entities where the tags have been added. |
AffectedEntities
Information about affected entities of an attack.
Name | Type | Description |
---|---|---|
processGroup | AffectedEntity | Information about an affected entity. |
processGroupInstance | AffectedEntity | Information about an affected entity. |
AffectedEntity
Information about an affected entity.
Name | Type | Description |
---|---|---|
id | string | The monitored entity ID of the affected entity. |
name | string | The name of the affected entity. |
AgentConnectionToken
Holds the agent connection token.
Name | Type | Description |
---|---|---|
token | string | The agent connection token |
AggregatedLog
Aggregated log records.
Name | Type | Description |
---|---|---|
aggregationResult | AggregatedLogAggregationResult | Aggregated log records. |
warnings | string | Optional warning messages. |
AggregatedLogAggregationResult
Aggregated log records.
type: Record<string, object | undefined>
AlertTemplateDto
Name | Type |
---|---|
templateJson | string |
AlertingProfileStub
Short representation of the alerting profile.
Name | Type | Description |
---|---|---|
id*required | string | The ID of the alerting profile. |
name | string | The name of the alerting profile. |
ApiToken
Metadata of an API token.
Name | Type | Description |
---|---|---|
additionalMetadata | ApiTokenAdditionalMetadata | Contains additional properties for specific kinds of token. Examples:
|
creationDate | string | Token creation date in ISO 8601 format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z' ) |
enabled | boolean | The token is enabled (true ) or disabled (false ). |
expirationDate | string | Token expiration date in ISO 8601 format ( If not set, the token never expires. |
id | string | The ID of the token, consisting of prefix and public part of the token. |
lastUsedDate | string | Token last used date in ISO 8601 format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z' ) |
lastUsedIpAddress | string | Token last used IP address. |
modifiedDate | string | Token last modified date in ISO 8601 format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z' ). Updating scopes or name counts as modification, enabling or disabling a token does not. |
name | string | The name of the token. |
owner | string | The owner of the token. |
personalAccessToken | boolean | The token is a personal access token (true ) or an API token (false ). |
scopes | Array<"ActiveGateCertManagement" | "AdvancedSyntheticIntegration" | "CaptureRequestData" | "DTAQLAccess" | "DataExport" | "DataImport" | "DataPrivacy" | "Davis" | "DiagnosticExport" | "DssFileManagement" | "ExternalSyntheticIntegration" | "InstallerDownload" | "LogExport" | "MemoryDump" | "Mobile" | "PluginUpload" | "ReadConfig" | "ReadSyntheticData" | "RestRequestForwarding" | "RumBrowserExtension" | "RumJavaScriptTagManagement" | "SupportAlert" | "TenantTokenManagement" | "UserSessionAnonymization" | "ViewDashboard" | "ViewReport" | "WriteConfig" | "WriteSyntheticData" | "activeGateTokenManagement.create" | "activeGateTokenManagement.read" | "activeGateTokenManagement.write" | "activeGates.read" | "activeGates.write" | "adaptiveTrafficManagement.read" | "agentTokenManagement.read" | "analyzers.read" | "analyzers.write" | "apiTokens.read" | "apiTokens.write" | "attacks.read" | "attacks.write" | "auditLogs.read" | "bizevents.ingest" | "credentialVault.read" | "credentialVault.write" | "entities.read" | "entities.write" | "events.ingest" | "events.read" | "extensionConfigurationActions.write" | "extensionConfigurations.read" | "extensionConfigurations.write" | "extensionEnvironment.read" | "extensionEnvironment.write" | "extensions.read" | "extensions.write" | "geographicRegions.read" | "hub.install" | "hub.read" | "hub.write" | "javaScriptMappingFiles.read" | "javaScriptMappingFiles.write" | "logs.ingest" | "logs.read" | "metrics.ingest" | "metrics.read" | "metrics.write" | "networkZones.read" | "networkZones.write" | "oneAgents.read" | "oneAgents.write" | "openTelemetryTrace.ingest" | "openpipeline.events" | "openpipeline.events.custom" | "openpipeline.events_sdlc" | "openpipeline.events_sdlc.custom" | "openpipeline.events_security" | "openpipeline.events_security.custom" | "problems.read" | "problems.write" | "releases.read" | "rumCookieNames.read" | "securityProblems.read" | "securityProblems.write" | "settings.read" | "settings.write" | "slo.read" | "slo.write" | "syntheticExecutions.read" | "syntheticExecutions.write" | "syntheticLocations.read" | "syntheticLocations.write" | "tenantTokenRotation.write" | "traces.lookup" | "unifiedAnalysis.read"> | A list of scopes assigned to the token. |
ApiTokenCreate
Parameters of a new API token.
Name | Type | Description |
---|---|---|
expirationDate | string | The expiration date of the token. You can use one of the following formats:
If not set, the token never expires. Ensure that the expiration date is not set in the past. |
name*required | string | The name of the token. |
personalAccessToken | boolean | The token is a personal access token ( Personal access tokens are tied to the permissions of their owner. |
scopes*required | Array<"ActiveGateCertManagement" | "AdvancedSyntheticIntegration" | "CaptureRequestData" | "DTAQLAccess" | "DataExport" | "DataImport" | "DataPrivacy" | "Davis" | "DssFileManagement" | "ExternalSyntheticIntegration" | "InstallerDownload" | "LogExport" | "PluginUpload" | "ReadConfig" | "ReadSyntheticData" | "RestRequestForwarding" | "RumBrowserExtension" | "RumJavaScriptTagManagement" | "SupportAlert" | "TenantTokenManagement" | "UserSessionAnonymization" | "WriteConfig" | "activeGateTokenManagement.create" | "activeGateTokenManagement.read" | "activeGateTokenManagement.write" | "activeGates.read" | "activeGates.write" | "adaptiveTrafficManagement.read" | "agentTokenManagement.read" | "analyzers.read" | "analyzers.write" | "apiTokens.read" | "apiTokens.write" | "attacks.read" | "attacks.write" | "auditLogs.read" | "bizevents.ingest" | "credentialVault.read" | "credentialVault.write" | "entities.read" | "entities.write" | "events.ingest" | "events.read" | "extensionConfigurationActions.write" | "extensionConfigurations.read" | "extensionConfigurations.write" | "extensionEnvironment.read" | "extensionEnvironment.write" | "extensions.read" | "extensions.write" | "geographicRegions.read" | "hub.install" | "hub.read" | "hub.write" | "javaScriptMappingFiles.read" | "javaScriptMappingFiles.write" | "logs.ingest" | "logs.read" | "metrics.ingest" | "metrics.read" | "metrics.write" | "networkZones.read" | "networkZones.write" | "oneAgents.read" | "oneAgents.write" | "openTelemetryTrace.ingest" | "openpipeline.events" | "openpipeline.events.custom" | "openpipeline.events_sdlc" | "openpipeline.events_sdlc.custom" | "openpipeline.events_security" | "openpipeline.events_security.custom" | "problems.read" | "problems.write" | "releases.read" | "rumCookieNames.read" | "securityProblems.read" | "securityProblems.write" | "settings.read" | "settings.write" | "slo.read" | "slo.write" | "syntheticExecutions.read" | "syntheticExecutions.write" | "syntheticLocations.read" | "syntheticLocations.write" | "tenantTokenRotation.write" | "traces.lookup" | "unifiedAnalysis.read"> | A list of the scopes to be assigned to the token.
|
ApiTokenCreated
The newly created token.
Name | Type | Description |
---|---|---|
expirationDate | string | The token expiration date in ISO 8601 format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z' ). |
id | string | The ID of the token, consisting of prefix and public part of the token. |
token | string | The secret of the token. |
ApiTokenList
A list of API tokens.
Name | Type | Description |
---|---|---|
apiTokens | Array<ApiToken> | A list of API tokens. |
nextPageKey | string | The cursor for the next page of results. Has the value of Use it in the nextPageKey query parameter to obtain subsequent pages of the result. |
pageSize | number | The number of entries per page. |
totalCount*required | number | The total number of entries in the result. |
ApiTokenSecret
Name | Type | Description |
---|---|---|
token*required | string | The API token. |
ApiTokenUpdate
The update of the API token.
Name | Type | Description |
---|---|---|
enabled | boolean | The token is enabled (true ) or disabled (false ) |
name | string | The name of the token. |
scopes | Array<"ActiveGateCertManagement" | "AdvancedSyntheticIntegration" | "CaptureRequestData" | "DTAQLAccess" | "DataExport" | "DataImport" | "DataPrivacy" | "Davis" | "DssFileManagement" | "ExternalSyntheticIntegration" | "InstallerDownload" | "LogExport" | "PluginUpload" | "ReadConfig" | "ReadSyntheticData" | "RestRequestForwarding" | "RumBrowserExtension" | "RumJavaScriptTagManagement" | "SupportAlert" | "TenantTokenManagement" | "UserSessionAnonymization" | "WriteConfig" | "activeGateTokenManagement.create" | "activeGateTokenManagement.read" | "activeGateTokenManagement.write" | "activeGates.read" | "activeGates.write" | "adaptiveTrafficManagement.read" | "agentTokenManagement.read" | "analyzers.read" | "analyzers.write" | "apiTokens.read" | "apiTokens.write" | "attacks.read" | "attacks.write" | "auditLogs.read" | "bizevents.ingest" | "credentialVault.read" | "credentialVault.write" | "entities.read" | "entities.write" | "events.ingest" | "events.read" | "extensionConfigurationActions.write" | "extensionConfigurations.read" | "extensionConfigurations.write" | "extensionEnvironment.read" | "extensionEnvironment.write" | "extensions.read" | "extensions.write" | "geographicRegions.read" | "hub.install" | "hub.read" | "hub.write" | "javaScriptMappingFiles.read" | "javaScriptMappingFiles.write" | "logs.ingest" | "logs.read" | "metrics.ingest" | "metrics.read" | "metrics.write" | "networkZones.read" | "networkZones.write" | "oneAgents.read" | "oneAgents.write" | "openTelemetryTrace.ingest" | "openpipeline.events" | "openpipeline.events.custom" | "openpipeline.events_sdlc" | "openpipeline.events_sdlc.custom" | "openpipeline.events_security" | "openpipeline.events_security.custom" | "problems.read" | "problems.write" | "releases.read" | "rumCookieNames.read" | "securityProblems.read" | "securityProblems.write" | "settings.read" | "settings.write" | "slo.read" | "slo.write" | "syntheticExecutions.read" | "syntheticExecutions.write" | "syntheticLocations.read" | "syntheticLocations.write" | "tenantTokenRotation.write" | "traces.lookup" | "unifiedAnalysis.read"> | The list of scopes assigned to the token. Apart from the new scopes, you need to submit the existing scopes you want to keep, too. Any existing scope, missing in the payload, is removed.
|
ApplicationImpact
Analysis of problem impact to an application.
Name | Type | Description |
---|---|---|
estimatedAffectedUsers*required | number | The estimated number of affected users. |
impactType*required | "APPLICATION" | "CUSTOM_APPLICATION" | "MOBILE" | "SERVICE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
impactedEntity*required | EntityStub | A short representation of a monitored entity. |
AppliedFilter
Optional filters that took effect.
Name | Type | Description |
---|---|---|
appliedTo*required | Array<string> | The keys of all metrics that this filter has been applied to. Can contain multiple metrics for complex expressions and always at least one key. |
filter | Filter | A dimensional or series filter on a metric. |
AssessmentAccuracyDetails
The assessment accuracy details.
Name | Type | Description |
---|---|---|
reducedReasons | Array<"LIMITED_AGENT_SUPPORT" | "LIMITED_BY_CONFIGURATION"> | The reasons for a reduced assessment accuracy. |
AssetInfo
Assets types and its count
Name | Type |
---|---|
assetType | string |
count | number |
AssetInfoDto
Metadata for an extension asset.
Name | Type | Description |
---|---|---|
assetSchemaDetails | AssetSchemaDetailsDto | Settings schema details for asset |
displayName | string | User-friendly name of the asset. |
id | string | ID of the asset. Identifies the asset in REST API and/or UI (where applicable). |
type | "ALERT" | "ALERT_TEMPLATE" | "AWS_SERVICE" | "CUSTOM_CARDS" | "DASHBOARD" | "DECLARATIVE_PROCESSES" | "DOCUMENT_DASHBOARD" | "DQL_LOG_METRIC" | "DQL_LOG_PROCESSING_RULE" | "GENERIC_RELATIONSHIP" | "GENERIC_TYPE" | "LIST_SCREEN_FILTERS" | "LIST_SCREEN_INJECTIONS" | "LIST_SCREEN_LAYOUT" | "LOG_EVENT" | "LOG_METRIC" | "LOG_PROCESSING_RULE" | "LQL_LOG_METRIC" | "LQL_LOG_PROCESSING_RULE" | "METRIC_METADATA" | "METRIC_QUERY" | "PROCESS_GROUPING_RULES" | "SCREEN_ACTIONS" | "SCREEN_CHART_GROUPS" | "SCREEN_DQL_TABLE" | "SCREEN_ENTITIES_LISTS" | "SCREEN_EVENTS_CARDS" | "SCREEN_FILTERS" | "SCREEN_HEALTH_CARDS" | "SCREEN_INJECTIONS" | "SCREEN_LAYOUT" | "SCREEN_LOGS_CARDS" | "SCREEN_MESSAGE_CARDS" | "SCREEN_METRIC_TABLES" | "SCREEN_PROBLEMS" | "SCREEN_PROPERTIES" | The type of the asset. |
AssetSchemaDetailsDto
Settings schema details for asset
Name | Type | Description |
---|---|---|
key | string | Asset key |
schemaId | string | Asset schema id |
scope | string | Asset configuration scope |
Attack
Describes an attack.
Name | Type | Description |
---|---|---|
affectedEntities | AffectedEntities | Information about affected entities of an attack. |
attackId | string | The ID of the attack. |
attackTarget | AttackTarget | Information about the targeted host/database of an attack. |
attackType | "COMMAND_INJECTION" | "JNDI_INJECTION" | "SQL_INJECTION" | "SSRF" | The type of the attack. |
attacker | Attacker | Attacker of an attack. |
displayId | string | The display ID of the attack. |
displayName | string | The display name of the attack. |
entrypoint | AttackEntrypoint | Describes the entrypoint used by an attacker to start a specific attack. |
managementZones | Array<ManagementZone> | A list of management zones which the affected entities belong to. |
request | RequestInformation | Describes the complete request information of an attack. |
securityProblem | AttackSecurityProblem | Assessment information and the ID of a security problem related to an attack. |
state | "ALLOWLISTED" | "BLOCKED" | "EXPLOITED" | The state of the attack. |
technology | "DOTNET" | "GO" | "JAVA" | "NODE_JS" | The technology of the attack. |
timestamp | number | The timestamp when the attack occurred. |
vulnerability | Vulnerability | Describes the exploited vulnerability. |
AttackEntrypoint
Describes the entrypoint used by an attacker to start a specific attack.
Name | Type | Description |
---|---|---|
codeLocation | CodeLocation | Information about a code location. |
entrypointFunction | FunctionDefinition | Information about a function definition. |
payload | Array<AttackEntrypointPayloadItem> | All relevant payload data that has been sent during the attack. |
AttackEntrypointPayloadItem
A list of values that has possibly been truncated.
Name | Type | Description |
---|---|---|
truncationInfo | TruncationInfo | Information on a possible truncation. |
values | Array<EntrypointPayload> | Values of the list. |
AttackList
A list of attacks.
Name | Type | Description |
---|---|---|
attacks | Array<Attack> | A list of attacks. |
nextPageKey | string | The cursor for the next page of results. Has the value of Use it in the nextPageKey query parameter to obtain subsequent pages of the result. |
pageSize | number | The number of entries per page. |
totalCount*required | number | The total number of entries in the result. |
AttackRequestHeader
A header element of the attack's request.
Name | Type | Description |
---|---|---|
name | string | The name of the header element. |
value | string | The value of the header element. |
AttackSecurityProblem
Assessment information and the ID of a security problem related to an attack.
Name | Type | Description |
---|---|---|
assessment | AttackSecurityProblemAssessmentDto | The assessment of a security problem related to an attack. |
securityProblemId | string | The security problem ID. |
AttackSecurityProblemAssessmentDto
The assessment of a security problem related to an attack.
Name | Type | Description |
---|---|---|
dataAssets | "NOT_AVAILABLE" | "NOT_DETECTED" | "REACHABLE" | The reachability of data assets by the attacked target. |
exposure | "NOT_AVAILABLE" | "NOT_DETECTED" | "PUBLIC_NETWORK" | The level of exposure of the attacked target |
numberOfReachableDataAssets | number | The number of data assets reachable by the attacked target. |
AttackTarget
Information about the targeted host/database of an attack.
Name | Type | Description |
---|---|---|
entityId | string | The monitored entity ID of the targeted host/database. |
name | string | The name of the targeted host/database. |
Attacker
Attacker of an attack.
Name | Type | Description |
---|---|---|
location | AttackerLocation | Location of an attacker. |
sourceIp | string | The source IP of the attacker. |
AttackerLocation
Location of an attacker.
Name | Type | Description |
---|---|---|
city | string | City of the attacker. |
country | string | The country of the attacker. |
countryCode | string | The country code of the country of the attacker, according to the ISO 3166-1 Alpha-2 standard. |
AuditLog
The audit log of your environment.
Name | Type | Description |
---|---|---|
auditLogs | Array<AuditLogEntry> | A list of audit log entries ordered by the creation timestamp. |
nextPageKey | string | The cursor for the next page of results. Has the value of Use it in the nextPageKey query parameter to obtain subsequent pages of the result. |
pageSize | number | The number of entries per page. |
totalCount*required | number | The total number of entries in the result. |
AuditLogEntry
An entry of the audit log.
Name | Type | Description |
---|---|---|
category*required | "TOKEN" | "ACTIVEGATE_TOKEN" | "BUILD_UNIT_V2" | "CONFIG" | "MANUAL_TAGGING_SERVICE" | "TENANT_LIFECYCLE" | "WEB_UI" | The category of the recorded operation. |
dt.settings.key | string | The key of the affected object of a setting for entries of category CONFIG . |
dt.settings.object_id | string | The ID of the affected object of a setting for entries of category CONFIG . |
dt.settings.object_summary | string | The value summary for entries of category CONFIG . |
dt.settings.schema_id | string | The schema ID or config ID for entries of category CONFIG . |
dt.settings.scope_id | string | The persistence scope for entries of category CONFIG , e.g. an ME identifier. |
dt.settings.scope_name | string | The display name of the scope for entries of category CONFIG . |
entityId | string | The ID of an entity from the category. For example, it can be config ID for the |
environmentId*required | string | The ID of the Dynatrace environment where the recorded operation occurred. |
eventType*required | "CREATE" | "DELETE" | "LOGIN" | "LOGOUT" | "REORDER" | "REVOKE" | "TAG_ADD" | "TAG_REMOVE" | "TAG_UPDATE" | "UPDATE" | The type of the recorded operation.
|
logId*required | string | The ID of the log entry. |
message | string | The logged message. |
patch | AnyValue | The patch of the recorded operation as the JSON representation. The format is an enhanced RFC 6902. The patch also carries the previous value in the oldValue field. |
success*required | boolean | The recorded operation is successful (true ) or failed (false ). |
timestamp*required | number | The timestamp of the record creation, in UTC milliseconds. |
user*required | string | The ID of the user who performed the recorded operation. |
userOrigin | string | The origin and the IP address of the user. |
userType*required | "PUBLIC_TOKEN_IDENTIFIER" | "SERVICE_NAME" | "TOKEN_HASH" | "USER_NAME" | The type of the authentication of the user.
|
AuthorDto
Extension author
Name | Type | Description |
---|---|---|
name | string | Author name |
AvailabilityEvidence
The availability evidence of the problem.
Indicates an entity that has been unavailable during the problem lifespan and that might be related to the root cause.
Name | Type | Description |
---|---|---|
displayName*required | string | The display name of the evidence. |
endTime | number | The end time of the evidence, in UTC milliseconds. |
entity*required | EntityStub | A short representation of a monitored entity. |
evidenceType*required | "AVAILABILITY_EVIDENCE" | "EVENT" | "MAINTENANCE_WINDOW" | "METRIC" | "TRANSACTIONAL" | Defines the actual set of fields depending on the value. See one of the following objects:
|
groupingEntity | EntityStub | A short representation of a monitored entity. |
rootCauseRelevant*required | boolean | The evidence is (true ) or is not (false ) a part of the root cause. |
startTime*required | number | The start time of the evidence, in UTC milliseconds. |
AzureClientSecret
Synchronization credentials with Azure Key Vault using client secret authentication method
Name | Type | Description |
---|---|---|
clientId | string | Client (application) ID of Azure application in Azure Active Directory which has permission to access secrets in Azure Key Vault. |
clientSecret | string | Client secret generated for Azure application in Azure Active Directory used for proving identity when requesting a token used later for accessing secrets in Azure Key Vault. |
locationForSynchronizationId | string | Id of a location used by the synchronizing monitor |
passwordSecretName | string | The name of the secret saved in external vault where password is stored. |
sourceAuthMethod | "AZURE_KEY_VAULT_CLIENT_SECRET" | "CYBERARK_VAULT_ALLOWED_LOCATION" | "CYBERARK_VAULT_USERNAME_PASSWORD" | "HASHICORP_VAULT_APPROLE" | "HASHICORP_VAULT_CERTIFICATE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
tenantId | string | Tenant (directory) ID of Azure application in Azure Active Directory which has permission to access secrets in Azure Key Vault. |
tokenSecretName | string | The name of the secret saved in external vault where token is stored. |
usernameSecretName | string | The name of the secret saved in external vault where username is stored. |
vaultUrl | string | External vault URL. |
AzureClientSecretConfig
Configuration for external vault synchronization for username and password credentials.
Name | Type | Description |
---|---|---|
clientId | string | |
clientSecret | string | |
credentialsUsedForExternalSynchronization | Array<string> | |
passwordSecretName | string | |
sourceAuthMethod | "AZURE_KEY_VAULT_CLIENT_SECRET" | "CYBERARK_VAULT_ALLOWED_LOCATION" | "CYBERARK_VAULT_USERNAME_PASSWORD" | "HASHICORP_VAULT_APPROLE" | "HASHICORP_VAULT_CERTIFICATE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
tenantId | string | |
tokenSecretName | string | |
type | "AZURE_CERTIFICATE_MODEL" | "AZURE_CLIENT_SECRET_MODEL" | "CYBERARK_VAULT_ALLOWED_LOCATION_MODEL" | "CYBERARK_VAULT_USERNAME_PASSWORD_MODEL" | "HASHICORP_APPROLE_MODEL" | "HASHICORP_CERTIFICATE_MODEL" | |
usernameSecretName | string | |
vaultUrl | string |
BMAction
Contains detailed information about Browser monitor action.
Name | Type | Description |
---|---|---|
apdexType | "UNKNOWN" | "FRUSTRATED" | "SATISFIED" | "TOLERATING" | The user experience index of the action. |
cdnBusyTime | number | The time spent waiting for CDN resources for the action, in milliseconds. |
cdnResources | number | The number of resources fetched from a CDN for the action. |
clientTime | number | The event startTime in client time, in milliseconds. |
cumulativeLayoutShift | number | Cumulative layout shift: Available for Chromium-based browsers. Measured using Google-provided APIs. |
customErrorCount | number | The total number of custom errors during the action. |
documentInteractiveTime | number | The amount of time spent until the document for the action became interactive, in milliseconds. |
domCompleteTime | number | The amount of time until the DOM tree is completed, in milliseconds. |
domContentLoadedTime | number | The amount of time until the DOM tree is loaded, in milliseconds. |
domain | string | The DNS domain where the action has been recorded |
duration | number | The duration of the action, in milliseconds |
endTime | number | The stop time of the action on the server, in UTC milliseconds |
entryAction | boolean | |
exitAction | boolean | |
firstInputDelay | number | The first input delay (FID) is the time (in milliseconds) that the browser took to respond to the first user input. |
firstPartyBusyTime | number | The time spent waiting for resources from the originating server for the action, in milliseconds. |
firstPartyResources | number | The number of resources fetched from the originating server for the action. |
frontendTime | number | The amount of time spent on the frontend rendering for the action, in milliseconds. |
javascriptErrorCount | number | The total number of Javascript errors during the action. |
largestContentfulPaint | number | The largest contentful paint (LCP) is the time (in milliseconds) that the largest element on the page took to render. |
loadEventEnd | number | The amount of time until the load event ended, in milliseconds. |
loadEventStart | number | The amount of time until the load event started, in milliseconds. |
monitorType*required | "BROWSER" | "HTTP" | Defines the actual set of fields depending on the value. See one of the following objects:
|
name | string | The name of the action. |
navigationStartTime | number | The timestamp of the navigation start, in UTC milliseconds. |
networkTime | number | The amount of time spent on the data transfer for the action, in milliseconds. |
referrer | string | The referrer. |
requestErrorCount | number | The total number of request errors during the action. |
requestStart | number | The amount of time until the request started, in milliseconds. |
responseEnd | number | The amount of time until the response ended, in milliseconds. |
responseStart | number | The amount of time until the response started, in milliseconds. |
serverTime | number | The amount of time spent on the server-side processing for the action, in milliseconds. |
speedIndex | number | A score indicating how quickly the page content is visually populated. A low speed index means that most parts of a page are rendering quickly. |
startSequenceNumber | number | The sequence number of the action (to get a kind of order). |
startTime | number | The start time of the action on the server, in in UTC milliseconds. |
targetUrl | string | The URL of the action. |
thirdPartyBusyTime | number | The time spent waiting for third party resources for the action, in milliseconds. |
thirdPartyResources | number | The number of third party resources loaded for the action. |
totalBlockingTime | number | The time between the moment when the browser receives a request to download a resource and the time that it actually starts downloading the resource in ms. |
type | "Custom" | "EndVisit" | "Error" | "Load" | "RageClick" | "StandaloneAgentEvent" | "StandaloneHttpError" | "SyntheticHiddenAction" | "UserSessionProperties" | "ViewChangeEvent" | "VisitTag" | "Xhr" | The type of the action. |
userActionPropertyCount | number | The total number of properties in the action. |
visuallyCompleteTime | number | The amount of time until the page is visually complete, in milliseconds. |
BizEventIngestError
Name | Type |
---|---|
id | string |
index | number |
message | string |
source | string |
BizEventIngestResult
Result received after ingesting business events.
Name | Type | Description |
---|---|---|
errors | Array<BizEventIngestError> | A list of business events ingest errors. |
BurnRateAlert
Parameters of an error budget burn rate alert.
Name | Type | Description |
---|---|---|
alertName*required | string | Name of the alert. |
alertThreshold*required | number | Threshold of the alert. Status alerts trigger if they fall below this value, burn rate alerts trigger if they exceed the value. |
alertType*required | "BURN_RATE" | "STATUS" | Defines the actual set of fields depending on the value. See one of the following objects:
|
CertificateCredentials
A credentials set of the CERTIFICATE
type.
Name | Type | Description |
---|---|---|
allowContextlessRequests | boolean | Allow ad-hoc functions to access the credential details (requires the APP_ENGINE scope). |
allowedEntities | Array<CredentialAccessData> | The set of entities allowed to use the credential. |
certificate | string | String containing the certificate file bytes encoded in Base64 without carriage return. |
certificateFormat | "UNKNOWN" | "PEM" | "PKCS12" | The certificate format. Use PEM for PEM certificates and PKCS12 for PFX and P12 certificates. |
description | string | A short description of the credentials set. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
ownerAccessOnly | boolean | The credentials set is available to every user (false ) or to owner only (true ). |
password | string | The password of the credential encoded in Base64. Must be empty for PEM certificates. |
"EXTENSION" | "SYNTHETIC" | "APP_ENGINE" | The scope of the credentials set. | |
scopes*required | Array<"EXTENSION" | "SYNTHETIC" | "APP_ENGINE"> | The set of scopes of the credentials set. Limitations: |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | "AWS_MONITORING_KEY_BASED" | "AWS_MONITORING_ROLE_BASED" | "SNMPV3" | Defines the actual set of fields depending on the value. See one of the following objects:
|
CloudEvent
CloudEvents is a specification for describing event data in common formats to provide interoperability across services, platforms and systems.
Name | Type | Description |
---|---|---|
data | Record<string | any> | |
data_base64 | string | |
datacontenttype | string | |
dataschema | string | |
dtcontext | string | Dynatrace context |
id*required | string | |
source*required | string | |
specversion*required | string | |
subject | string | |
time | Date | |
traceparent | string | Trace related to this event. See distributed tracing for further information. |
type*required | string |
CodeLevelVulnerabilityDetails
The details of a code-level vulnerability.
Name | Type | Description |
---|---|---|
processGroupIds | Array<string> | The list of encoded MEIdentifier of the process groups. |
processGroups | Array<string> | The list of affected process groups. |
shortVulnerabilityLocation | string | The code location of the vulnerability without package and parameter. |
type | "SQL_INJECTION" | "SSRF" | "CMD_INJECTION" | "IMPROPER_INPUT_VALIDATION" | The type of code level vulnerability. |
vulnerabilityLocation | string | The code location of the vulnerability. |
vulnerableFunction | string | The vulnerable function of the vulnerability. |
vulnerableFunctionInput | VulnerableFunctionInput | Describes what got passed into the code level vulnerability. |
CodeLocation
Information about a code location.
Name | Type | Description |
---|---|---|
className | string | The fully qualified class name of the code location. |
columnNumber | number | The column number of the code location. |
displayName | string | A human readable string representation of the code location. |
fileName | string | The file name of the code location. |
functionName | string | The function/method name of the code location. |
lineNumber | number | The line number of the code location. |
parameterTypes | TruncatableListString | A list of values that has possibly been truncated. |
returnType | string | The return type of the function. |
Comment
The comment to a problem.
Name | Type | Description |
---|---|---|
authorName | string | The user who wrote the comment. |
content | string | The text of the comment. |
context | string | The context of the comment. |
createdAtTimestamp*required | number | The timestamp of comment creation, in UTC milliseconds. |
id | string | The ID of the comment. |
CommentRequestDtoImpl
Name | Type | Description |
---|---|---|
context | string | The context of the comment. |
message*required | string | The text of the comment. |
CommentsList
A list of comments.
Name | Type | Description |
---|---|---|
comments*required | Array<Comment> | The result entries. |
nextPageKey | string | The cursor for the next page of results. Has the value of Use it in the nextPageKey query parameter to obtain subsequent pages of the result. |
pageSize | number | The number of entries per page. |
totalCount*required | number | The total number of entries in the result. |
ComplexConstraint
A constraint on the values accepted for a complex settings property.
Name | Type | Description |
---|---|---|
checkAllProperties | boolean | Defines if modification of any property triggers secret resubmission check. |
customMessage | string | A custom message for invalid values. |
customValidatorId | string | The ID of a custom validator. |
maximumPropertyCount | number | The maximum number of properties that can be set. |
minimumPropertyCount | number | The minimum number of properties that must be set. |
properties | Array<string> | A list of properties (defined by IDs) that are used to check the constraint. |
skipAsyncValidation | boolean | Whether to skip validation on a change made from the UI. |
type*required | "UNKNOWN" | "CUSTOM_VALIDATOR_REF" | "GREATER_THAN" | "GREATER_THAN_OR_EQUAL" | "LESS_THAN" | "LESS_THAN_OR_EQUAL" | "PROPERTY_COUNT_RANGE" | "SECRET_RESUBMISSION" | The type of the constraint. |
ConfigurationMetadata
Metadata useful for debugging
Name | Type | Description |
---|---|---|
clusterVersion | string | Dynatrace version. |
configurationVersions | Array<number> | A sorted list of the version numbers of the configuration. |
currentConfigurationVersions | Array<string> | A sorted list of version numbers of the configuration. |
Constraint
A constraint on the values accepted for a settings property.
Name | Type | Description |
---|---|---|
customMessage | string | A custom message for invalid values. |
customValidatorId | string | The ID of a custom validator. |
disallowDangerousRegex | boolean | Whether to disallow usage of dangerous regexes |
maxLength | number | The maximum allowed length of string values. |
maximum | number | The maximum allowed value. |
minLength | number | The minimum required length of string values. |
minimum | number | The minimum allowed value. |
pattern | string | The regular expression pattern for valid string values. |
skipAsyncValidation | boolean | Whether to skip validation on a change made from the UI. |
type*required | "UNKNOWN" | "CUSTOM_VALIDATOR_REF" | "LENGTH" | "NOT_BLANK" | "NOT_EMPTY" | "NO_WHITESPACE" | "PATTERN" | "RANGE" | "REGEX" | "TRIMMED" | "UNIQUE" | The type of the constraint. |
uniqueProperties | Array<string> | A list of properties for which the combination of values must be unique. |
ConstraintViolation
A list of constraint violations
Name | Type |
---|---|
location | string |
message | string |
parameterLocation | "HEADER" | "PATH" | "PAYLOAD_BODY" | "QUERY" |
path | string |
CredentialAccessData
The set of entities allowed to use the credential.
Name | Type |
---|---|
id | string |
type | "UNKNOWN" | "APPLICATION" | "USER" |
CredentialUsageHandler
Keeps information about credential's usage.
Name | Type | Description |
---|---|---|
count | number | The number of uses. |
type | string | Type of usage. |
Credentials
A set of credentials for synthetic monitors.
The actual set of fields depends on the type of credentials. Find the list of actual objects in the description of the type field or see Credential vault API - JSON models.
Name | Type | Description |
---|---|---|
allowContextlessRequests | boolean | Allow ad-hoc functions to access the credential details (requires the APP_ENGINE scope). |
allowedEntities | Array<CredentialAccessData> | The set of entities allowed to use the credential. |
description | string | A short description of the credentials set. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
ownerAccessOnly | boolean | The credentials set is available to every user (false ) or to owner only (true ). |
"EXTENSION" | "SYNTHETIC" | "APP_ENGINE" | The scope of the credentials set. | |
scopes*required | Array<"EXTENSION" | "SYNTHETIC" | "APP_ENGINE"> | The set of scopes of the credentials set. Limitations: |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | "AWS_MONITORING_KEY_BASED" | "AWS_MONITORING_ROLE_BASED" | "SNMPV3" | Defines the actual set of fields depending on the value. See one of the following objects:
|
CredentialsDetailsCertificateResponseElement
Details of certificate credentials set.
Name | Type | Description |
---|---|---|
certificate | string | Base64 encoded certificate bytes |
certificateType | string | Certificate type: PEM, PKCS12 or UNKNOWN |
credentialUsageSummary*required | Array<CredentialUsageHandler> | The list contains summary data related to the use of credentials. |
description*required | string | A short description of the credentials set. |
externalVault | ExternalVaultConfig | Configuration for external vault synchronization for username and password credentials. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
owner*required | string | The owner of the credential (user for which used API token was created). |
ownerAccessOnly*required | boolean | Flag indicating that this credential is visible only to the owner. |
password | string | Base64 encoded password |
scope | "ALL" | "EXTENSION" | "SYNTHETIC" | "UNKNOWN" | The scope of the credentials set. |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | Defines the actual set of fields depending on the value. See one of the following objects:
|
CredentialsDetailsTokenResponseElement
Details of the token credentials set.
Name | Type | Description |
---|---|---|
credentialUsageSummary*required | Array<CredentialUsageHandler> | The list contains summary data related to the use of credentials. |
description*required | string | A short description of the credentials set. |
externalVault | ExternalVaultConfig | Configuration for external vault synchronization for username and password credentials. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
owner*required | string | The owner of the credential (user for which used API token was created). |
ownerAccessOnly*required | boolean | Flag indicating that this credential is visible only to the owner. |
scope | "ALL" | "EXTENSION" | "SYNTHETIC" | "UNKNOWN" | The scope of the credentials set. |
token | string | Plain text token value |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | Defines the actual set of fields depending on the value. See one of the following objects:
|
CredentialsDetailsUsernamePasswordResponseElement
Details of username and password credentials set.
Name | Type | Description |
---|---|---|
credentialUsageSummary*required | Array<CredentialUsageHandler> | The list contains summary data related to the use of credentials. |
description*required | string | A short description of the credentials set. |
externalVault | ExternalVaultConfig | Configuration for external vault synchronization for username and password credentials. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
owner*required | string | The owner of the credential (user for which used API token was created). |
ownerAccessOnly*required | boolean | Flag indicating that this credential is visible only to the owner. |
password | string | Plain text password value |
scope | "ALL" | "EXTENSION" | "SYNTHETIC" | "UNKNOWN" | The scope of the credentials set. |
type*required | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | Defines the actual set of fields depending on the value. See one of the following objects:
|
username | string | Plain text username value |
CredentialsId
A short representation of the credentials set.
Name | Type | Description |
---|---|---|
id*required | string | The ID of the credentials set. |
CredentialsList
A list of credentials sets for Synthetic monitors.
Name | Type | Description |
---|---|---|
credentials*required | Array<CredentialsResponseElement> | A list of credentials sets for Synthetic monitors. |
nextPageKey | string | |
pageSize | number | |
totalCount | number |
CredentialsResponseElement
Metadata of the credentials set.
Name | Type | Description |
---|---|---|
allowContextlessRequests | boolean | Allow access without app context, for example, from ad hoc functions in Workflows (requires the APP_ENGINE scope). |
allowedEntities*required | Array<CredentialAccessData> | The set of entities allowed to use the credential. |
credentialUsageSummary*required | Array<CredentialUsageHandler> | The list contains summary data related to the use of credentials. |
description*required | string | A short description of the credentials set. |
externalVault | ExternalVaultConfig | Configuration for external vault synchronization for username and password credentials. |
id | string | The ID of the credentials set. |
name*required | string | The name of the credentials set. |
owner*required | string | The owner of the credential (user for which used API token was created). |
ownerAccessOnly*required | boolean | Flag indicating that this credential is visible only to the owner. |
scope | "EXTENSION" | "SYNTHETIC" | "APP_ENGINE" | The scope of the credentials set. |
scopes | Array<"EXTENSION" | "SYNTHETIC" | "APP_ENGINE"> | The set of scopes of the credentials set. |
type*required | "UNKNOWN" | "CERTIFICATE" | "PUBLIC_CERTIFICATE" | "TOKEN" | "USERNAME_PASSWORD" | "AWS_MONITORING_KEY_BASED" | "AWS_MONITORING_ROLE_BASED" | "SNMPV3" | The type of the credentials set. |
CustomApplicationImpact
Analysis of problem impact to a custom application.
Name | Type | Description |
---|---|---|
estimatedAffectedUsers*required | number | The estimated number of affected users. |
impactType*required | "APPLICATION" | "CUSTOM_APPLICATION" | "MOBILE" | "SERVICE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
impactedEntity*required | EntityStub | A short representation of a monitored entity. |
CustomDeviceCreation
Configuration of a custom device.
Name | Type | Description |
---|---|---|
configUrl | string | The URL of a configuration web page for the custom device, such as a login page for a firewall or router. |
customDeviceId*required | string | The internal ID of the custom device. If you use the ID of an existing device, the respective parameters will be updated. |
displayName*required | string | The name of the custom device to be displayed in the user interface. |
dnsNames | Array<string> | The list of DNS names related to the custom device. These names are used to automatically discover the horizontal communication relationship between this component and all other observed components within Smartscape. Once a connection is discovered, it is automatically mapped and shown within Smartscape. Non-public DNS addresses can also be mapped internally. This is applicable only if the domain name consists of at least two parts, for example If you send a value, the existing values will be overwritten. If you send |
faviconUrl | string | The icon to be displayed for your custom component within Smartscape. Provide the full URL of the icon file. |
group | string | User defined group ID of entity. The group ID helps to keep a consistent picture of device-group relations. One of many cases where a proper group is important is service detection: you can define which custom devices should lead to the same service by defining the same group ID for them. If you set a group ID, it will be hashed into the Dynatrace entity ID of the custom device. In that case the custom device can only be part of one custom device group. If you don't set the group ID, Dynatrace will create it based on the ID or type of the custom device. Also, the group will not be hashed into the device ID which means the device may switch groups. |
ipAddresses | Array<string> | The list of IP addresses that belong to the custom device. These addresses are used to automatically discover the horizontal communication relationship between this component and all other observed components within Smartscape. Once a connection is discovered, it is automatically mapped and shown within Smartscape. If you send a value (including an empty value), the existing values will be overwritten. If you send |
listenPorts | Array<number> | The list of ports the custom devices listens to. These ports are used to discover the horizontal communication relationship between this component and all other observed components within Smartscape. Once a connection is discovered, it is automatically mapped and shown within Smartscape. If ports are specified, you should also add at least one IP address or a DNS name for the custom device. If you send a value, the existing values will be overwritten. If you send |
properties | CustomDeviceCreationProperties | The list of key-value pair properties that will be shown beneath the infographics of your custom device. |
type | string | The technology type definition of the custom device. It must be the same technology type of the metric you're reporting. If you send a value, the existing value will be overwritten. If you send |
CustomDeviceCreationProperties
The list of key-value pair properties that will be shown beneath the infographics of your custom device.
type: Record<string, string | undefined>
CustomDeviceCreationResult
The short representation of a newly created custom device.
Name | Type | Description |
---|---|---|
entityId | string | The Dynatrace entity ID of the custom device. |
groupId | string | The Dynatrace entity ID of the custom device group. |
CustomEntityTags
A list of custom tags.
Name | Type | Description |
---|---|---|
tags*required | Array<METag> | A list of custom tags. |
totalCount | number | The total number of tags in the response. |
CustomLogLine
A custom script log line
Name | Type | Description |
---|---|---|
logLevel | string | Log level of the message |
message | string | The message |
timestamp | number | A timestamp of this log message |
CyberArkAllowedLocationConfig
Configuration for external vault synchronization for username and password credentials.
Name | Type | Description |
---|---|---|
accountName | string | |
applicationId | string | |
certificate | string | |
credentialsUsedForExternalSynchronization | Array<string> | |
folderName | string | |
passwordSecretName | string | |
safeName | string | |
sourceAuthMethod | "AZURE_KEY_VAULT_CLIENT_SECRET" | "CYBERARK_VAULT_ALLOWED_LOCATION" | "CYBERARK_VAULT_USERNAME_PASSWORD" | "HASHICORP_VAULT_APPROLE" | "HASHICORP_VAULT_CERTIFICATE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
tokenSecretName | string | |
type | "AZURE_CERTIFICATE_MODEL" | "AZURE_CLIENT_SECRET_MODEL" | "CYBERARK_VAULT_ALLOWED_LOCATION_MODEL" | "CYBERARK_VAULT_USERNAME_PASSWORD_MODEL" | "HASHICORP_APPROLE_MODEL" | "HASHICORP_CERTIFICATE_MODEL" | |
usernameSecretName | string | |
vaultUrl | string |
CyberArkAllowedLocationDto
Synchronization credentials with CyberArk Vault using allowed machines (location) authentication method.
Name | Type | Description |
---|---|---|
accountName | string | Account name that stores the username and password to retrieve and synchronize with the Dynatrace Credential Vault: This is NOT the name of the account logged into the CyberArk Central Credential Provider. |
applicationId | string | Application ID connected to CyberArk Vault. |
certificate | string | [Recommended] Certificate used for authentication to CyberArk application. ID of certificate credential saved in Dynatrace CV. |
folderName | string | [Optional] Folder name where credentials in CyberArk Vault are stored. Default folder name is 'Root'. |
locationForSynchronizationId | string | Id of a location used by the synchronizing monitor |
passwordSecretName | string | The name of the secret saved in external vault where password is stored. |
safeName | string | Safe name connected to CyberArk Vault. |
sourceAuthMethod | "AZURE_KEY_VAULT_CLIENT_SECRET" | "CYBERARK_VAULT_ALLOWED_LOCATION" | "CYBERARK_VAULT_USERNAME_PASSWORD" | "HASHICORP_VAULT_APPROLE" | "HASHICORP_VAULT_CERTIFICATE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
tokenSecretName | string | The name of the secret saved in external vault where token is stored. |
usernameSecretName | string | The name of the secret saved in external vault where username is stored. |
vaultUrl | string | External vault URL. |
CyberArkUsernamePassword
Synchronization credentials with CyberArk Vault using username password authentication method.
Name | Type | Description |
---|---|---|
accountName | string | Account name that stores the username and password to retrieve and synchronize with the Dynatrace Credential Vault: This is NOT the name of the account logged into the CyberArk Central Credential Provider. |
applicationId | string | Application ID connected to CyberArk Vault. |
certificate | string | [Recommended] Certificate used for authentication to CyberArk application. ID of certificate credential saved in Dynatrace CV. |
folderName | string | [Optional] Folder name where credentials in CyberArk Vault are stored. Default folder name is 'Root'. |
locationForSynchronizationId | string | Id of a location used by the synchronizing monitor |
passwordSecretName | string | The name of the secret saved in external vault where password is stored. |
safeName | string | Safe name connected to CyberArk Vault. |
sourceAuthMethod | "AZURE_KEY_VAULT_CLIENT_SECRET" | "CYBERARK_VAULT_ALLOWED_LOCATION" | "CYBERARK_VAULT_USERNAME_PASSWORD" | "HASHICORP_VAULT_APPROLE" | "HASHICORP_VAULT_CERTIFICATE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
tokenSecretName | string | The name of the secret saved in external vault where token is stored. |
usernamePasswordForCPM | string | Dynatrace credential ID of the username-password pair used for authentication to the CyberArk Central Credential Provider |
usernameSecretName | string | The name of the secret saved in external vault where username is stored. |
vaultUrl | string | External vault URL. |
CyberArkUsernamePasswordConfig
Configuration for external vault synchronization for username and password credentials.
Name | Type | Description |
---|---|---|
accountName | string | |
applicationId | string | |
certificate | string | |
credentialsUsedForExternalSynchronization | Array<string> | |
folderName | string | |
passwordSecretName | string | |
safeName | string | |
sourceAuthMethod | "AZURE_KEY_VAULT_CLIENT_SECRET" | "CYBERARK_VAULT_ALLOWED_LOCATION" | "CYBERARK_VAULT_USERNAME_PASSWORD" | "HASHICORP_VAULT_APPROLE" | "HASHICORP_VAULT_CERTIFICATE" | Defines the actual set of fields depending on the value. See one of the following objects:
|
tokenSecretName | string | |
type | "AZURE_CERTIFICATE_MODEL" | "AZURE_CLIENT_SECRET_MODEL" | "CYBERARK_VAULT_ALLOWED_LOCATION_MODEL" | "CYBERARK_VAULT_USERNAME_PASSWORD_MODEL" | "HASHICORP_APPROLE_MODEL" | "HASHICORP_CERTIFICATE_MODEL" | |
usernamePasswordForCPM | string | |
usernameSecretName | string | |
vaultUrl | string |
DatasourceDefinition
Configuration of a datasource for a property.
Name | Type | Description |
---|---|---|
filterProperties*required | Array<string> | The properties to filter the datasource options on. |
fullContext*required | boolean | Whether this datasource expects full setting payload as the context. |
identifier*required | string | The identifier of a custom data source of the property's value. |
resetValue | "ALWAYS" | "INVALID_ONLY" | "NEVER" | When to reset datasource value in the UI on filter change. |
useApiSearch*required | boolean | If true, the datasource should use the api to filter the results instead of client-side filtering. |
validate*required | boolean | Whether to validate input to only allow values returned by the datasource. |
DavisSecurityAdvice
Security advice from the Davis security advisor.
Name | Type | Description |
---|---|---|
adviceType | "UPGRADE" | The type of the advice. |
critical | Array<string> | IDs of critical level security problems caused by vulnerable component. |
high | Array<string> | IDs of high level security problems caused by vulnerable component. |
low | Array<string> | IDs of low level security problems caused by vulnerable component. |
medium | Array<string> | IDs of medium level security problems caused by vulnerable component. |
name | string | The name of the advice. |
none | Array<string> | IDs of none level security problems caused by vulnerable component. |
technology | "KUBERNETES" | "DOTNET" | "GO" | "JAVA" | "NODE_JS" | "PHP" | "PYTHON" | The technology of the vulnerable component. |
vulnerableComponent | string | The vulnerable component to which advice applies. |
DavisSecurityAdviceList
A list of advice from the Davis security advisor.
Name | Type | Description |
---|---|---|
advices | Array<DavisSecurityAdvice> | |
nextPageKey | string | The cursor for the next page of results. Has the value of Use it in the nextPageKey query parameter to obtain subsequent pages of the result. |
pageSize | number | The number of entries per page. |
totalCount*required | number | The total number of entries in the result. |
DeletedEntityTags
Deleted custom tag.
Name | Type | Description |
---|---|---|
matchedEntitiesCount | number | The number of monitored entities where the tag has been deleted. |
DeletionConstraint
A constraint on the values that are going to be deleted.
Name | Type | Description |
---|---|---|
customMessage | string | A custom message for invalid values. |
customValidatorId | string | The ID of a custom validator. |
schemaIds | Array<string> | |
type*required | "UNKNOWN" | "CUSTOM_VALIDATOR_REF" | "REFERENTIAL_INTEGRITY" | The type of the deletion constraint. |
EffectivePermission
Name | Type | Description |
---|---|---|
context | PermissionContext | Optional context data |
granted*required | "condition" | "false" | "true" | |
permission*required | string |