> ## Documentation Index
> Fetch the complete documentation index at: https://nango.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Dynatrace (OAuth)

> Integrate your application with the Dynatrace Account Management API using OAuth

## 🚀 Quickstart

Connect to Dynatrace with Nango using OAuth2 client credentials and see data flow in 2 minutes.

<Steps>
  <Step title="Create the integration">
    In Nango ([free signup](https://app.nango.dev)), go to [Integrations](https://app.nango.dev/dev/integrations) -> *Configure New Integration* -> *Dynatrace (OAuth)*.
  </Step>

  <Step title="Authorize Dynatrace">
    Go to [Connections](https://app.nango.dev/dev/connections) -> *Add Test Connection* -> *Authorize*, then enter your Dynatrace account UUID, OAuth client ID, and client secret. Later, you'll let your users do the same directly from your app.
  </Step>

  <Step title="Call the Dynatrace API">
    Let's make your first request to the Dynatrace Account Management API. Replace the placeholders below with your [Environment API key](/docs/reference/backend/http-api/api-keys), [integration ID](https://app.nango.dev/dev/integrations), and [connection ID](https://app.nango.dev/dev/connections):

    <Tabs>
      <Tab title="cURL">
        ```bash theme={null}
        curl "https://api.nango.dev/proxy/iam/v1/accounts/<ACCOUNT-UUID>/users" \
          -H "Authorization: Bearer <NANGO-API-KEY>" \
          -H "Provider-Config-Key: <INTEGRATION-ID>" \
          -H "Connection-Id: <CONNECTION-ID>"
        ```
      </Tab>

      <Tab title="Node">
        Install Nango's backend SDK with `npm i @nangohq/node`. Then run:

        ```typescript theme={null}
        import { Nango } from '@nangohq/node';

        const nango = new Nango({ apiKey: '<NANGO-API-KEY>' });

        const res = await nango.get({
            endpoint: '/iam/v1/accounts/<ACCOUNT-UUID>/users',
            providerConfigKey: '<INTEGRATION-ID>',
            connectionId: '<CONNECTION-ID>'
        });

        console.log(JSON.stringify(res.data, null, 2));
        ```
      </Tab>
    </Tabs>

    Or fetch credentials with the [Node SDK](/docs/reference/sdks/node#get-a-connection-with-credentials) or [API](/docs/reference/api/connection/get).

    ✅ You're connected! Check the [Logs](https://app.nango.dev/dev/logs) tab in Nango to inspect requests.
  </Step>

  <Step title="Implement Nango in your app">
    Follow our [Auth implementation guide](/docs/guides/primitives/auth) to integrate Nango in your app.

    To obtain your own production credentials, follow the setup guide linked below.
  </Step>
</Steps>

## 📚 Dynatrace (OAuth) Integration Guides

Nango maintained guides for common use cases.

* [How do I link my Dynatrace account?](/docs/api-integrations/dynatrace-oauth/connect)\
  Learn how to create a Dynatrace OAuth client and connect your account

Official docs: [Dynatrace OAuth clients documentation](https://docs.dynatrace.com/docs/dynatrace-api)

## 🧩 Pre-built syncs & actions for Dynatrace (OAuth)

Enable them in your dashboard. Extend and customize to fit your needs.

### Others

| Function name                      | Description                                                                                                                                 | Type                                           | Source code                                                                                                                                      |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `add-user-to-groups`               | Add a user to one or more groups, leaving their existing group memberships untouched.                                                       | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/add-user-to-groups.ts)               |
| `assign-group-permissions`         | Add one or more direct permissions to a group, without affecting existing ones.                                                             | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/assign-group-permissions.ts)         |
| `bind-policy-to-groups`            | Grant a policy's access to one or more groups.                                                                                              | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/bind-policy-to-groups.ts)            |
| `create-group`                     | Create one or more new user groups                                                                                                          | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/create-group.ts)                     |
| `create-platform-token`            | Create a new platform token scoped to a specific environment, for use against Dynatrace's environment-level Platform APIs.                  | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/create-platform-token.ts)            |
| `create-policy`                    | Create a new custom access policy at the account level.                                                                                     | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/create-policy.ts)                    |
| `create-service-user`              | Create a new service user (API-only identity, no login/human access).                                                                       | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/create-service-user.ts)              |
| `create-user`                      | Invite/create a new user in this account by email                                                                                           | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/create-user.ts)                      |
| `delete-group`                     | Delete a user group.                                                                                                                        | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/delete-group.ts)                     |
| `delete-platform-token`            | Revoke/delete a platform token.                                                                                                             | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/delete-platform-token.ts)            |
| `delete-policy`                    | Delete a custom account-level policy.                                                                                                       | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/delete-policy.ts)                    |
| `delete-service-user`              | Delete a service user.                                                                                                                      | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/delete-service-user.ts)              |
| `delete-user`                      | Delete a user from this account.                                                                                                            | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/delete-user.ts)                      |
| `get-group-permissions`            | Get the directly-assigned permissions on a group                                                                                            | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/get-group-permissions.ts)            |
| `get-group-policy-bindings`        | List just the policy uuids bound to one specific group.                                                                                     | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/get-group-policy-bindings.ts)        |
| `get-policy-groups`                | List which groups a specific policy is bound to.                                                                                            | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/get-policy-groups.ts)                |
| `get-policy`                       | Get a single policy's full definition (statementQuery) by uuid, at either account or global level.                                          | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/get-policy.ts)                       |
| `get-service-user`                 | Get a single service user by uid.                                                                                                           | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/get-service-user.ts)                 |
| `get-user`                         | Get a single user's full details including their group memberships.                                                                         | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/get-user.ts)                         |
| `list-account-audit-logs`          | Query the account-level audit log (IAM changes: user/group/policy/permission create-update-delete events).                                  | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-account-audit-logs.ts)          |
| `list-account-limits`              | Get the account's assigned resource limits (users, groups, permissions, platform tokens) and current usage against each.                    | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-account-limits.ts)              |
| `list-account-policies`            | List custom access policies defined directly at this account level (excludes Dynatrace built-in/global policies).                           | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-account-policies.ts)            |
| `list-clusters`                    | List Dynatrace Managed clusters associated with this account (empty for SaaS-only accounts).                                                | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-clusters.ts)                    |
| `list-environments`                | List the monitoring environments (tenants) that belong to this account.                                                                     | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-environments.ts)                |
| `list-global-policies`             | List Dynatrace's built-in, platform-wide policies (e.g. 'Admin User', 'AppEngine - Admin') available to bind at any account or environment. | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-global-policies.ts)             |
| `list-group-members`               | List the users belonging to a specific group.                                                                                               | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-group-members.ts)               |
| `list-groups`                      | List user groups in this account.                                                                                                           | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-groups.ts)                      |
| `list-platform-tokens`             | List platform (OAuth-adjacent) tokens issued in this account, used to authenticate against environment-level Dynatrace Platform APIs.       | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-platform-tokens.ts)             |
| `list-policy-bindings`             | List every policy-to-group binding at this account level in one call.                                                                       | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-policy-bindings.ts)             |
| `list-service-users`               | List service (non-human, API-only) users in this account.                                                                                   | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-service-users.ts)               |
| `list-users`                       | List users in this Dynatrace account.                                                                                                       | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/list-users.ts)                       |
| `remove-group-permission`          | Remove one specific direct permission from a group.                                                                                         | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/remove-group-permission.ts)          |
| `remove-user-from-groups`          | Remove a user from one or more specific groups without affecting other memberships.                                                         | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/remove-user-from-groups.ts)          |
| `set-group-permissions`            | Replace a group's entire direct-permission list in one call.                                                                                | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/set-group-permissions.ts)            |
| `set-group-policies`               | Replace a group's entire set of bound policies in one call.                                                                                 | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/set-group-policies.ts)               |
| `set-user-groups`                  | Replace a user's entire group membership list in one call (removes them from any group not included).                                       | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/set-user-groups.ts)                  |
| `unbind-policy-from-group`         | Remove one group's binding to a specific policy.                                                                                            | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/unbind-policy-from-group.ts)         |
| `update-group`                     | Update a group's name/description.                                                                                                          | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/update-group.ts)                     |
| `update-platform-token-expiration` | Change a platform token's expiration date.                                                                                                  | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/update-platform-token-expiration.ts) |
| `update-platform-token-status`     | Activate or deactivate a platform token without deleting it.                                                                                | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/update-platform-token-status.ts)     |
| `update-policy`                    | Update an existing account-level policy's name/description/statementQuery                                                                   | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/update-policy.ts)                    |
| `update-service-user`              | Update a service user's name/description.                                                                                                   | [Action](/docs/guides/functions/action-functions)   | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/actions/update-service-user.ts)              |
| `account-policies`                 | Sync custom access policies defined at this account level (excludes Dynatrace built-in/global policies).                                    | [Sync](/docs/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/syncs/account-policies.ts)                   |
| `environments`                     | Sync the monitoring environments (tenants) belonging to this account.                                                                       | [Sync](/docs/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/syncs/environments.ts)                       |
| `groups`                           | Sync user groups in this account.                                                                                                           | [Sync](/docs/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/syncs/groups.ts)                             |
| `platform-tokens`                  | Sync platform token metadata (never the plaintext secret, which is only ever returned once at creation) issued in this account.             | [Sync](/docs/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/syncs/platform-tokens.ts)                    |
| `service-users`                    | Sync service (API-only) users in this account.                                                                                              | [Sync](/docs/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/syncs/service-users.ts)                      |
| `users`                            | Sync users in this Dynatrace account.                                                                                                       | [Sync](/docs/guides/functions/syncs/sync-functions) | [🔗 Github](https://github.com/NangoHQ/integration-templates/blob/main/integrations/dynatrace-oauth/syncs/users.ts)                              |

***
