Configuration Template
----------------------

.. tabularcolumns:: |p{4cm}|p{10.5cm}|

+---------------+------------------------------------------------------------------------------------------------+
| Action        | configuration_template                                                                         |
+===============+================================================================================================+
| title         | Obtain the schema and URL needed to create a Configuration Template instance for the resource. |
+---------------+------------------------------------------------------------------------------------------------+
| method        | GET                                                                                            |
+---------------+------------------------------------------------------------------------------------------------+
| URL           | /api/<resource_type>/<resource_name>/configuration_template/                                   |
+---------------+------------------------------------------------------------------------------------------------+
| Parameters    | hierarchy=[hierarchy]                                                                          |
+---------------+------------------------------------------------------------------------------------------------+
| Response      | POST call to create the schema for the configuration template of specified resource.           |
+---------------+------------------------------------------------------------------------------------------------+
| support_async | false                                                                                          |
+---------------+------------------------------------------------------------------------------------------------+
| class         | config                                                                                         |
+---------------+------------------------------------------------------------------------------------------------+

* Use the returned properties to create the POST payload data for the specified resource.
* For a details on what to add to the POST payload, see the schema in the response.
* The POST call is of the format:

::
  
   POST http://<server_address>/api/data/ConfigurationTemplate/
     ?hierarchy=sys

For example, the request:

::

   GET /api/data/AccessProfile/configuration_template/
     ?hierarchy=[hierarchy]
     &format=json
     &schema=true
     &schema_rules=true

The response includes the required POST call:

::

    "create": {
      "class": "add", 
      "href": "/api/data/ConfigurationTemplate/?hierarchy=[hierarchy]", 
      "method": "POST", 
      "support_async": true, 
      "title": "Create"
    }


The response includes the Configuration Template schema for the relevant model.
The ``template`` property of the schema applies to the relevant model. This schema
is used to create a payload for the POST.

A simple example of a payload containing a Configuration Template for a model
``data/AccessProfile`` with name "CFT1" that adds a value to the Access Profile 
description "Access Profile for:":

::

   {"data":
    {"name":"CFT1",
     "target_model_type":"data/AccessProfile",
     "merge_strategy":"additive",
     "template":{
       "description":"Access Profile for:"}
    },
    "request_meta":{},
    "meta":{
       "references":{
         "form_href":"/api/data/AccessProfile/configuration_template/
           ?hierarchy=[hierarchy]"
       }
    }
   }



.. |VOSS-4-UC| replace:: VOSS-4-UC
.. |Unified CM| replace:: Unified CM
.. |API Guide| replace:: API Guide