Dynatrace Policy management API

Manage IAM policies, policy bindings, and permission boundaries.

Business capability
Identity & Access Management BC-620.20

Operations 27

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /iam/v1/repo/{level-type}/{level-id}/policies/validation Validate a new policy draft (deprecated) · Validates the payload for the `POST /iam/v1/repo/{levelType}/{levelId}/policies`… #
Ask an LLM
“Can I dry-run a brand-new IAM policy statement before creating it?”
“Is the separate new-policy validation endpoint being retired?”
Tell an agent
Validate a new policy {name} with statement {statement} and description {description} for {levelType} {level} using the deprecated check.
Dry-run creating policy {name} on {levelType} {level} with statement {statement}, description {description}.
POST /iam/v1/repo/{level-type}/{level-id}/policies/validation/{policy-uuid} Validate changes to an existing policy (deprecated) · Validates the payload for the `PUT /iam/v1/repo/{levelType}/{levelId}/policies/{… #
Ask an LLM
“Can I check an edit to an existing policy is valid before saving it?”
“Does the legacy validator for policy updates still work?”
Tell an agent
Validate an update to policy {policy} on {levelType} {level}: name {name}, description {description}, statement {statement}.
Dry-run my edit of existing policy {policy} at {levelType} {level} with statement {statement}, name {name}, description {description}.
GET /iam/v1/resolution/{level-type}/{level-id}/effectivepermissions Get effective permissions for a user or group · Gets effective permissions for a user or group #
Ask an LLM
“What can a given user actually do once all their policies are combined?”
“Can I resolve a group's effective permissions for specific services?”
Tell an agent
Resolve effective permissions for {entityType} {entity} on {levelType} {level}.
Show what {entityType} {entity} is allowed to do in {services} at {levelType} {level}.
GET /iam/v1/repo/{level-type}/{level-id}/policies/aggregate List policies for a level including inherited ones · Lists all policies for a level, including inherited from higher levels #
Ask an LLM
“Which policies apply to an environment, including ones inherited from the account?”
“Can I see an aggregated policy overview across parent levels?”
Tell an agent
List all policies at {levelType} {level}, including inherited ones.
Show the aggregated policy overview for {levelType} {level}.
GET /iam/v1/repo/{level-type}/{level-id}/policies List policies defined natively on a level · Lists all native policies of a level #
Ask an LLM
“Which policies were created directly on this level, not inherited?”
“Can I filter a level's own policies by name or category?”
Tell an agent
List the native policies on {levelType} {level}.
Find policies named {name} defined on {levelType} {level}.
POST /iam/v1/repo/{level-type}/{level-id}/policies Create an IAM policy · Creates a new policy #
Ask an LLM
“How do I write a new IAM policy with my own statement?”
“Can policies be created at the environment level?”
Tell an agent
Create policy {name} on {levelType} {level} with statement {statement} and description {description}.
Add a new {levelType} policy at {level} called {name}, described {description}, allowing {statement}.
GET /iam/v1/repo/{level-type}/{level-id}/policies/{policy-uuid} Get one policy's statement and details · Gets a policy #
Ask an LLM
“What statement does a specific policy contain?”
“Can I read a single policy by its UUID?”
Tell an agent
Get policy {policy} on {levelType} {level}.
Show me the statement of policy {policy} at {levelType} {level}.
PUT /iam/v1/repo/{level-type}/{level-id}/policies/{policy-uuid} Update or create a policy by UUID · Updates a policy #
Ask an LLM
“How do I change the statement of an existing policy?”
“Does updating a policy UUID that doesn't exist create it?”
Tell an agent
Update policy {policy} on {levelType} {level} to statement {statement}, name {name}, description {description}.
Save policy {policy} at {levelType} {level} as {name} ({description}) with statement {statement}.
DELETE /iam/v1/repo/{level-type}/{level-id}/policies/{policy-uuid} Delete a policy · Deletes a policy #
Ask an LLM
“Can I delete a policy that is still bound to groups?”
“What does the force flag do when removing a policy?”
Tell an agent destructive · confirm first
Delete policy {policy} from {levelType} {level} with force {force}.
Remove the policy {policy} at {levelType} {level}, force={force}.
GET /iam/v1/repo/{level-type}/{level-id}/bindings/groups/{group-uuid} List the policies bound to a user group · Lists all policies for a user group #
Ask an LLM
“Which policies does a particular group have attached?”
“Can I get full policy details, not just IDs, for a group's bindings?”
Tell an agent
List the policies bound to group {group} at {levelType} {level}.
Show group {group}'s attached policies on {levelType} {level} with details {details}.
PUT /iam/v1/repo/{level-type}/{level-id}/bindings/groups/{group-uuid} Replace all policies bound to a group · Updates policy bindings for a user group #
Ask an LLM
“How do I set exactly which policies a group has, dropping the rest?”
“Does rebinding a group's policies overwrite its existing ones?”
Tell an agent
Bind group {group} at {levelType} {level} to exactly policies {policies}.
Replace group {group}'s policy set on {levelType} {level} with {policies}.
GET /iam/v1/repo/{level-type}/{level-id}/bindings List every policy binding on a level · Lists all policy bindings of a level #
Ask an LLM
“Which groups use which policies across a whole level?”
“Can I dump all policy-to-group bindings for an account?”
Tell an agent
List all policy bindings on {levelType} {level}.
Show the full binding map of policies to groups at {levelType} {level}.
DELETE /iam/v1/repo/{level-type}/{level-id}/bindings Delete every policy binding on a level · Deletes all policy bindings from a level #
Ask an LLM
“Is there a way to wipe all policy bindings from an environment at once?”
“What happens if I clear every binding on a level?”
Tell an agent destructive · confirm first
Delete all policy bindings on {levelType} {level}.
Clear every group-policy binding at {levelType} {level}.
GET /iam/v1/repo/{level-type}/{level-id}/bindings/{policy-uuid} List the groups bound to one policy · Get policy bindings within a level #
Ask an LLM
“Which groups are using a specific policy on this level?”
“Who is affected if I change a given policy?”
Tell an agent
List the groups bound to policy {policy} at {levelType} {level}.
Show bindings of policy {policy} on {levelType} {level}.
POST /iam/v1/repo/{level-type}/{level-id}/bindings/{policy-uuid} Bind a policy to additional groups · Adds policy bindings to a level #
Ask an LLM
“Can I attach one policy to several more groups without disturbing current bindings?”
“How do I bind a policy to groups with a boundary applied?”
Tell an agent
Bind policy {policy} at {levelType} {level} to groups {groups}.
Attach policy {policy} on {levelType} {level} to groups {groups} limited by boundaries {boundaries}.
DELETE /iam/v1/repo/{level-type}/{level-id}/bindings/{policy-uuid} Unbind a policy from all its groups · Deletes all bindings of a policy #
Ask an LLM
“How do I detach a policy from every group that uses it?”
“What does forceMultiple mean when unbinding a policy?”
Tell an agent destructive · confirm first
Remove all bindings of policy {policy} at {levelType} {level}, forceMultiple {force}.
Detach policy {policy} from every group on {levelType} {level} with forceMultiple={force}.
GET /iam/v1/repo/{level-type}/{level-id}/bindings/descendants/{policy-uuid} List a policy's bindings in child levels · Get policy bindings within descendants of a level #
Ask an LLM
“Where is an account policy bound in the environments beneath it?”
“Can I see a policy's bindings across descendant levels?”
Tell an agent
List bindings of policy {policy} in levels below {levelType} {level}.
Show descendant-level bindings for policy {policy} under {levelType} {level}, page {page}.
GET /iam/v1/repo/{level-type}/{level-id}/bindings/{policy-uuid}/{group-uuid} Get the binding between one policy and one group · Get policy bindings within a level #
Ask an LLM
“Is a specific policy bound to a specific group, and with what parameters?”
“Which boundaries apply to one group's binding of a policy?”
Tell an agent
Get the binding of policy {policy} to group {group} at {levelType} {level}.
Check whether group {group} is bound to policy {policy} on {levelType} {level}.
POST /iam/v1/repo/{level-type}/{level-id}/bindings/{policy-uuid}/{group-uuid} Append a binding of a policy for one group · Append policy bindings within a level for a user group #
Ask an LLM
“Can I add another parameterised binding of a policy for a group, keeping the old one?”
“What's the way to stack an extra boundary-limited binding on one group?”
Tell an agent
Append a binding of policy {policy} for group {group} at {levelType} {level} with parameters {parameters}.
Add an extra binding for group {group} to policy {policy} on {levelType} {level}, keeping existing ones.
PUT /iam/v1/repo/{level-type}/{level-id}/bindings/{policy-uuid}/{group-uuid} Set one group's binding to a policy · Updates or creates a policy binding for a particular group and policy #
Ask an LLM
“How do I change the parameters on one group's policy binding?”
“Can I create or overwrite a single policy-group binding with boundaries?”
Tell an agent
Set the binding of policy {policy} to group {group} at {levelType} {level} with parameters {parameters}.
Overwrite group {group}'s binding to policy {policy} on {levelType} {level} using boundaries {boundaries}.
DELETE /iam/v1/repo/{level-type}/{level-id}/bindings/{policy-uuid}/{group-uuid} Unbind a policy from one group · Deletes a policy binding from a user group #
Ask an LLM
“How do I detach a single policy from just one group?”
“Can I remove one group's policy binding while other groups keep it?”
Tell an agent destructive · confirm first
Unbind policy {policy} from group {group} at {levelType} {level}, forceMultiple {force}.
Remove group {group}'s binding to policy {policy} on {levelType} {level} with forceMultiple={force}.
GET /iam/v1/repo/account/{account-id}/boundaries List policy boundaries in an account · Get a list of policy boundaries within a level #
Ask an LLM
“What policy boundaries have been defined for my account?”
“Can I page through the list of boundaries?”
Tell an agent
List the policy boundaries on account {account}.
Show page {page} of boundaries for account {account}.
POST /iam/v1/repo/account/{account-id}/boundaries Create a policy boundary · Create a policy boundary within a level #
Ask an LLM
“How do I restrict a policy's reach to certain resources with a boundary?”
“What goes into a boundary query when creating one?”
Tell an agent
Create boundary {name} on account {account} with query {query} and metadata {metadata}.
Add a new policy boundary called {name} to {account} limiting to {query}, metadata {metadata}.
GET /iam/v1/repo/account/{account-id}/boundaries/{policy-boundary-uuid} Get one policy boundary · Get policy boundary within a level #
Ask an LLM
“What does a particular boundary restrict?”
“Can I read a boundary's query by its UUID?”
Tell an agent
Get boundary {boundary} on account {account}.
Show the query of policy boundary {boundary} in {account}.
PUT /iam/v1/repo/account/{account-id}/boundaries/{policy-boundary-uuid} Update or create a policy boundary by UUID · Update or create a new policy boundary by uuid within a level #
Ask an LLM
“How do I change the query of an existing boundary?”
“Will updating a boundary UUID that doesn't exist create it?”
Tell an agent
Update boundary {boundary} on {account} to name {name}, query {query}, metadata {metadata}.
Save boundary {boundary} in account {account} as {name} restricting to {query} with metadata {metadata}.
DELETE /iam/v1/repo/account/{account-id}/boundaries/{policy-boundary-uuid} Delete a policy boundary · Delete policy boundary by uuid within a level #
Ask an LLM
“Can I delete a boundary I no longer need?”
“How do I remove a policy boundary from my account?”
Tell an agent destructive · confirm first
Delete boundary {boundary} from account {account}.
Remove policy boundary {boundary} on {account}.
GET /iam/v1/repo/{level-type}/{level-id}/limits Show the IAM limits for a level · Returns limits defined for a level #
Ask an LLM
“How many policies or bindings can an environment hold?”
“What IAM limits apply at a specific level?”
Tell an agent
Show the limits defined for {levelType} {level}.
Check the policy and binding caps on {levelType} {level}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/dynatrace:dynatrace-policy-management-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dynatrace-policy-management-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Dynatrace Account Management Policy Management API
  description: The enterprise management API for Dynatrace SaaS enables automation of operational tasks related to user access and environment lifecycle management.
  version: '1.0'
  contact: {}
servers: []
tags:


# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dynatrace/refs/heads/main/openapi/dynatrace-policy-management-api-openapi.yml