Jump to: navigation, search

Difference between revisions of "API Special Interest Group/Current Design/Actions"

(Created page with "= Analysis = The most consistent thing is that all actions use POST. Nova and Trove use /action while Heat uses /actions Parameterless actions in Nova are very inconsistent...")
 
m (EdLeafe moved page API Working Group/Current Design/Actions to API Special Interest Group/Current Design/Actions: +The group changed its name and focus)
 
(No difference)

Latest revision as of 15:40, 14 June 2018

Analysis

The most consistent thing is that all actions use POST.

Nova and Trove use /action while Heat uses /actions

Parameterless actions in Nova are very inconsistent on how no parameters are represented.

There is one case where Server actions (os-instance-actions) have actions as an actual resource.

Current Design

Nova

Server actions

Extensions

POST /v2/​{tenant_id}​/servers/​{server_id}​/action
{
    "some_action": {
        "param1": "value1",
        "param2": "value2"
    }
}

or

{
    "some_action": null
}

or

{
    "some_action": {}
}

or

{
    "some_action": "None"
}

Server actions (os-instance-actions)

GET /v2/​{tenant_id}​/servers/​{server_id}​/os-instance-actions
GET /v2/​{tenant_id}​/servers/​{server_id}​/os-instance-actions/​{action_id}​

Trove

Database instance actions (action)

POST /v1.0/​{accountId}​/instances/​{instanceId}​/action
{
    "some_action": {
        "param1": "value1",
        "param2": "value2"
    }
}

or

{
    "some_action": {}
}

Heat

Stack actions

POST /v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/actions
{
    "some_action": null
}