# openstack.compute.v2.flavor

## The Flavor Class

The `Flavor` class inherits from `Resource`.

class openstack.compute.v2.flavor.Flavor(_synchronized=False, connection=None, **attrs)

  The base resource

  Parameters:

    - _synchronized (bool) – This is not intended to be used directly. See `new()` and `existing()`.

    - connection (openstack.connection.Connection) – Reference to the Connection being used. Defaults to None to allow Resource objects to be used without an active Connection, such as in unit tests. Use of `self._connection` in Resource code should protect itself with a check for None.

  resource_key = 'flavor'

    Singular form of key for resource.

  resources_key = 'flavors'

    Plural form of key for resource.

  base_path = '/flavors'

    The base part of the URI for this resource.

  allow_create = True

    Allow create operation for this resource.

  allow_fetch = True

    Allow get operation for this resource.

  allow_delete = True

    Allow delete operation for this resource.

  allow_list = True

    Allow list operation for this resource.

  allow_commit = True

    Allow update operation for this resource.

  name

    The name of this flavor.

  original_name

    The name of this flavor when returned by server list/show

  description

    The description of the flavor.

  disk

    Size of the disk this flavor offers. Type: int

  is_public

    `True` if this is a publicly visible flavor. `False` if this is a private image. Type: bool

  ram

    The amount of RAM (in MB) this flavor offers. Type: int

  vcpus

    The number of virtual CPUs this flavor offers. Type: int

  swap

    Size of the swap partitions.

  ephemeral

    Size of the ephemeral data disk attached to this server. Type: int

  is_disabled

    `True` if this flavor is disabled, `False` if not. Type: bool

  rxtx_factor

    The bandwidth scaling factor this flavor receives on the network.

  extra_specs

    A dictionary of the flavor’s extra-specs key-and-value pairs.

  classmethod list(session, paginated=True, base_path='/flavors/detail', allow_unknown_params=False, *, microversion=None, headers=None, max_items=None, **params)

    This method is a generator which yields resource objects.

    This resource object list generator handles pagination and takes query params for response filtering.

    Parameters:

      - session (`Adapter`) – The session to use for making this request.

      - paginated (bool) – `True` if a GET to this resource returns a paginated series of responses, or `False` if a GET returns only one page of data. When paginated is False only one page of data will be returned regardless of the API’s support of pagination.

      - base_path (str) – Base part of the URI for listing resources, if different from `base_path`.

      - allow_unknown_params (bool) – `True` to accept, but discard unknown query parameters. This allows getting list of ‘filters’ and passing everything known to the server. `False` will result in validation exception when unknown query parameters are passed.

      - microversion (str) – API version to override the negotiated one.

      - headers (dict) – Additional headers to inject into the HTTP request.

      - max_items (int) – The maximum number of items to return. Typically this must be used with `paginated=True`.

      - params (dict) – These keyword arguments are passed through the `_transpose()` method to find if any of them match expected query parameters to be sent in the params argument to `get()`. They are additionally checked against the `base_path` format string to see if any path fragments need to be filled in by the contents of this argument. Parameters supported as filters by the server side are passed in the API call, remaining parameters are applied as filters to the retrieved results.

    Returns:

      A generator of `Resource` objects.

    Raises:

      `MethodNotSupported` if `Resource.allow_list` is not set to `True`.

    Raises:

      `InvalidResourceQuery` if query contains invalid params.

  add_tenant_access(session, tenant)

    Adds flavor access to a tenant and flavor.

    Parameters:

      - session – The session to use for making this request.

      - tenant

    Returns:

      None

  remove_tenant_access(session, tenant)

    Removes flavor access to a tenant and flavor.

    Parameters:

      - session – The session to use for making this request.

      - tenant

    Returns:

      None

  get_access(session)

    Lists tenants who have access to a private flavor

    By default, only administrators can manage private flavor access. A private flavor has `is_public` set to false while a public flavor has `is_public` set to true.

    Parameters:

      session – The session to use for making this request.

    Returns:

      List of dicts with flavor_id and tenant_id attributes

  fetch_extra_specs(session)

    Fetch extra specs of the flavor

    Starting with 2.61 extra specs are returned with the flavor details, before that a separate call is required.

    Parameters:

      session – The session to use for making this request.

    Returns:

      The updated flavor.

  create_extra_specs(session, specs)

    Creates extra specs for a flavor.

    Parameters:

      - session – The session to use for making this request.

      - specs

    Returns:

      The updated flavor.

  get_extra_specs_property(session, prop)

    Get an individual extra spec property.

    Parameters:

      - session – The session to use for making this request.

      - prop – The property to fetch.

    Returns:

      The value of the property if it exists, else `None`.

  update_extra_specs_property(session, prop, val)

    Update an extra spec for a flavor.

    Parameters:

      - session – The session to use for making this request.

      - prop – The property to update.

      - val – The value to update with.

    Returns:

      The updated value of the property.

  delete_extra_specs_property(session, prop)

    Delete an extra spec for a flavor.

    Parameters:

      - session – The session to use for making this request.

      - prop – The property to delete.

    Returns:

      None

## The FlavorDetail Class

The `FlavorDetail` class inherits from `Flavor`.

openstack.compute.v2.flavor.FlavorDetail

  alias of `Flavor`

this page last updated: 2026-01-16 23:06:19

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.