openapi: 3.1.0
info:
title: Turbonomic REST Actions Policies API
description: The IBM Turbonomic REST API provides programmatic access to the Turbonomic Application Resource Management (ARM) platform. It enables automation of resource optimization actions, querying of entities (VMs, containers, applications, storage), management of markets and policies, retrieval of statistics and analytics, group management, template administration, and topology exploration across hybrid cloud environments.
version: v3
contact:
name: IBM Turbonomic Support
url: https://www.ibm.com/mysupport/s/topic/0TO0z000000ZnCCGA0/turbonomic-application-resource-management
license:
name: IBM Terms of Service
url: https://www.ibm.com/terms
servers:
- url: https://{turbonomic_host}/api/v3
description: Turbonomic Server
variables:
turbonomic_host:
description: The hostname or IP address of the Turbonomic server
default: turbonomic.example.com
tags:
- name: Policies
description: Manage automation and placement policies
paths:
/policies:
get:
operationId: getPolicies
summary: Get All Policies
description: Retrieve all automation and placement policies defined in Turbonomic.
tags:
- Policies
security:
- bearerAuth: []
responses:
'200':
description: List of policies
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Policy'
post:
operationId: createPolicy
summary: Create Policy
description: Create a new automation or placement policy.
tags:
- Policies
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyInput'
responses:
'200':
description: Created policy
content:
application/json:
schema:
$ref: '#/components/schemas/Policy'
/policies/{uuid}:
get:
operationId: getPolicyByUuid
summary: Get Policy By UUID
description: Retrieve a specific policy by its unique identifier.
tags:
- Policies
security:
- bearerAuth: []
parameters:
- name: uuid
in: path
required: true
description: The unique identifier of the policy
schema:
type: string
responses:
'200':
description: Policy details
content:
application/json:
schema:
$ref: '#/components/schemas/Policy'
'404':
description: Policy not found
put:
operationId: updatePolicy
summary: Update Policy
description: Update an existing policy.
tags:
- Policies
security:
- bearerAuth: []
parameters:
- name: uuid
in: path
required: true
description: The unique identifier of the policy
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyInput'
responses:
'200':
description: Updated policy
content:
application/json:
schema:
$ref: '#/components/schemas/Policy'
delete:
operationId: deletePolicy
summary: Delete Policy
description: Delete a policy.
tags:
- Policies
security:
- bearerAuth: []
parameters:
- name: uuid
in: path
required: true
description: The unique identifier of the policy
schema:
type: string
responses:
'200':
description: Policy deleted successfully
components:
schemas:
PolicyInput:
type: object
description: Input for creating or updating a policy
required:
- displayName
properties:
displayName:
type: string
description: Human-readable name of the policy
policyType:
type: string
description: Type of policy
enabled:
type: boolean
description: Whether the policy should be active
Policy:
type: object
description: An automation or placement policy in Turbonomic
properties:
uuid:
type: string
description: Unique identifier of the policy
displayName:
type: string
description: Human-readable name of the policy
policyType:
type: string
description: Type of policy
enabled:
type: boolean
description: Whether the policy is active
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: Bearer token obtained by calling POST /api/v3/login with username and password. Include in the Authorization header as 'Bearer {token}'.
externalDocs:
description: Turbonomic REST API Reference
url: https://www.ibm.com/docs/en/tarm/8.19.3?topic=reference-turbonomic-rest-api-endpoints