Actions requests

Action requests handle acceptance, rejection, filtering, and exploration of actions on your Turbonomic appliance.

If one or more of the entities in the scope of your request no longer exists in the topology, the ActionApiDTO for such entities will contain minimal information about the entities.

Getting a specified action

Gets the action details, including the creation time and target entity information, for a specified action UUID.

Example: GET https://10.10.10.10/api/v3/actions/_6QsKkaNWEeiYWYj--U8W5g/details

Response: The full ActionApiDTO for the requested action:


{
  "links":[
    {
      "rel":"self",
      "href":"https://10.10.10.10/api/v3/actions/_6QsKkaNWEeiYWYj--U8W5g"
    },
    {
      "rel":"self",
      "href":"https://10.10.10.10/api/v3/actions/2218532354592"
    }
  ],
  "uuid":"_6QsKkaNWEeiYWYj--U8W5g",
  "createTime":"2018-08-19T07:40:57-04:00",
  "actionType":"MOVE",
  "actionState":"PENDING_ACCEPT",
  "actionMode":"MANUAL",
  "details":"Move VirtualMachine Jboss-EAP-10.203 from dc17-host-01.mycorp.com to dc17-host-02.mycorp.com",
  "importance":7.4150376,
  "target":{
    "uuid":"421d8db4-3fc6-440b-0575-11383c020c6c",
    "displayName":"Jboss-EAP-10.203",
    "className":"VirtualMachine",
    "aspects":{
      "virtualMachineAspect":{
        "os":"CentOS 4/5/6/7 (64-bit)",
        "connectedNetworks":[
          {
            "uuid":"34f9f5364cd843aa1fe99900621ee3b51a7dc6e5",
            "displayName":"VM Network"
          }
        ],
        "numVCPUs":2,
        "ebsOptimized":false
      }
    },
    "environmentType":"ONPREM"
  },
  "currentEntity":{
    "uuid":"34313836-3333-5553-4537-33364e385146",
    "displayName":"dc17-host-01.mycorp.com",
    "className":"PhysicalMachine",
    "environmentType":"ONPREM"
  },
  "newEntity":{
    "uuid":"34313836-3333-5553-4537-33394e43424e",
    "displayName":"dc17-host-02.mycorp.com",
    "className":"PhysicalMachine",
    "environmentType":"ONPREM"
  },
  "risk":{
    "uuid":"_CizZoKN2EeiYWYj--U8W5g",
    "subCategory":"Efficiency Improvement",
    "description":"dc17-host-01.mycorp.com can be suspended for efficiency",
    "severity":"MINOR",
    "importance":0
  },
  "actionID":2218532354592
}	
			

Getting a filtered list of actions

Gets a list of actions, given a scope UUID and filtered by an ActionApiInputDTO using one or more of the following criteria:

  • actionModeList

    • DISABLED:

      Do not recommend or perform the action. When you disable an action, the user interface will no longer display actions of that type.

    • RECOMMENDED:

      Recommend the action so a user can execute it via the given hypervisor or by other external means

    • MANUAL:

      Recommend the action, and provide the option to execute that action through the Turbonomic user interface or an /actions API request.

    • AUTOMATED:

      You have directed Turbonomic to execute the action automatically.

    • COLLECTION (UNUSED):

      Legacy action mode, no longer used.

  • actionStateList

    • DISABLED:

      An action whose policy has been disabled.

    • RECOMMEND:

      An action that cannot be automated due to policy settings or must be executed outside the system, such as the purchase of hardware.

    • PENDING_ACCEPT:

      When the action mode is set to manual, a recommended action that has not been accepted or cleared.

    • ACCEPTED:

      An action that has been accepted, but is not yet in progress.

    • IN_PROGRESS:

      An action that is being executed.

    • SUCCEEDED:

      An action that was accepted and completed successfully.

    • FAILED:

      An action that was accepted and did not complete successfully.

    • REJECTED:

      When the action mode is set to manual, an action that has been rejected by the user.

    • CLEARED:

      When the action mode is set to manual, an action that is no longer recommended by the market.

    • ACCOUNTING:

      For cloud entities, an action to resize in order to use a different instance template.

    • QUEUED:

      When more than 10 actions are to be executed for a single target, Turbonomic will place the 11th and all subsequent actions into a QUEUED state, and they will execute as the previous actions complete.

  • actionTypeList

    • START:

      Start an entity, and add it to the Turbonomic market.

    • MOVE:

      Move an entity from one provider to another. For example, moving a VM between hosts, or a datastore between disk arrays.

    • SUSPEND:

      Suspend the entity to exclude its capacity from your environment. Suspend does not remove the entity from your environment, but the market does not include the entity in its analysis. Based on market conditions, analysis can recommend restarting suspended entities, which includes them in market analysis once again.

    • ADD PROVIDER:

      This is equivalent to the START action, but for storage entities.

    • CHANGE:

      Move a virtual machine's storage between datastores.

    • PROVISION:

      Add capacity to your environment.

    • RECONFIGURE:

      Analysis recommends this when a VM is not able to correct a misconfiguration via another type of action. For example, analysis can recommend a RECONFIGURE action when a placement policy requires a VM to move to a host on a particular cluster, but cross-cluster moves are not permitted.

    • DELETE:

      This is equivalent to the SUSPEND action, but for storage entities.

    • RESERVE_ON_PM:

      When using the reservation functionality, this is the action to reserve the resources of a VM on a particular host.

    • RESERVE_ON_DS:

      When using the reservation functionality, this is the action to reserve the resources of a VM on a particular datastore.

    • RESIZE_FOR_EFFICIENCY:

      A resize that reduces the capacity of a commodity, such as vCPU, or vMEM.

    • RESIZE_FOR_PERFORMANCE:

      A resize that increases the capacity of a commodity, such as vCPU, or vMEM.

  • cleared

    Default: false.

    When true, actions that were removed from the action list before being executed will be returned.

  • costType

    • Saving

      An action that will decrease cloud spending.

    • Investment

      An action that will increase cloud spending.

  • cumulative

    Default: false.

    When true, shows the savings for each action in a scope as a cumulative total, rather than showing the savings for individual actions.

  • environmentType

    • ONPREM:

      Returns only actions related to entities that are part of your on-prem environment.

    • CLOUD:

      Returns only actions related to entities that are part of your cloud environment.

  • groupBy

    You may group the actions returned by the following criteria: [actionModes, actionStates, actionTypes, risk, riskSeverity, riskSubCategory]

  • hasReservedInstance

    Default: false.

    When true, only actions that are related to reserved instances will be returned.

  • relatedEntityTypes

    Returns only actions related to entities of these types within the scope. For example, if your scope is a virtual datacenter and you specify VirtualMachine as a related entity type, the request will include only those actions related to VMs in the specified virtual datacenter.

    Choose from the following entity types: [ Datacenter, PhysicalMachine, VirtualMachine, Storage, Application, Chassis, DiskArray, IOModule, StorageControl, Switch, VirtualDataCenter, VPod, DPod, Container, Database, DatabaseServerContainer, LogicalPool ]

  • riskSeverityList

    Returns only actions of the given severities: [ Unknown, Normal, Minor, Major, Critical ]

  • riskSubCategoryList

  • returns only actions of the given subcategories: [ Performance Assurance, Efficiency Improvement, Prevention, Compliance ]

The following commodities may be returned as the related commodity for an action:

  • Access
  • ActionPermit
  • ActiveSessions
  • ApplicationCommodity
  • Ballooning
  • Biclique
  • BufferCommodity
  • BurstBalance
  • CPU
  • CPUAllocation
  • CPUProvisioned
  • ClusterCommodity
  • CollectionTime
  • Connection
  • Cooling
  • Coupon
  • CrossCloudMoveSvc
  • CrossClusterMoveSvc
  • DBCacheHitRate
  • DBMem
  • DISK_ARRAY_ACCESS
  • DSPMAccessCommodity
  • DataCenterCommodity
  • DatastoreCommodity
  • DrsSegmentationCommodity
  • Extent
  • Flow
  • FlowAllocation
  • HACommodity
  • HOST_LUN_ACCESS
  • Heap
  • HotStorage
  • IOThroughput
  • ImageCPU
  • ImageMem
  • ImageStorage
  • InstanceDiskSize
  • InstanceDiskType
  • LICENSE_ACCESS
  • LicenseCommodity
  • Mem
  • MemAllocation
  • MemProvisioned
  • Move
  • NetThroughput
  • NetworkCommodity
  • NetworkInterfaceCount
  • NetworkPolicy
  • NumDisk
  • NumberConsumers
  • NumberConsumersPM
  • NumberConsumersStorage
  • PORT_CHANNEL
  • PoolCPU
  • PoolMem
  • PoolStorage
  • Power
  • ProcessingUnits
  • Q1VCPU
  • Q2VCPU
  • Q3VCPU
  • Q4VCPU
  • Q5VCPU
  • Q6VCPU
  • Q7VCPU
  • Q8VCPU
  • Q16VCPU
  • Q32VCPU
  • Q64VCPU
  • QNVCPU
  • ResponseTime
  • RightSizeDown
  • RightSizeSVC
  • RightSizeUp
  • SLACommodity
  • SameClusterMoveSvc
  • SegmentationCommodity
  • ServiceLevelCluster
  • SoftwareLicenseCommodity
  • Space
  • Storage
  • StorageAccess
  • StorageAllocation
  • StorageAmount
  • StorageClusterCommodity
  • StorageLatency
  • StorageProvisioned
  • Swapping
  • TemplateAccess
  • TenancyAccess
  • Threads
  • Transaction
  • TransactionLog
  • Unknown
  • VAppAccess
  • VCPU
  • VCPULimitQuota
  • VCPURequest
  • VCPURequestQuota
  • VDCCommodity
  • VMPMAccessCommodity
  • VMem
  • VMemLimitQuota
  • VMemRequest
  • VMemRequestQuota
  • VStorage
  • Zone

Example: POST https://10.10.10.10/api/v3/actions

Example input: In this example, a list of actions that meet the following criteria will be returned and grouped by the actionMode of the action:
  • Is in state PENDING_ACCEPT

  • Is part of an on-prem environment

  • Is an action for a virtual machine

  • Is an action generated by the Turbonomic real-time market


{
  "actionInput":{
    "actionStateList":[
      "PENDING_ACCEPT"
    ],
    "environmentType":"ONPREM",
    "groupBy":[
      "actionModes"
    ]
  },
  "relatedType":"VirtualMachine",
  "scopes":[
    "Market"
  ]
}
			

Response: A list of ActionApiDTOs that meet the specified criteria.

For information about filtering actions within a specified time period, see Filtering Actions by Start and End Time in Actions endpoint tips.

Accepting or rejecting a specified action

This request accepts or rejects an action with the specified UUID, and takes the following parameters:

  • action_UUID (Required)

    The UUID of the action.

  • accept (Required)

    When true, accepts the action. When false, rejects the action.

Example: POST https://10.10.10.10/api/v3/actions/_QJCzNd3JEeij-LI4LMEROw?accept=false

Response: true, if the action was accepted.