Change-Id: I716dc2ad1c9294a7a9df27fbb77e32926b1ba307 Signed-off-by: Zane Bitter <zbitter@redhat.com>
6.6 KiB
Heat OpenStack API Reference
List Stacks
GET /v1/{tenant_id}/stacks
Parameters:
tenant_id
The unique identifier of the tenant or account
Create Stack
POST /v1/{tenant_id}/stacks
{
"stack_name": "{stack_name}",
"template_url": "{template_url}",
"parameters": {
"{key1}": "{value1}",
"{key2}": "{value2}"
},
"timeout_mins": {timeout_mins}
}
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to createtemplate_url
The URL of the template to instantiatetemplate
A JSON template to instantiate - this takes precendence over thetemplate_url
if both are suppliedkeyn
,valuen
User-defined parameters to pass to the Templatetimeout_mins
The timeout for stack creation in minutes
Result:
HTTP/1.1 201 Created
Location: http://heat.example.com:8004/v1/{tenant_id}/stacks/{stack_name}/{stack_id}
Find Stack ID
GET /v1/{tenant_id}/stacks/{stack_name}
Parameters:
stack_name
The name of the stack to look up
Result:
HTTP/1.1 302 Found
Location: http://heat.example.com:8004/v1/{tenant_id}/stacks/{stack_name}/{stack_id}
This operation also works with verbs other than GET
, so you can also use it to perform PUT
and DELETE
operations on a current stack. Just set your client to follow redirects. Note that when redirecting, the request method should not change, as defined in RFC2626. However, in many clients the default behaviour is to change the method to GET
when receiving a 302 because this behaviour is ubiquitous in web browsers.
Get Stack Data
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}
Parameters:
stack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look up
Retrieve Stack Template
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}/template
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look up
Update Stack
PUT /v1/{tenant_id}/stacks/{stack_name}/{stack_id}
{
"template_url": "{template_url}",
"parameters": {
"{key1}": "{value1}",
"{key2}": "{value2}"
},
"timeout_mins": {timeout_mins}
}
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to createstack_id
The unique identifier of the stack to look uptemplate_url
The URL of the updated templatetemplate
An updated JSON template - this takes precendence over thetemplate_url
if both are suppliedkeyn
,valuen
User-defined parameters to pass to the Templatetimeout_mins
The timeout for stack creation in minutes
Result:
HTTP/1.1 202 Accepted
Delete Stack
DELETE /v1/{tenant_id}/stacks/{stack_name}/{stack_id}
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to createstack_id
The unique identifier of the stack to look up
Result:
HTTP/1.1 204 No Content
Validate Template
POST /v1/{tenant_id}/validate
{
"template_url": "{template_url}",
"parameters": {
"{key1}": "{value1}",
"{key2}": "{value2}"
}
}
Parameters:
tenant_id
The unique identifier of the tenant or accounttemplate_url
The URL of the template to validatetemplate
A JSON template to validate - this takes precendence over thetemplate_url
if both are supplied.keyn
,valuen
User-defined parameters to pass to the Template
List Stack Resources
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}/resources
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look up
Find Stack Resources by Name
GET /v1/{tenant_id}/stacks/{stack_name}/resources
Parameters:
stack_name
The name of the stack to look up
Result:
HTTP/1.1 302 Found
Location: http://heat.example.com:8004/v1/{tenant_id}/stacks/{stack_name}/{stack_id}/resources
This is a shortcut to go directly to the list of stack resources when only the stack name is known.
Get Resource
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}/resources/{resource_name}
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look upresource_name
The name of the resource in the template
Get Resource Metadata
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}/resources/{resource_name}/metadata
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look upresource_name
The name of the resource in the template
List Stack Events
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}/events
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look up
Find Stack Events by Name
GET /v1/{tenant_id}/stacks/{stack_name}/events
Parameters:
stack_name
The name of the stack to look up
Result:
HTTP/1.1 302 Found
Location: http://heat.example.com:8004/v1/{tenant_id}/stacks/{stack_name}/{stack_id}/events
This is a shortcut to go directly to the list of stack events when only the stack name is known.
List Resource Events
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}/resources/{resource_name}/events
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look upresource_name
The name of the resource in the template
Get Event
GET /v1/{tenant_id}/stacks/{stack_name}/{stack_id}/resources/{resource_name}/events/{event_id}
Parameters:
tenant_id
The unique identifier of the tenant or accountstack_name
The name of the stack to look upstack_id
The unique identifier of the stack to look upresource_name
The name of the resource in the templateevent_id
The ID of the event