Skip to main content
Version: Next

View API

This section describes basic usage of the View REST API. Browse https://github.com/apache/ambari/blob/trunk/ambari-views/docs/index.md for detailed usage information and examples.

Get List of Deployed Views

  1. Gets the list of all deployed views
GET /api/v1/views

200 - OK
  1. Once you have a list of views, you can drill-into a view and see the available versions.
GET /api/v1/views/FILES

200 - OK
  1. You can go a level deeper and see more information about that specific version for the view, such as the parameters and the archive name, and a list of all instances of the view for that specific view version.
GET /api/v1/views/FILES/versions/0.1.0

200 - OK

Creating a View Instance: Files View

The following example shows creating an instance of the Files View, name FILES, version 0.1.0 view called "MyFiles".

  1. Create the view instance.
POST /api/v1/views/FILES/versions/0.1.0/instances/MyFiles

[ {
"ViewInstanceInfo" : {
"properties" : {
"dataworker.defaultFs" : "webhdfs://your.namenode.host:50070"
}
}
} ]

201 - CREATED
info

When creating your view instance, be sure to provide all required view instance properties, otherwise you will receive a 500 with a message explaining the properties that are required.

  1. Restart Ambari Server to pick-up the view instance and UI resources.
ambari-server restart
  1. Confirm the newly created view instance is available.
GET /api/v1/views/FILES/versions/0.1.0

{
"href" : "http://c6401.ambari.apache.org:8080/api/v1/views/FILES/versions/0.1.0/",
"ViewVersionInfo" : {
"archive" : "/var/lib/ambari-server/resources/views/work/FILES{0.1.0}",
"label" : "Files",
"masker_class" : null,
"parameters" : [
{
"name" : "dataworker.defaultFs",
"description" : "FileSystem URI",
"required" : true,
"masked" : false
},
{
"name" : "dataworker.username",
"description" : "The username (defaults to ViewContext username)",
"required" : false,
"masked" : false
}
],
"version" : "0.1.0",
"view_name" : "FILES"
},
"permissions" : [ ],
"instances" : [
{
"href" : "http://c6401.ambari.apache.org:8080/api/v1/views/FILES/versions/0.1.0/instances/MyFiles",
"ViewInstanceInfo" : {
"instance_name" : "MyFiles",
"version" : "0.1.0",
"view_name" : "FILES"
}
}
]
}

Browse to the view instance directly.

http://c6401.ambari.apache.org:8080/views/FILES/0.1.0/MyFiles/

or

http://c6401.ambari.apache.org:8080/#/main/views/FILES/0.1.0/MyFiles

Creating a View Instance: Capacity Scheduler View

The following example shows creating an instance of the Capacity Scheduler View, name CAPACITY-SCHEDULER, version 0.1.0 view called "CS_1", using the label "Capacity Scheduler".

  • Create the view instance.
POST /api/v1/views/CAPACITY-SCHEDULER/versions/0.1.0/instances/CS_1

[ {
"ViewInstanceInfo" : {
"label" : "Capacity Scheduler",
"properties" : {
"ambari.server.url" : "http://c6401.ambari.apache.org:8080/api/v1/clusters/MyCluster",
"ambari.server.username" : "admin",
"ambari.server.password" : "admin"
}
}
} ]

201 - CREATED
info

When creating your view instance, be sure to provide all required view instance properties, otherwise you will receive a 500 with a message explaining the properties that are required.

  • Confirm the newly created view instance is available.
GET /api/v1/views/CAPACITY-SCHEDULER/versions/0.1.0

{
"href" : "http://c6401.ambari.apache.org:8080/api/v1/views/CAPACITY-SCHEDULER/versions/0.1.0/",
"ViewVersionInfo" : {
"archive" : "/var/lib/ambari-server/resources/views/work/CAPACITY-SCHEDULER{0.1.0}",
"label" : "Capacity Scheduler",
"masker_class" : null,
"parameters" : [
{
"name" : "ambari.server.url",
"description" : "Target Ambari Server REST API cluster URL (for example: http://ambari.server:8080/api/v1/clusters/c1)",
"required" : true,
"masked" : false
},
{
"name" : "ambari.server.username",
"description" : "Target Ambari administrator username (for example: admin)",
"required" : true,
"masked" : false
},
{
"name" : "ambari.server.password",
"description" : "Target Ambari administrator password (for example: admin)",
"required" : true,
"masked" : false
}
],
"version" : "0.1.0",
"view_name" : "CAPACITY-SCHEDULER"
},
"permissions" : [ ],
"instances" : [
{
"href" : "http://c6401.ambari.apache.org:8080/api/v1/views/CAPACITY-SCHEDULER/versions/0.1.0/instances/CS_1",
"ViewInstanceInfo" : {
"instance_name" : "CS_1",
"version" : "0.1.0",
"view_name" : "CAPACITY-SCHEDULER"
}
}
]
}
  • Browse to the view instance directly.
http://c6401.ambari.apache.org:8080/views/CAPACITY-SCHEDULER/0.1.0/CS_1/

or

http://c6401.ambari.apache.org:8080/#/main/views/CAPACITY-SCHEDULER/0.1.0/CS_1/