# openstackclient.api package

## Submodules

## openstackclient.api.api module

Base API Library

class openstackclient.api.api.BaseAPI(session=None, service_type=None, endpoint=None, **kwargs)

  Bases: `KeystoneSession`

  Base API

  create(url, session=None, method=None, **params)

    Create a new resource

    Parameters:

      - url (string) – The API-specific portion of the URL path

      - session (Session) – HTTP client session

      - method (string) – HTTP method (default POST)

  delete(url, session=None, **params)

    Delete a resource

    Parameters:

      - url (string) – The API-specific portion of the URL path

      - session (Session) – HTTP client session

  find(path, value=None, attr=None)

    Find a single resource by name or ID

    Parameters:

      - path (string) – The API-specific portion of the URL path

      - value (string) – search expression

      - attr (string) – name of attribute for secondary search

  find_attr(path, value=None, attr=None, resource=None)

    Find a resource via attribute or ID

    Most APIs return a list wrapped by a dict with the resource name as key. Some APIs (Identity) return a dict when a query string is present and there is one return value. Take steps to unwrap these bodies and return a single dict without any resource wrappers.

    Parameters:

      - path (string) – The API-specific portion of the URL path

      - value (string) – value to search for

      - attr (string) – attribute to use for resource search

      - resource (string) – plural of the object resource name; defaults to path

    For example:

      n = find(netclient, ‘network’, ‘networks’, ‘matrix’)

  find_bulk(path, **kwargs)

    Bulk load and filter locally

    Parameters:

      - path (string) – The API-specific portion of the URL path

      - kwargs – A dict of AVPs to match - logical AND

    Returns:

      list of resource dicts

  find_one(path, **kwargs)

    Find a resource by name or ID

    Parameters:

      path (string) – The API-specific portion of the URL path

    Returns:

      resource dict

  list(path, session=None, body=None, detailed=False, **params)

    Return a list of resources

    GET ${ENDPOINT}/${PATH}?${PARAMS}

    path is often the object’s plural resource type

    Parameters:

      - path (string) – The API-specific portion of the URL path

      - session (Session) – HTTP client session

      - body – data that will be encoded as JSON and passed in POST request (GET will be sent by default)

      - detailed (bool) – Adds ‘/details’ to path for some APIs to return extended attributes

    Returns:

      JSON-decoded response, could be a list or a dict-wrapped-list

class openstackclient.api.api.KeystoneSession(session=None, endpoint=None, **kwargs)

  Bases: `object`

  Wrapper for the Keystone Session

  Restore some requests.session.Session compatibility; keystoneauth1.session.Session.request() has the method and url arguments swapped from the rest of the requests-using world.

## openstackclient.api.compute_v2 module

Compute v2 API Library

A collection of wrappers for deprecated Compute v2 APIs that are not intentionally supported by SDK. Most of these are proxy APIs.

openstackclient.api.compute_v2.create_floating_ip(compute_client, network)

  Create a new floating ip

  https://docs.openstack.org/api-ref/compute/#create-allocate-floating-ip-address

  Parameters:

    network – Name of floating IP pool

  Returns:

    A floating IP object

openstackclient.api.compute_v2.create_network(compute_client, name, subnet, share_subnet=None)

  Create a new network

  https://docs.openstack.org/api-ref/compute/#create-network

  Parameters:

    - compute_client – A compute client

    - name (str) – Network label

    - subnet (int) – Subnet for IPv4 fixed addresses in CIDR notation

    - share_subnet (bool) – Shared subnet between projects

  Returns:

    A network object

openstackclient.api.compute_v2.create_security_group(compute_client, name=None, description=None)

  Create a new security group

  https://docs.openstack.org/api-ref/compute/#create-security-group

  Parameters:

    - compute_client – A compute client

    - name (str) – Security group name

    - description (str) – Security group description

  Returns:

    A security group object

openstackclient.api.compute_v2.create_security_group_rule(compute_client, security_group_id=None, ip_protocol=None, from_port=None, to_port=None, remote_ip=None, remote_group=None)

  Create a new security group rule

  https://docs.openstack.org/api-ref/compute/#create-security-group-rule

  Parameters:

    - compute_client – A compute client

    - security_group_id (str) – Security group ID

    - ip_protocol (str) – IP protocol, ‘tcp’, ‘udp’ or ‘icmp’

    - from_port (int) – Source port

    - to_port (int) – Destination port

    - remote_ip (str) – Source IP address in CIDR notation

    - remote_group (str) – Remote security group

  Returns:

    A security group object

openstackclient.api.compute_v2.delete_floating_ip(compute_client, floating_ip_id)

  Delete a floating IP

  https://docs.openstack.org/api-ref/compute/#delete-deallocate-floating-ip-address

  Parameters:

    floating_ip_id (string) – The floating IP address

  Returns:

    None

openstackclient.api.compute_v2.delete_network(compute_client, network_id)

  Delete a network

  https://docs.openstack.org/api-ref/compute/#delete-network

  Parameters:

    - compute_client – A compute client

    - network_id (string) – The network ID

  Returns:

    None

openstackclient.api.compute_v2.delete_security_group(compute_client, security_group_id=None)

  Delete a security group

  https://docs.openstack.org/api-ref/compute/#delete-security-group

  Parameters:

    - compute_client – A compute client

    - security_group_id (str) – Security group ID

  Returns:

    None

openstackclient.api.compute_v2.delete_security_group_rule(compute_client, security_group_rule_id=None)

  Delete a security group rule

  https://docs.openstack.org/api-ref/compute/#delete-security-group-rule

  Parameters:

    - compute_client – A compute client

    - security_group_rule_id (str) – Security group rule ID

  Returns:

    None

openstackclient.api.compute_v2.find_network(compute_client, name_or_id)

  Find the network for a given name or ID

  https://docs.openstack.org/api-ref/compute/#show-network-details

  Parameters:

    - compute_client – A compute client

    - name_or_id – The name or ID of the network to look up

  Returns:

    A network object

  Raises:

    exception.NotFound – If a matching network could not be found or more than one match was found

openstackclient.api.compute_v2.find_security_group(compute_client, name_or_id)

  Find the security group for a given name or ID

  https://docs.openstack.org/api-ref/compute/#show-security-group-details

  Parameters:

    - compute_client – A compute client

    - name_or_id – The name or ID of the security group to look up

  Returns:

    A security group object

  Raises:

    exception.NotFound – If a matching security group could not be found or more than one match was found

openstackclient.api.compute_v2.get_floating_ip(compute_client, floating_ip_id)

  Get a floating IP

  https://docs.openstack.org/api-ref/compute/#show-floating-ip-address-details

  Parameters:

    floating_ip_id (string) – The floating IP address

  Returns:

    A floating IP object

openstackclient.api.compute_v2.list_floating_ip_pools(compute_client)

  Get all floating IP pools

  https://docs.openstack.org/api-ref/compute/#list-floating-ip-pools

  Parameters:

    compute_client – A compute client

  Returns:

    A list of floating IP pool objects

openstackclient.api.compute_v2.list_floating_ips(compute_client)

  Get all floating IPs

  https://docs.openstack.org/api-ref/compute/#list-floating-ip-addresses

  Returns:

    A list of floating IP objects

openstackclient.api.compute_v2.list_networks(compute_client)

  Get all networks

  https://docs.openstack.org/api-ref/compute/#list-networks

  Parameters:

    compute_client – A compute client

  Returns:

    A list of network objects

openstackclient.api.compute_v2.list_security_groups(compute_client, all_projects=None)

  Get all security groups

  https://docs.openstack.org/api-ref/compute/#list-security-groups

  Parameters:

    - compute_client – A compute client

    - all_projects (bool) – If true, list from all projects

  Returns:

    A list of security group objects

openstackclient.api.compute_v2.update_security_group(compute_client, security_group_id, name=None, description=None)

  Update an existing security group

  https://docs.openstack.org/api-ref/compute/#update-security-group

  Parameters:

    - compute_client – A compute client

    - security_group_id (str) – The ID of the security group to update

    - name (str) – Security group name

    - description (str) – Security group description

  Returns:

    A security group object

## openstackclient.api.image_v1 module

Image v1 API Library

class openstackclient.api.image_v1.APIv1(endpoint=None, **kwargs)

  Bases: `BaseAPI`

  Image v1 API

  image_list(detailed=False, public=False, private=False, **filter)

    Get available images

    Parameters:

      - detailed – Retrieve detailed response from server if True

      - public – Return public images if True

      - private – Return private images if True

    If public and private are both True or both False then all images are returned. Both arguments False is equivalent to no filter and all images are returned. Both arguments True is a filter that includes both public and private images which is the same set as all images.

    http://docs.openstack.org/api/openstack-image-service/1.1/content/requesting-a-list-of-public-vm-images.html http://docs.openstack.org/api/openstack-image-service/1.1/content/requesting-detailed-metadata-on-public-vm-images.html http://docs.openstack.org/api/openstack-image-service/1.1/content/filtering-images-returned-via-get-images-and-get-imagesdetail.html

## openstackclient.api.image_v2 module

Image v2 API Library

class openstackclient.api.image_v2.APIv2(endpoint=None, **kwargs)

  Bases: `APIv1`

  Image v2 API

  image_list(detailed=False, public=False, private=False, community=False, shared=False, **filter)

    Get available images

    can add limit/marker

    Parameters:

      - detailed – For v1 compatibility only, ignored as v2 is always ‘detailed’

      - public – Return public images if True

      - private – Return private images if True

      - community – Return commuity images if True

      - shared – Return shared images if True

    If public, private, community and shared are all True or all False then all images are returned. All arguments False is equivalent to no filter and all images are returned. All arguments True is a filter that includes all public, private, community and shared images which is the same set as all images.

    http://docs.openstack.org/api/openstack-image-service/2.0/content/list-images.html

## openstackclient.api.object_store_v1 module

Object Store v1 API Library

class openstackclient.api.object_store_v1.APIv1(**kwargs)

  Bases: `BaseAPI`

  Object Store v1 API

  account_set(properties)

    Set account properties

    Parameters:

      properties (dict) – properties to add or update for the account

  account_show()

    Show account details

  account_unset(properties)

    Unset account properties

    Parameters:

      properties (dict) – properties to remove from the account

  container_create(container=None, public=False, storage_policy=None)

    Create a container

    Parameters:

      - container (string) – name of container to create

      - public (bool) – Boolean value indicating if the container should be publicly readable. Defaults to False.

      - storage_policy (string) – Name of the a specific storage policy to use. If not specified swift will use its default storage policy.

    Returns:

      dict of returned headers

  container_delete(container=None)

    Delete a container

    Parameters:

      container (string) – name of container to delete

  container_list(full_listing=False, limit=None, marker=None, end_marker=None, prefix=None, **params)

    Get containers in an account

    Parameters:

      - full_listing (boolean) – if True, return a full listing, else returns a max of 10000 listings

      - limit (integer) – query return count limit

      - marker (string) – query marker

      - end_marker (string) – query end_marker

      - prefix (string) – query prefix

    Returns:

      list of container names

  container_save(container=None)

    Save all the content from a container

    Parameters:

      container (string) – name of container to save

  container_set(container, properties)

    Set container properties

    Parameters:

      - container (string) – name of container to modify

      - properties (dict) – properties to add or update for the container

  container_show(container=None)

    Get container details

    Parameters:

      container (string) – name of container to show

    Returns:

      dict of returned headers

  container_unset(container, properties)

    Unset container properties

    Parameters:

      - container (string) – name of container to modify

      - properties (dict) – properties to remove from the container

  object_create(container=None, object=None, name=None)

    Create an object inside a container

    Parameters:

      - container (string) – name of container to store object

      - object (string) – local path to object

      - name (string) – name of object to create

    Returns:

      dict of returned headers

  object_delete(container=None, object=None)

    Delete an object from a container

    Parameters:

      - container (string) – name of container that stores object

      - object (string) – name of object to delete

  object_list(container=None, full_listing=False, limit=None, marker=None, end_marker=None, delimiter=None, prefix=None, **params)

    List objects in a container

    Parameters:

      - container (string) – container name to get a listing for

      - full_listing (boolean) – if True, return a full listing, else returns a max of 10000 listings

      - limit (integer) – query return count limit

      - marker (string) – query marker

      - end_marker (string) – query end_marker

      - prefix (string) – query prefix

      - delimiter (string) – string to delimit the queries on

    Returns:

      a tuple of (response headers, a list of objects) The response headers will be a dict and all header names will be lowercase.

  object_save(container=None, object=None, file=None)

    Save an object stored in a container

    Parameters:

      - container (string) – name of container that stores object

      - object (string) – name of object to save

      - file (string) – local name of object

  object_set(container, object, properties)

    Set object properties

    Parameters:

      - container (string) – container name for object to modify

      - object (string) – name of object to modify

      - properties (dict) – properties to add or update for the container

  object_show(container=None, object=None)

    Get object details

    Parameters:

      - container (string) – container name for object to get

      - object (string) – name of object to get

    Returns:

      dict of object properties

  object_unset(container, object, properties)

    Unset object properties

    Parameters:

      - container (string) – container name for object to modify

      - object (string) – name of object to modify

      - properties (dict) – properties to remove from the object

## openstackclient.api.volume_v2 module

Volume v2 API Library

A collection of wrappers for deprecated Block Storage v2 APIs that are not intentionally supported by SDK.

openstackclient.api.volume_v2.find_consistency_group(compute_client, name_or_id)

  Find the consistency group for a given name or ID

  https://docs.openstack.org/api-ref/block-storage/v3/#show-a-consistency-group-s-details

  Parameters:

    - volume_client – A volume client

    - name_or_id – The name or ID of the consistency group to look up

  Returns:

    A consistency group object

  Raises:

    exception.NotFound – If a matching consistency group could not be found or more than one match was found

## openstackclient.api.volume_v3 module

Volume v3 API Library

A collection of wrappers for deprecated Block Storage v3 APIs that are not intentionally supported by SDK.

openstackclient.api.volume_v3.find_consistency_group(compute_client, name_or_id)

  Find the consistency group for a given name or ID

  https://docs.openstack.org/api-ref/block-storage/v3/#show-a-consistency-group-s-details

  Parameters:

    - volume_client – A volume client

    - name_or_id – The name or ID of the consistency group to look up

  Returns:

    A consistency group object

  Raises:

    exception.NotFound – If a matching consistency group could not be found or more than one match was found

## Module contents

this page last updated: 2026-04-01 09:44:20

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