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-problems-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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: 3.2.0
info:
title: Dynatrace API v2 Problems API
version: 2.0.0
description: The Dynatrace Problems API v2 allows you to query and manage detected problems within a Dynatrace environment. Problems represent degradations in service quality detected by the Dynatrace AI (Davis). The API provides endpoints for listing open and closed problems, retrieving detailed problem information including root cause analysis, closing problems programmatically, and managing problem comments for collaboration.
contact:
name: Dynatrace Support
url: https://www.dynatrace.com/support/
license:
name: Dynatrace Terms of Service
url: https://www.dynatrace.com/company/trust-center/terms/
x-last-validated: '2026-04-18'
servers:
- url: https://{environmentId}.live.dynatrace.com/api/v2
description: Dynatrace SaaS environment
variables:
environmentId:
description: The unique identifier of your Dynatrace environment
default: mySampleEnv
security:
- api-token: []
tags:
- name: Problems
description: Operations for querying and managing detected problems
paths:
/problems:
get:
operationId: listProblems
summary: Dynatrace List Problems
description: Returns a list of problems from the Dynatrace environment. You can filter problems by problem selector, entity selector, time range, and other criteria. Results are paginated. By default, returns problems from the last two hours.
tags:
- Problems
parameters:
- name: nextPageKey
in: query
description: The cursor for the next page of results, obtained from the nextPageKey field of a previous response. When this parameter is set, all other query parameters except pageSize are ignored.
required: false
schema:
type: string
example: example-value
- name: pageSize
in: query
description: The number of problems to return per page. Default is 50, maximum is 500.
required: false
schema:
type: integer
minimum: 1
maximum: 500
default: 50
example: 500
- name: problemSelector
in: query
description: Defines the scope of the query using the problem selector syntax. Allows filtering by status, severity, management zone, and other problem properties. For example, status(OPEN),severityLevel(AVAILABILITY).
required: false
schema:
type: string
example: type(SERVICE)
- name: entitySelector
in: query
description: Filters results to problems affecting entities matching this selector. Use the entity selector syntax, e.g., type(SERVICE), tag(production). Problems are returned if any affected or impacted entity matches.
required: false
schema:
type: string
example: type(SERVICE)
- name: from
in: query
description: The start of the queried time range. Use a relative expression (now-1h), ISO 8601 timestamp, or Unix timestamp in milliseconds. Default is now-2h.
required: false
schema:
type: string
example: example-value
- name: to
in: query
description: The end of the queried time range. Use a relative expression (now), ISO 8601 timestamp, or Unix timestamp in milliseconds. Default is now.
required: false
schema:
type: string
example: example-value
- name: sort
in: query
description: Defines the sort order of the results. Use field name prefixed with + for ascending or - for descending. For example, -startTime sorts by start time descending (newest first).
required: false
schema:
type: string
example: example-value
- name: fields
in: query
description: Defines additional fields to include in the response beyond the default set. Use a comma-separated list. For example, +evidenceDetails,+impactAnalysis to include evidence and impact data.
required: false
schema:
type: string
example: example-value
responses:
'200':
description: A paginated list of problems
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemCollection'
examples:
ListProblems200Example:
summary: Default listProblems 200 response
x-microcks-default: true
value:
nextPageKey: example-value
totalCount: 500
pageSize: 500
problems:
- problemId: abc123
displayId: abc123
title: example-value
severityLevel: AVAILABILITY
status: OPEN
startTime: 1718153645993
endTime: 1718153645993
affectedEntities:
- entityId: abc123
name: Production Service
type: STANDARD
impactedEntities:
- entityId: abc123
name: Production Service
type: STANDARD
rootCauseEntity: example-value
managementZones:
- id: abc123
name: Production Service
problemFilters:
- id: abc123
name: Production Service
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/problems/{problemId}:
get:
operationId: getProblem
summary: Dynatrace Get Problem Details
description: Returns the full details of a specific problem, including its severity, affected and impacted entities, root cause analysis, evidence, and management zone assignments. The problem ID is available from the list problems endpoint.
tags:
- Problems
parameters:
- $ref: '#/components/parameters/problemId'
example: example
- name: fields
in: query
description: Defines additional fields to include in the response. Use a comma-separated list prefixed with +, e.g., +evidenceDetails.
required: false
schema:
type: string
example: example-value
responses:
'200':
description: The problem details
content:
application/json:
schema:
$ref: '#/components/schemas/Problem'
examples:
GetProblem200Example:
summary: Default getProblem 200 response
x-microcks-default: true
value:
problemId: abc123
displayId: abc123
title: example-value
severityLevel: AVAILABILITY
status: OPEN
startTime: 1718153645993
endTime: 1718153645993
affectedEntities:
- entityId: abc123
name: Production Service
type: STANDARD
impactedEntities:
- entityId: abc123
name: Production Service
type: STANDARD
rootCauseEntity: example-value
managementZones:
- id: abc123
name: Production Service
problemFilters:
- id: abc123
name: Production Service
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/problems/{problemId}/close:
post:
operationId: closeProblem
summary: Dynatrace Close Problem
description: Closes the specified problem and optionally attaches a closing message explaining the reason for closure. Only problems that are currently OPEN can be closed. Closing a problem will trigger any configured notifications for problem resolution.
tags:
- Problems
parameters:
- $ref: '#/components/parameters/problemId'
example: example
requestBody:
description: Optional message to attach when closing the problem
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemCloseRequest'
examples:
CloseProblemRequestExample:
summary: Default closeProblem request
x-microcks-default: true
value:
message: Example description.
responses:
'200':
description: The problem was successfully closed
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemCloseResult'
examples:
CloseProblem200Example:
summary: Default closeProblem 200 response
x-microcks-default: true
value:
problemId: abc123
closing: true
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/problems/{problemId}/comments:
get:
operationId: listProblemComments
summary: Dynatrace List Comments on a Problem
description: Returns a list of all comments attached to the specified problem. Comments are used for collaboration and tracking investigation notes or actions taken.
tags:
- Problems
parameters:
- $ref: '#/components/parameters/problemId'
example: example
- name: nextPageKey
in: query
description: Cursor for the next page of results.
required: false
schema:
type: string
example: example-value
- name: pageSize
in: query
description: The number of comments to return per page. Default is 50.
required: false
schema:
type: integer
minimum: 1
maximum: 200
default: 50
example: 500
responses:
'200':
description: A list of comments on the problem
content:
application/json:
schema:
$ref: '#/components/schemas/CommentCollection'
examples:
ListProblemComments200Example:
summary: Default listProblemComments 200 response
x-microcks-default: true
value:
nextPageKey: example-value
totalCount: 500
comments:
- id: abc123
createdAtTimestamp: 1718153645993
authorName: Production Service
content: example-value
context: example-value
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
operationId: createProblemComment
summary: Dynatrace Add Comment to Problem
description: Creates a new comment on the specified problem. Comments can include a context field to categorize or reference external systems. Useful for attaching remediation notes, ticket references, or investigation findings.
tags:
- Problems
parameters:
- $ref: '#/components/parameters/problemId'
example: example
requestBody:
description: The comment to add to the problem
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CommentRequestBody'
examples:
CreateProblemCommentRequestExample:
summary: Default createProblemComment request
x-microcks-default: true
value:
message: Example description.
context: example-value
responses:
'201':
description: The comment was successfully created
content:
application/json:
schema:
$ref: '#/components/schemas/Comment'
examples:
CreateProblemComment201Example:
summary: Default createProblemComment 201 response
x-microcks-default: true
value:
id: abc123
createdAtTimestamp: 1718153645993
authorName: Production Service
content: example-value
context: example-value
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/problems/{problemId}/comments/{commentId}:
get:
operationId: getProblemComment
summary: Dynatrace Get Comment
description: Returns the details of a specific comment on a problem, identified by both the problem ID and the comment ID.
tags:
- Problems
parameters:
- $ref: '#/components/parameters/problemId'
example: example
- $ref: '#/components/parameters/commentId'
example: example
responses:
'200':
description: The comment details
content:
application/json:
schema:
$ref: '#/components/schemas/Comment'
examples:
GetProblemComment200Example:
summary: Default getProblemComment 200 response
x-microcks-default: true
value:
id: abc123
createdAtTimestamp: 1718153645993
authorName: Production Service
content: example-value
context: example-value
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
put:
operationId: updateProblemComment
summary: Dynatrace Update Comment
description: Updates the content or context of an existing comment on a problem. Only the comment author or an administrator can update a comment.
tags:
- Problems
parameters:
- $ref: '#/components/parameters/problemId'
example: example
- $ref: '#/components/parameters/commentId'
example: example
requestBody:
description: The updated comment content
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CommentRequestBody'
examples:
UpdateProblemCommentRequestExample:
summary: Default updateProblemComment request
x-microcks-default: true
value:
message: Example description.
context: example-value
responses:
'200':
description: The comment was successfully updated
content:
application/json:
schema:
$ref: '#/components/schemas/Comment'
examples:
UpdateProblemComment200Example:
summary: Default updateProblemComment 200 response
x-microcks-default: true
value:
id: abc123
createdAtTimestamp: 1718153645993
authorName: Production Service
content: example-value
context: example-value
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
delete:
operationId: deleteProblemComment
summary: Dynatrace Delete Comment
description: Permanently deletes a specific comment from a problem. This action cannot be undone. Only the comment author or an administrator can delete a comment.
tags:
- Problems
parameters:
- $ref: '#/components/parameters/problemId'
example: example
- $ref: '#/components/parameters/commentId'
example: example
responses:
'204':
description: The comment was successfully deleted
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
ConstraintViolation:
type: object
description: Details of a single constraint violation in a request.
properties:
path:
type: string
description: The JSON path to the field that caused the violation.
example: example-value
message:
type: string
description: A description of the constraint violation.
example: Example description.
parameterLocation:
type: string
description: The location of the violating parameter (QUERY, PATH, BODY).
example: example-value
location:
type: string
description: The location detail for the violation.
example: example-value
Problem:
type: object
description: Represents a Dynatrace-detected problem, which is an aggregated set of related events indicating a service degradation. Problems are detected and correlated by the Davis AI engine.
properties:
problemId:
type: string
description: The internal unique identifier of the problem, e.g., -1234567890123456789_V2.
example: abc123
displayId:
type: string
description: The human-readable problem identifier displayed in the Dynatrace UI, e.g., P-123456.
example: abc123
title:
type: string
description: The title summarizing the nature of the problem, generated by the Davis AI.
example: example-value
severityLevel:
type: string
description: The severity classification of the problem, indicating the type of impact.
enum:
- AVAILABILITY
- ERROR
- PERFORMANCE
- RESOURCE_CONTENTION
- CUSTOM_ALERT
example: AVAILABILITY
status:
type: string
description: The current status of the problem.
enum:
- OPEN
- RESOLVED
example: OPEN
startTime:
type: integer
format: int64
description: The Unix timestamp in milliseconds when the problem was first detected.
example: 1718153645993
endTime:
type: integer
format: int64
description: The Unix timestamp in milliseconds when the problem was resolved. Returns -1 if the problem is still open.
example: 1718153645993
affectedEntities:
type: array
description: The list of entities directly affected by the problem. These are the entities where the anomaly was first detected.
items:
$ref: '#/components/schemas/EntityStub'
example:
- entityId: abc123
name: Production Service
type: STANDARD
impactedEntities:
type: array
description: The list of entities experiencing degradation as a result of the problem, including downstream dependencies.
items:
$ref: '#/components/schemas/EntityStub'
example:
- entityId: abc123
name: Production Service
type: STANDARD
rootCauseEntity:
description: The entity identified by Davis AI as the root cause of the problem. Null if the root cause could not be determined.
nullable: true
oneOf:
- $ref: '#/components/schemas/EntityStub'
example: example-value
managementZones:
type: array
description: The management zones that contain the affected entities, used for access control and scoping.
items:
$ref: '#/components/schemas/ManagementZone'
example:
- id: abc123
name: Production Service
problemFilters:
type: array
description: The alerting profiles (problem filters) that match this problem and control notification routing.
items:
$ref: '#/components/schemas/AlertingProfileStub'
example:
- id: abc123
name: Production Service
CommentRequestBody:
type: object
description: The request body for creating or updating a problem comment.
required:
- message
properties:
message:
type: string
description: The text content of the comment.
example: Example description.
context:
type: string
description: An optional context reference for the comment, such as a ticket ID, a link to a runbook, or a category label.
example: example-value
ProblemCloseResult:
type: object
description: The result returned after closing a problem.
properties:
problemId:
type: string
description: The ID of the closed problem.
example: abc123
closing:
type: boolean
description: Whether the problem is in the process of closing. The problem may take a short time to fully transition to RESOLVED status.
example: true
ProblemCloseRequest:
type: object
description: Request body for closing a problem.
properties:
message:
type: string
description: An optional message explaining why the problem is being closed. This is stored as a closing comment on the problem.
example: Example description.
Comment:
type: object
description: A single comment attached to a problem.
properties:
id:
type: string
description: The unique identifier of the comment.
example: abc123
createdAtTimestamp:
type: integer
format: int64
description: The Unix timestamp in milliseconds when the comment was created.
example: 1718153645993
authorName:
type: string
description: The display name of the user who created the comment.
example: Production Service
content:
type: string
description: The text content of the comment.
example: example-value
context:
type: string
description: Optional context reference attached to the comment.
example: example-value
AlertingProfileStub:
type: object
description: A reference to an alerting profile (problem filter).
properties:
id:
type: string
description: The unique identifier of the alerting profile.
example: abc123
name:
type: string
description: The display name of the alerting profile.
example: Production Service
Error:
type: object
description: Details of an API error.
properties:
code:
type: integer
description: The HTTP status code of the error.
example: 500
message:
type: string
description: A human-readable description of the error.
example: Example description.
constraintViolations:
type: array
description: A list of constraint violations for validation errors (HTTP 400).
items:
$ref: '#/components/schemas/ConstraintViolation'
example:
- path: example-value
message: Example description.
parameterLocation: example-value
location: example-value
ProblemCollection:
type: object
description: A paginated collection of problems.
properties:
nextPageKey:
type: string
description: Cursor for the next page of results. Null if no more pages.
nullable: true
example: example-value
totalCount:
type: integer
format: int64
description: The total number of problems matching the query.
example: 500
pageSize:
type: integer
description: The number of results returned on this page.
example: 500
problems:
type: array
description: The list of problems on this page.
items:
$ref: '#/components/schemas/Problem'
example:
- problemId: abc123
displayId: abc123
title: example-value
severityLevel: AVAILABILITY
status: OPEN
startTime: 1718153645993
endTime: 1718153645993
affectedEntities:
- entityId: abc123
name: Production Service
type: STANDARD
impactedEntities:
- entityId: abc123
name: Production Service
type: STANDARD
rootCauseEntity: example-value
managementZones:
- id: abc123
name: Production Service
problemFilters:
- id: abc123
name: Production Service
ErrorEnvelope:
type: object
description: Error response envelope returned when a request fails.
properties:
error:
$ref: '#/components/schemas/Error'
ManagementZone:
type: object
description: A management zone reference.
properties:
id:
type: string
description: The unique identifier of the management zone.
example: abc123
name:
type: string
description: The display name of the management zone.
example: Production Service
CommentCollection:
type: object
description: A paginated collection of problem comments.
properties:
nextPageKey:
type: string
description: Cursor for the next page of results.
nullable: true
example: example-value
totalCount:
type: integer
format: int64
description: The total number of comments.
example: 500
comments:
type: array
description: The list of comments on this page.
items:
$ref: '#/components/schemas/Comment'
example:
- id: abc123
createdAtTimestamp: 1718153645993
authorName: Production Service
content: example-value
context: example-value
EntityStub:
type: object
description: A lightweight reference to a monitored entity.
properties:
entityId:
type: string
description: The unique identifier of the entity, e.g., SERVICE-1234567890ABCDEF.
example: abc123
name:
type: string
description: The display name of the entity.
example: Production Service
type:
type: string
description: The type of the entity, e.g., SERVICE, HOST, PROCESS_GROUP, APPLICATION.
example: STANDARD
responses:
BadRequest:
description: Bad request — invalid query parameters or request body
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
Forbidden:
description: Forbidden — the API token lacks the required scope
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
NotFound:
description: Not found — the specified problem or comment does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
Unauthorized:
description: Unauthorized — missing or invalid API token
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
parameters:
commentId:
name: commentId
in: path
description: The unique identifier of the comment.
required: true
schema:
type: string
problemId:
name: problemId
in: path
description: The unique identifier of the problem. Obtained from the list problems endpoint or from problem notification callbacks.
required: true
schema:
type: string
securitySchemes:
api-token:
type: apiKey
in: header
name: Authorization
description: 'Dynatrace API token. Use the format: Api-Token {your-token} Required scopes: problems.read (for GET operations), problems.write (for POST/PUT/DELETE)'
externalDocs:
description: Dynatrace Problems API v2 Documentation
url: https://docs.dynatrace.com/docs/discover-dynatrace/references/dynatrace-api/environment-api/problems-v2