- AnsibleFest
- Products
- Community
- Webinars & Training
- Blog

Documentation

# avi – Look up `Avi` objects

New in version 2.9.

- Synopsis

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- Given an object_type, fetch all the objects of that type or fetch the specific object that matches the name/uuid given via options.

- For single object lookup. If you want the output to be a list, you may want to pass option wantlist=True to the plugin.

## Parameters

Parameter | Choices/Defaults | Configuration | Comments
--- | --- | --- | ---
api_context dictionary added in 2.5 |  |  | Avi API context that includes current session ID and CSRF Token. This allows user to perform single login and re-use the session.
api_version string | Default: "16.4.4" |  | Avi API version of to use for Avi API and objects.
avi_credentials dictionary added in 2.5 |  |  | Avi Credentials dictionary which can be used in lieu of enumerating Avi Controller login details.
| api_version - | Default: "16.4.4" |  | Avi controller version
| controller - |  |  | Avi controller IP or SQDN
| csrftoken - |  |  | Avi controller API csrftoken to reuse existing session with session id
| password - |  |  | Avi controller password
| port - |  |  | Avi controller port
| session_id - |  |  | Avi controller API session id to reuse existing session with csrftoken
| tenant - | Default: "admin" |  | Avi controller tenant
| tenant_uuid - |  |  | Avi controller tenant UUID
| timeout - | Default: 300 |  | Avi controller request timeout
| token - |  |  | Avi controller API token
| username - |  |  | Avi controller username
avi_disable_session_cache_as_fact boolean added in 2.6 | Choices: no yes |  | It disables avi session information to be cached as a fact.
controller string | Default: "" |  | IP address or hostname of the controller. The default value is the environment variable `AVI_CONTROLLER`.
obj_name - |  |  | name of the object to query
obj_type - / required |  |  | type of object to query
obj_uuid - |  |  | UUID of the object to query
password string | Default: "" |  | Password of Avi user in Avi controller. The default value is the environment variable `AVI_PASSWORD`.
tenant string | Default: "admin" |  | Name of tenant used for all Avi API calls and context of object.
tenant_uuid string | Default: "" |  | UUID of tenant used for all Avi API calls and context of object.
username string | Default: "" |  | Username used for accessing Avi controller. The default value is the environment variable `AVI_USERNAME`.

## Notes

Note

- For more information on using Ansible to manage Avi Network devices see https://www.ansible.com/ansible-avi-networks.

## Examples

    # Lookup query for all the objects of a specific type.
    - debug: msg="{{ lookup('avi', avi_credentials=avi_credentials, obj_type='virtualservice') }}"
    # Lookup query for an object with the given name and type.
    - debug: msg="{{ lookup('avi', avi_credentials=avi_credentials, obj_name='vs1', obj_type='virtualservice', wantlist=True) }}"
    # Lookup query for an object with the given UUID and type.
    - debug: msg="{{ lookup('avi', obj_uuid='virtualservice-5c0e183a-690a-45d8-8d6f-88c30a52550d', obj_type='virtualservice') }}"
    # We can replace lookup with query function to always the get the output as list.
    # This is helpful for looping.
    - debug: msg="{{ query('avi', obj_uuid='virtualservice-5c0e183a-690a-45d8-8d6f-88c30a52550d', obj_type='virtualservice') }}"

## Return Values

Common return values are documented here, the following are the fields unique to this lookup:

Key | Returned | Description
--- | --- | ---
_raw list / elements=dictionary |  | One ore more objects returned from ``Avi`` API.

## Status

- This lookup is not guaranteed to have a backwards compatible interface. [preview]

- This lookup is maintained by the Ansible Community. [community]

### Authors

- Sandeep Bandi <sandeepb@avinetworks.com>

Hint

If you notice any issues in this documentation, you can edit this document to improve it.

Hint

Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.