avi_api_session – Avi API Module¶
Synopsis¶
This module can be used for calling any resources defined in Avi REST API. https://avinetworks.com/
This module is useful for invoking HTTP Patch methods and accessing resources that do not have an REST object associated with them.
Parameters¶
Notes¶
Note
For more information on using Ansible to manage Avi Network devices see https://www.ansible.com/ansible-avi-networks.
Examples¶
- name: Get Pool Information using avi_api_session
  avi_api_session:
    controller: "{{ controller }}"
    username: "{{ username }}"
    password: "{{ password }}"
    http_method: get
    path: pool
    params:
      name: "{{ pool_name }}"
    api_version: 16.4
  register: pool_results
- name: Patch Pool with list of servers
  avi_api_session:
    controller: "{{ controller }}"
    username: "{{ username }}"
    password: "{{ password }}"
    http_method: patch
    path: "{{ pool_path }}"
    api_version: 16.4
    data:
      add:
        servers:
          - ip:
              addr: 10.10.10.10
              type: V4
          - ip:
              addr: 20.20.20.20
              type: V4
  register: updated_pool
- name: Fetch Pool metrics bandwidth and connections rate
  avi_api_session:
    controller: "{{ controller }}"
    username: "{{ username }}"
    password: "{{ password }}"
    http_method: get
    path: analytics/metrics/pool
    api_version: 16.4
    params:
      name: "{{ pool_name }}"
      metric_id: l4_server.avg_bandwidth,l4_server.avg_complete_conns
      step: 300
      limit: 10
  register: pool_metrics
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| 
                
                obj
                
                 
                  dictionary
                                       
                                 | 
            success, changed | 
                                         Avi REST resource 
                                     | 
        
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]
Authors¶
Gaurav Rastogi (@grastogi23) <grastogi@avinetworks.com>
Hint
If you notice any issues in this documentation, you can edit this document to improve it.