Services API - GET all services
We have a new version of this API—Entity API v2. Check it out!
Gets a list of all services in your Dynatrace environment, along with their parameters and relationships.
The full list can be lengthy, so you can narrow it down by specifying filter parameters, like tags. See the Parameters section for more details.
You can additionally limit the output by using the pagination:
- Specify the number of results per page in the pageSize query parameter.
- Then use the cursor from the Next-Page-Key response header in the nextPageKey query parameter to obtain subsequent pages.
The request produces an application/json
payload.
GET | ManagedDynatrace for Government | https://{your-domain}/e/{your-environment-id}/api/v1/entity/services |
SaaS | https://{your-environment-id}.live.dynatrace.com/api/v1/entity/services | |
Environment ActiveGate | https://{your-activegate-domain}/e/{your-environment-id}/api/v1/entity/services |
Authentication
To execute this request, you need an access token with DataExport
scope.
To learn how to obtain and use it, see Tokens and authentication.
Parameters
The timeframe is restricted to a maximum period of 3 days.
Parameter | Type | Description | In | Required |
---|---|---|---|---|
startTimestamp | integer | The start timestamp of the requested timeframe, in milliseconds (UTC). If not set, then 72 hours behind from now is used. | query | optional |
endTimestamp | integer | The end timestamp of the requested timeframe, in milliseconds (UTC). If not set, then the current timestamp is used. The timeframe must not exceed 3 days. | query | optional |
relativeTime | string | The relative timeframe, back from now. | query | optional |
tag | string[] | Filters the resulting set of services by the specified tag. You can specify several tags in the following format: In case of key-value tags, such as imported AWS or CloudFoundry tags, use the following format: | query | optional |
entity | string[] | Filters result to the specified services only. To specify several services use the following format: | query | optional |
managementZone | integer | Only return services that are part of the specified management zone. | query | optional |
includeDetails | boolean | Includes ( Excluding details may make queries faster. If not set, then | query | optional |
pageSize | integer | The number of services per result page. If not set, pagination is not used and the result contains all services fitting the specified filtering criteria. | query | optional |
nextPageKey | string | The cursor for the next page of results. You can find it in the Next-Page-Key header of the previous response. If you're using pagination, the first page is always returned without this cursor. You must keep all other query parameters as they were in the first request to obtain subsequent pages. | query | optional |
Response headers
Header | Type | Description |
---|---|---|
Total-Count | integer | The estimated number of results. |
Next-Page-Key | string | The cursor for the next page of results. Without it you'll get the first page again. |
Page-Size | string | The maximum number of results per page. |
Response
Response codes
Code | Type | Description |
---|---|---|
200 | Service[] | Success |
400 | ErrorEnvelope | Failed. The input is invalid. |
Response body objects
The ResponseBody
object
The object doesn't provide any parameters.
The Service
object
Element | Type | Description |
---|---|---|
entityId | string | The Dynatrace entity ID of the required entity. |
displayName | string | The name of the Dynatrace entity as displayed in the UI. |
customizedName | string | The customized name of the entity |
discoveredName | string | The discovered name of the entity |
firstSeenTimestamp | integer | The timestamp of when the entity was first detected, in UTC milliseconds |
lastSeenTimestamp | integer | The timestamp of when the entity was last detected, in UTC milliseconds |
tags | Tag | The list of entity tags. |
fromRelationships | object | - |
toRelationships | object | - |
databaseName | string | - |
iibApplicationName | string | The IIB application name. |
akkaActorSystem | string | The services of the akka actor system. |
esbApplicationName | string | The ESB application name. |
ibmCtgGatewayUrl | string | The IBM CTG gateway URL. |
databaseHostNames | string[] | - |
serviceTechnologyTypes | string[] | - |
remoteServiceName | string | The name of the remote service. |
isExternalService | boolean | - |
remoteEndpoint | string | The endpoint of the remote service. |
path | string | - |
webServiceNamespace | string | - |
webServerName | string | - |
managementZones | Entity | The management zones that the entity is part of. |
databaseVendor | string | - |
serviceType | string | - |
webApplicationId | string | - |
ibmCtgServerName | string | The IBM CICS Transaction Gateway name. |
contextRoot | string | - |
ipAddresses | string[] | - |
webServiceName | string | - |
className | string | - |
port | integer | - |
agentTechnologyType | string | - |
softwareTechnologies | Technology | - |
The TagInfo
object
Tag of a Dynatrace entity.
Element | Type | Description |
---|---|---|
context | string | The origin of the tag, such as AWS or Cloud Foundry. Custom tags use the |
key | string | The key of the tag. Custom tags have the tag value here. |
value | string | The value of the tag. Not applicable to custom tags. |
The EntityShortRepresentation
object
The short representation of a Dynatrace entity.
Element | Type | Description |
---|---|---|
id | string | The ID of the Dynatrace entity. |
name | string | The name of the Dynatrace entity. |
description | string | A short description of the Dynatrace entity. |
The TechnologyInfo
object
Element | Type | Description |
---|---|---|
type | string | - |
edition | string | - |
version | string | - |
Response body JSON model
[
{
"entityId": "string",
"displayName": "string",
"customizedName": "string",
"discoveredName": "string",
"firstSeenTimestamp": 1,
"lastSeenTimestamp": 1,
"tags": [
{
"context": "AWS",
"key": "string",
"value": "string"
}
],
"fromRelationships": {
"runsOnProcessGroupInstance": [
"string"
],
"calls": [
"string"
],
"runsOn": [
"string"
]
},
"toRelationships": {
"calls": [
"string"
]
},
"databaseName": "string",
"iibApplicationName": "string",
"akkaActorSystem": "string",
"esbApplicationName": "string",
"ibmCtgGatewayUrl": "string",
"databaseHostNames": [
"string"
],
"serviceTechnologyTypes": [
"string"
],
"remoteServiceName": "string",
"isExternalService": true,
"remoteEndpoint": "string",
"path": "string",
"webServiceNamespace": "string",
"webServerName": "string",
"managementZones": [
{
"id": "6a98d7bc-abb9-44f8-ae6a-73e68e71812a",
"name": "Dynatrace entity",
"description": "Dynatrace entity for the REST API example"
}
],
"databaseVendor": "string",
"serviceType": "AMP",
"webApplicationId": "string",
"ibmCtgServerName": "string",
"contextRoot": "string",
"ipAddresses": [
"string"
],
"webServiceName": "string",
"className": "string",
"port": 1,
"agentTechnologyType": "APACHE",
"softwareTechnologies": [
{
"type": "string",
"edition": "string",
"version": "string"
}
]
}
]
Example
In this example, the request lists all the services of the environment detected within the last 5 minutes.
The API token is passed in the Authorization header.
The result is truncated to two entries.
Curl
curl -X GET \
'https://mySampleEnv.live.dynatrace.com/api/v1/entity/services?relativeTime=5mins' \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
Request URL
https://mySampleEnv.live.dynatrace.com/api/v1/entity/services?relativeTime=5mins
Response body
[
{
"entityId": "SERVICE-72503CBDD2AEF066",
"displayName": "PHP-FPM via domain socket /run/php7-fpm.sock",
"discoveredName": "PHP-FPM via domain socket /run/php7-fpm.sock",
"firstSeenTimestamp": 1505902015554,
"lastSeenTimestamp": 1544025169570,
"tags": [
{
"context": "CONTEXTLESS",
"key": "Sample tag"
}
],
"fromRelationships": {
"runsOnProcessGroupInstance": [
"PROCESS_GROUP_INSTANCE-165E2E1655782C30",
"PROCESS_GROUP_INSTANCE-2E41AD6095ACE67B",
"PROCESS_GROUP_INSTANCE-3E537F0F455E9757"
],
"runsOn": [
"PROCESS_GROUP-E5C3CC7EC1F80B5B"
]
},
"toRelationships": {
"calls": [
"SERVICE-5304CCF4AFBFF35E"
]
},
"agentTechnologyType": "N/A",
"serviceType": "WebRequest",
"softwareTechnologies": [
{
"type": "SQLITE",
"edition": null,
"version": null
},
{
"type": "PHP",
"edition": "FPM",
"version": "7.0.32"
},
{
"type": "PHP_FPM",
"edition": null,
"version": null
}
]
},
{
"entityId": "SERVICE-52AC624D70C377BC",
"displayName": "Requests to public networks",
"discoveredName": "Requests to public networks",
"firstSeenTimestamp": 1421376505750,
"lastSeenTimestamp": 1544025153570,
"tags": [],
"fromRelationships": {},
"toRelationships": {
"calls": [
"SERVICE-635F6C4CAD07BC56",
"SERVICE-74C7ACD74FA27688",
"SERVICE-C7790E5EDD1F895E"
]
},
"agentTechnologyType": "N/A",
"serviceType": "WebRequest"
}
]
Response code
200