@dynatrace-sdk/client-platform-management-service
TypeScript icon, indicating that this package has built-in type declarations

1.5.1 • Public • Published

@dynatrace-sdk/client-platform-management-service

npm License

Overview

Basic read-only information (e.g. basic license settings) about the currently logged-in environment

Installation

npm install @dynatrace-sdk/client-platform-management-service

Getting help

License

This SDK is distributed under the Apache License, Version 2.0, see LICENSE for more information.

API reference

Full API reference for the latest version of the SDK is also available at the Dynatrace Developer.

effectivePermissionsClient

import { effectivePermissionsClient } from '@dynatrace-sdk/client-platform-management-service';

resolveEffectivePermissions

effectivePermissionsClient.resolveEffectivePermissions(config): Promise<EffectivePermissions>

Get the effective permissions of the calling user in the environment

One of the following scopes is required:

  • app-engine:apps:run
  • app-engine:functions:run

This endpoint resolves whether the caller (based on the provided OAuth token when calling this endpoint) has the requested permissions (see IAM policy reference for a list of permissions and their conditions). It resolves the permission via IAM and uses the optional context to evaluate conditional results. The provided context consists of key-value pairs where the key must correspond to the name of a supported condition of the requested permission and the value is the value that it this condition is evaluated against given a user's policies.

For each requested permission the response indicates whether the user has the requested permission ("granted": "true"), does not have it ("granted": "false") or only has it conditionally ("granted": "condition"), meaning that the provided values for conditions in the context are not sufficient to decide whether the caller has the permission.

For environment API v2 scopes (i.e. scopes starting with environment-api:) roles on the environment and management zone level will also be considered.

Settings permission requests for scopes settings:schemas:read, settings:objects:read, and settings:objects:write will always result in a result with "granted": "condition". Please use the dedicated effective permissions endpoint for settings instead.

Parameters

Name Type
config.body*required ResolutionRequest

Throws

Error Type Error Message
DefaultErrorResponse Unexpected error
Code example
import { effectivePermissionsClient } from "@dynatrace-sdk/client-platform-management-service";

const data =
  await effectivePermissionsClient.resolveEffectivePermissions(
    {
      body: {
        permissions: [
          { permission: "state:app-states:write" },
        ],
      },
    },
  );

environmentInformationClient

import { environmentInformationClient } from '@dynatrace-sdk/client-platform-management-service';

getEnvironmentInformation

environmentInformationClient.getEnvironmentInformation(config): Promise<EnvironmentInfo>

Get basic environment information

One of the following scopes is required:

  • app-engine:apps:run
  • app-engine:functions:run

Get basic information about the current environment.

Returns

Return type Status code Description
EnvironmentInfo 200 Info about the requested environment.

Throws

Error Type Error Message
BadRequest Bad request
Unauthorized Authentication failed
NotFound Resource not found
ServiceUnavailable There is a temporary problem in the backend.
DefaultErrorResponse Unexpected error
Code example
import { environmentInformationClient } from "@dynatrace-sdk/client-platform-management-service";

const data =
  await environmentInformationClient.getEnvironmentInformation();

environmentSettingsClient

import { environmentSettingsClient } from '@dynatrace-sdk/client-platform-management-service';

getEnvironmentSettings

environmentSettingsClient.getEnvironmentSettings(config): Promise<SettingsResponse>

Get settings for the environment

One of the following scopes is required:

  • app-engine:apps:run
  • app-engine:functions:run

Gets settings for environment.

Returns

Return type Status code Description
SettingsResponse 200 The settings for the requested environment

Throws

Error Type Error Message
BadRequest Bad request
Unauthorized Authentication failed
NotFound Resource not found
ServiceUnavailable There is a temporary problem in the backend.
DefaultErrorResponse Unexpected error
Code example
import { environmentSettingsClient } from "@dynatrace-sdk/client-platform-management-service";

const data =
  await environmentSettingsClient.getEnvironmentSettings();

licenseInformationClient

import { licenseInformationClient } from '@dynatrace-sdk/client-platform-management-service';

getLicense

licenseInformationClient.getLicense(config): Promise<License>

Get basic license information

One of the following scopes is required:

  • app-engine:apps:run
  • app-engine:functions:run

Get basic license information about the current environment.

Returns

Return type Status code Description
License 200 The license info of the requested environment.

Throws

Error Type Error Message
BadRequest Bad request
Unauthorized Authentication failed
NotFound Resource not found
ServiceUnavailable There is a temporary problem in the backend.
DefaultErrorResponse Unexpected error
Code example
import { licenseInformationClient } from "@dynatrace-sdk/client-platform-management-service";

const data = await licenseInformationClient.getLicense();

getLicenseSettings

licenseInformationClient.getLicenseSettings(config): Promise<LicenseSettingsResponse>

Get basic license settings information

One of the following scopes is required:

  • app-engine:apps:run
  • app-engine:functions:run

Get basic license settings information about the current environment

Parameters

Name Type
config.keys Array<string>

Returns

Return type Status code Description
LicenseSettingsResponse 200 The license settings info of the requested environment.

Throws

Error Type Error Message
BadRequest Bad request
Unauthorized Authentication failed
NotFound Resource not found
ServiceUnavailable There is a temporary problem in the backend.
DefaultErrorResponse Unexpected error
Code example
import { licenseInformationClient } from "@dynatrace-sdk/client-platform-management-service";

const data =
  await licenseInformationClient.getLicenseSettings();

Types

EffectivePermission

Name Type Description
granted*required "true" | "false" | "condition" true: The caller has the permission false: The caller does not have the permission condition: The caller conditionally has the permission or in case of scopes starting with 'environment-api:' the caller only has the permission for specific management zones.
permission*required string

EffectivePermissions

type: Array<EffectivePermission>

EnvironmentInfo

Name Type
blockTime Date
createTime*required Date
environmentId*required string
state*required "BEING_CREATED" | "CREATED_NOT_INITIALIZED" | "ACTIVE" | "DEACTIVATED" | "BEING_DELETED" | "BLOCKED" | "DELETION_FAILED" | "PRE_ALLOCATED"
type*required "INTERNAL" | "CUSTOMER" | "SELF_MONITORING"

Error

Standard error response

Name Type
code*required number
message*required string

License

Name Type
platformSubscription*required boolean
trial*required boolean

LicenseSetting

Name Type
key*required string
value*required string

LicenseSettingsResponse

Name Type
settings*required Array<LicenseSetting>

PermissionContext

Name Type
key*required string
value*required string

ResolutionRequest

Name Type
permissions*required Array<SinglePermissionRequest>

SettingsResponse

Name Type Description
chatEnabled*required boolean
countryCode string ISO3166-1 alpha-2 two letter country code. See: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2

SinglePermissionRequest

Optional generic set of context data

Name Type
context Array<PermissionContext>
permission*required string

Enums

EffectivePermissionGranted

true: The caller has the permission false: The caller does not have the permission condition: The caller conditionally has the permission or in case of scopes starting with 'environment-api:' the caller only has the permission for specific management zones.

Enum keys

Condition | False | True

EnvironmentInfoType

Enum keys

Customer | Internal | SelfMonitoring

EnvironmentState

Enum keys

Active | BeingCreated | BeingDeleted | Blocked | CreatedNotInitialized | Deactivated | DeletionFailed | PreAllocated

/@dynatrace-sdk/client-platform-management-service/

    Package Sidebar

    Install

    npm i @dynatrace-sdk/client-platform-management-service

    Weekly Downloads

    16

    Version

    1.5.1

    License

    Apache-2.0

    Unpacked Size

    187 kB

    Total Files

    115

    Last publish

    Collaborators

    • stefan.wolfsteiner.dynatrace
    • dynatrace-nodejs
    • wasserb