Skip to main content

About platform services

The Dynatrace platform provides a collection of so-called platform services where each has its specific area of responsibility. You can access platform services in different ways. Platform services are individually versioned and offer RESTful APIs via HTTP requests. JSON is the message format for all platform service API calls.

URL structure

The general URL structure of the Dynatrace platform API looks like this:

<Root>/platform/<Service-Namespace>/<Service-Name>/<Version>/<Api-Resources>
  • The environment-specific domain name <Your-Environment-Id>.apps.dynatrace.com defines the <Root> URL.
    • <Environment-Id> is the customer environment's unique identifier.
  • platform is the mandatory root path for all platform services.
  • <Service-Name> is the mandatory name of the platform service. A <Service-Namespace> may prepend the <Service-Name> to group platform services that belong together.
  • <Version> is the current platform service version in this format: v<Major-Version>.
  • <Api-Resources> is the path within the platform service.

Example

URL structure

Swagger UI

All Dynatrace platform services are accessible via the Swagger UI on this path:

<Environment-Id>.apps.dynatrace.com/platform/swagger-ui/index.html

SDK

App developers typically don't directly interact with the platform service APIs and instead use the Dynatrace SDK for TypeScript. We build a Dynatrace SDK package to match a certain platform service API version exactly. The package's metadata documents the exact API version that the package represents.

All platform service SDK packages follow this naming schema:

client-<Service-Namespace>-<Service-Name>-v<Version>

<Service-Name> and <Service-Namespace> correspond with the URL structure of the platform service that the package represents. <Version> is the API version and is only set if more than one major version of the same service is available.

Note

The API version isn't the same as the package build version. Developers might rebuild a package without changing the API version it represents (for example, to include bug fixes or other improvements in the SDK implementation without affecting the API it represents).

Example

SDK naming

Still have questions?
Find answers in the Dynatrace Community