summaryrefslogtreecommitdiff
path: root/api-ref/source/v1/resource-types.inc
blob: c4a196b52cebdecd10520888a4d5002bd6a01a12 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
.. -*- rst -*-

==============
Resource Types
==============

List resource types
===================

.. rest_method::  GET /v1/{tenant_id}/resource_types

Lists all supported template resource types.

Response Codes
--------------

.. rest_status_code:: success status.yaml

   - 200

.. rest_status_code:: error status.yaml

   - 400
   - 401

Request Parameters
------------------

.. rest_parameters:: parameters.yaml

   - tenant_id: tenant_id
   - name: type_name_query
   - support_status: support_status_query
   - version: type_version_query
   - with_description: with_description

Response Parameters
-------------------

Note that the format of the response from this API varies when different query
parameters are specified. The default response has the following format:

.. rest_parameters:: parameters.yaml

   - X-Openstack-Request-Id: request_id
   - resource_types: resource_types_simple

When ``with_description`` is specified, the response has the following format:

.. rest_parameters:: parameters.yaml

   - X-Openstack-Request-Id: request_id
   - resource_types: resource_types_advanced
   - resource_type: resource_type
   - description: resource_type_description

Response Example
----------------

The following is an example of the simple response:

.. literalinclude:: samples/resource-types-list-response.json
   :language: javascript

The following is an example of the response when ``with_description`` is
specified:

.. literalinclude:: samples/resource-types-list-advanced-response.json
   :language: javascript


Show resource type template
===========================

.. rest_method::  GET /v1/{tenant_id}/resource_types/{type_name}/template

Shows the template representation for a resource type.

The returned template contains a single resource type. Each resource property
is mapped to a template parameter and each resource attribute is mapped to a
template output.

You can use these templates as a starting place for creating customized,
template-based resources or as examples of using the particular resource in
another template.

Response Codes
--------------

.. rest_status_code:: success status.yaml

   - 200

.. rest_status_code:: error status.yaml

   - 400
   - 401
   - 404

Request Parameters
------------------

.. rest_parameters:: parameters.yaml

   - tenant_id: tenant_id
   - type_name: type_name
   - template_type: template_type

Response Parameters
-------------------

The format of the response varies when ``template_type`` is set to different
values. When it is set to ``cfn`` or omitted, the response has the following
format:

.. rest_parameters:: parameters.yaml

   - X-Openstack-Request-Id: request_id
   - Description: Description
   - Outputs: Outputs
   - HeatTemplateFormatVersion: HeatTemplateFormatVersion
   - Parameters: Parameters
   - Resources: Resources

When the ``template_type`` is explicitly set to ``hot``, the response has the
following format:

.. rest_parameters:: parameters.yaml

   - X-Openstack-Request-Id: request_id
   - heat_template_version: heat_template_version
   - description: template_description
   - outputs: template_outputs
   - parameters: template_parameters
   - resources: template_resources


Response Example
----------------

The following is a sample of the response when ``template_type`` is set to
``cfn`` or omitted:

.. literalinclude:: samples/resource-type-template-response.json
   :language: javascript

The following is a sample of the response when ``template_type`` is explicitly
set to ``hot``:

.. literalinclude:: samples/resource-type-template-hot-response.json
   :language: javascript


Show resource type schema
=========================

.. rest_method::  GET /v1/{tenant_id}/resource_types/{type_name}

Shows the interface schema for a resource type.

A schema describes the properties that can be set on the resource, their types,
constraints, descriptions, and default values.  Additionally, the response
shows the resource attributes and their descriptions.

Response Codes
--------------

.. rest_status_code:: success status.yaml

   - 200

.. rest_status_code:: error status.yaml

   - 400
   - 401
   - 404

Request Parameters
------------------

.. rest_parameters:: parameters.yaml

   - tenant_id: tenant_id
   - type_name: type_name

Response Parameters
-------------------

.. rest_parameters:: parameters.yaml

   - X-Openstack-Request-Id: request_id
   - attributes: attributes
   - properties: properties
   - resource_type: resource_type
   - support_status: support_status

Response Example
----------------

.. literalinclude:: samples/resource-schema-response.json
   :language: javascript