On this page:
- Accounts API
- Application Model API
- Metric and Snapshot API
- Alert and Respond API
- Configuration API
- Configuration Import and Export APIs
- Analytics Events API
This page provides general usage information for the APIs.
Controller API Base URI
Except as indicated in the format listing for a particular method, URIs in the Controller API use the following base URI:
http://<controller_host>:<controller_port>/controller/rest/<REST_URI>
The port that serves the API is the same primary port for the Controller used by Controller UI and agents.
Retrieving Data in JSON Format
The AppDynamics Controller APIs return data in eXtensible Markup Language (XML) or, for certain calls, in JavaScript Object Notation (JSON). The default output format is XML.
Any Controller API with a URI in the /controller/rest/ format shown in Controller API Base URI can return data in JSON format.
To retrieve data in JSON, call the API with the output query parameter set to JSON, as follows:
curl --user user1@customer1:secret http://demo.appdynamics.com/controller/rest/applications?output=JSON [ { "description": "", "id": 5, "name": "ECommerce_E2E" }, { "description": "", "id": 8, "name": "ECommerce_E2E-Fulfillment" }, ]
For any of the Controller APIs, you can similarly specify JSON output format for the response.
When a client uses HTTP 1.1 and accepts gzip content encoding, the Controller returns JSON responses using gzip compression.
Authentication
To invoke the REST APIs, provide basic HTTP authentication credentials as well as your account information. These are:
- Account: the AppDynamics tenant account name
- Username: a user in that account
- Password: the password for that account
Pass the credentials in the following form:
<your_username>@<your_accountname>:<your_password>
For a single-tenant Controller (which is the case for most on-premises Controllers), the account name should be the account name for the primary default account, which is "customer1". For example:
<your_username>@customer1:<your_password>
If you are using a multi-tenant Controller (most SaaS Controllers), replace customer1 with your own, instance-specific account name. You can find the account name in the License Management page.
Invalid Characters for Usernames and Passwords
Usernames and passwords that contain the following characters are not authenticated for REST API calls:
\ / " [ ] : | < > + = ; , ? * , ' tab space @
If you have already created user credentials that contain any of the disallowed characters, such as "user:customer66", create new credentials without the disallowed character for the purpose of accessing the REST APIs.
For usernames or passwords containing the "@" symbol, URL encode the "@" character as %40.
Copying a Metric URL in the Metric Browser
When you right-click a metric in the Metric Browser you can copy the full REST URL of the metric. You can then paste the REST URL into your code or onto the command line.
For security reasons, AppDynamics only supports making API calls programmatically or at the command line. Do not attempt to paste the REST URL into a browser.