Splunk AppDynamics

Import Dashboard Using Controller API and Postman Tool

Allister_Green
New Member

I am trying to export and import a dashboard using the Controller API, and using the Postman tool.

Ref export, I have this working OK:

  • I created an API Client with the administrator role
  • I used the Controller API with the API Client credentials to generate a Bearer Token,

https://{{controller_uri}}//controller/api/oauth/access_token

  • I successfully exported a dashboard

https://{{controller_uri}}/controller/CustomDashboardImportExportServlet?dashboardId=12355

Headers:

Authorization:Bearer {{bearer_token}}

Now when I try to import a dashboard using the API, with:

  • A new dashboard name that currently doesn’t exist,
  • Using basic authentication (my user account which also has admin access) because the import API does not support the use of the Bearer Token (open enhancement exists: Internal story ID https://jira.corp.appdynamics.com/browse/METADATA-9305).

.. I simply get a 500 response.

What I tried is:

Method: POST

URI: https://{{controller_uri}}/controller/CustomDashboardImportExportServlet

BODY: The json of the previously exported dashboard

Content-Type: application/json

As per the documentation, I also tried using CURL and it worked:

https://docs.appdynamics.com/4.5.x/en/extend-appdynamics/appdynamics-apis/configuration-import-and-e...

curl -X POST --user Allister.Green@RSAGroup:<pw> https://<domain uri>/controller/CustomDashboardImportExportServlet -F file=@dashboard.json

Because the curl example uses a file, I also tried using a file with Postman instead of using the dashboard json as the message body, but this also generated a 500 response.

To use a file:

Body: form-data

KEY: file, VALUE: <filename>, CONTENT TYPE application/json

Has anyone got dashboard imports working using Postman, and if so, please can you share how.

Thanks,

Allister.

Labels (1)
0 Karma
1 Solution

Allister_Green1
Engager

Thanks for the prompt Ryan.

I wasn't able to get the dashboard import working using Postman.

But... I was able to get it to work using Fiddler.

Method: POST

URI: https://<controller domain>/controller/CustomDashboardImportExportServlet

Header: Authorization: Basic QWxsaXN0ZXxxxxxxxxxxxxxxx

Body:

Click on “upload file” and select the json file containing the dashboard. Note it is not possible to use JSON directly as the message body.

image.png

To generate the Authorization header:

Create string: <user name>@<tenant>:<user password>

Then base 64 encode this using your tool of choice.

e.g. if using Notepad++

select the text

Plugins -> MIME Toools -> Base64 Encode

Then the header is simply:

Authorization: Basic <base64 encoded string>

View solution in original post

iamryan
Community Manager
Community Manager

Hi @Allister.Green,

I see you ended up creating a Support ticket. Can you please share your results as a reply to this post. 

Knowledge sharing is key to this community.

0 Karma

Allister_Green1
Engager

Thanks for the prompt Ryan.

I wasn't able to get the dashboard import working using Postman.

But... I was able to get it to work using Fiddler.

Method: POST

URI: https://<controller domain>/controller/CustomDashboardImportExportServlet

Header: Authorization: Basic QWxsaXN0ZXxxxxxxxxxxxxxxx

Body:

Click on “upload file” and select the json file containing the dashboard. Note it is not possible to use JSON directly as the message body.

image.png

To generate the Authorization header:

Create string: <user name>@<tenant>:<user password>

Then base 64 encode this using your tool of choice.

e.g. if using Notepad++

select the text

Plugins -> MIME Toools -> Base64 Encode

Then the header is simply:

Authorization: Basic <base64 encoded string>

Get Updates on the Splunk Community!

Splunk Observability Synthetic Monitoring - Resolved Incident on Detector Alerts

We’ve discovered a bug that affected the auto-clear of Synthetic Detectors in the Splunk Synthetic Monitoring ...

Video | Tom’s Smartness Journey Continues

Remember Splunk Community member Tom Kopchak? If you caught the first episode of our Smartness interview ...

3-2-1 Go! How Fast Can You Debug Microservices with Observability Cloud?

3-2-1 Go! How Fast Can You Debug Microservices with Observability Cloud? Learn how unique features like ...