Tokens API v1 - POST a new token
This API is deprecated. Use the Access tokens API instead.
Creates a new Dynatrace API authentication token. The response contains the newly created token.
The new token is owned by the same user who owns the token used to authenticate the call.
The request consumes an application/json
payload.
The request produces one of the following payload types:
application/json
text/plain
text/csv
Use the Accept header to set the required response type.
POST | ManagedDynatrace for Government | https://{your-domain}/e/{your-environment-id}/api/v1/tokens |
SaaS | https://{your-environment-id}.live.dynatrace.com/api/v1/tokens | |
Environment ActiveGate | https://{your-activegate-domain}/e/{your-environment-id}/api/v1/tokens |
Authentication
To execute this request, you need an access token with TenantTokenManagement
scope.
To learn how to obtain and use it, see Tokens and authentication.
Parameters
Parameter | Type | Description | In | Required |
---|---|---|---|---|
body | Create | The JSON body of the request. Contains parameters of the new token. | body | required |
Request body objects
The CreateToken
object
Element | Type | Description | Required |
---|---|---|---|
name | string | The name of the token. | required |
expiresIn | Duration | Defines a period of time. | optional |
scopes | string[] | The list of scopes to be assigned to the token.
| required |
The Duration
object
Defines a period of time.
Element | Type | Description | Required |
---|---|---|---|
value | integer | The amount of time. | required |
unit | string | The unit of time. If not set, millisecond is used. | optional |
Request body JSON model
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.
{
"name": "string",
"expiresIn": {
"value": 1,
"unit": "DAYS"
},
"scopes": [
"InstallerDownload"
]
}
Request headers
Accept header value | Description |
---|---|
application/json | The response contains JSON payload with token. |
text/plain | The response contains token in plain text format. |
accept: text/csv; header=present; charset=utf-8 | The response contains token in CSV-format. |
accept: text/csv; header=absent; charset=utf-8 | The response contains token in CSV-format, preceded by the token heading. |
Response
Response codes
Code | Type | Description |
---|---|---|
201 | Token | Success. The token has been created. The response body contains the token itself. |
400 | ErrorEnvelope | Failed. The input is invalid. Response body provides details. |
Response body objects
The Token
object
Element | Type | Description |
---|---|---|
token | string | Dynatrace API authentication token. |
Response body JSON model
{
"token": "abcdefjhij1234567890"
}
Example
In this example, the request creates a new token named REST example. It is valid for 24 hours and has the following scopes:
- Access problem and event feed, metrics, and topology
- Read configuration
- Write configuration
The Accept header sets the response content type as text/plain
.
The response code of 201 indicates that the creation was successful. The response contains the new token as plain text.
The API token is passed in the Authorization header.
You can download or copy the example request body to try it out on your own.
Curl
curl -X POST \
https://mySampleEnv.live.dynatrace.com/api/v1/tokens/ \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
-H 'Content-Type: application/json' \
-H 'Accept: text/plain'
-d '{
"name": "REST example",
"scopes": [
"WriteConfig",
"ReadConfig",
"DataExport"
],
"expiresIn": {
"value": 24,
"unit": "HOURS"
}
}
'
Request body
{
"name": "REST example",
"scopes": ["WriteConfig", "ReadConfig", "DataExport"],
"expiresIn": {
"value": 24,
"unit": "HOURS"
}
}
Response body
0987654321jihgfedcba
Response code
201
Result
The new token looks like this in the Dynatrace interface: