PDFs


This page applies to an earlier version of the AppDynamics App IQ Platform.
See the latest version of the documentation.


Skip to end of metadata
Go to start of metadata

On this page:

The Controller APIs, which are served by the Controller instance, rather than by the Events Service or by an agent component, consist of the following:

  • 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

Usernames that contain the following characters are not authenticated for REST API calls:

\ / " [ ] : | < > + = ; , ? * , ' tab space

If you have already created usernames that contain any of the disallowed characters, such as "user:customer66", create a new username without the disallowed chartacter for the purpose of accessing the REST APIs.

For usernames containing the "@" symbol, URL encode the "@" character as %40.

  • No labels