Note
This inventory plugin is part of the cisco.meraki collection (version 2.21.4).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install cisco.meraki. You need further requirements to be able to use this inventory plugin, see Requirements for details.
To use it in a playbook, specify: cisco.meraki.meraki.
The below requirements are needed on the local controller node that executes this inventory.
Parameter | Comments |
|---|---|
compose dictionary | Create vars from jinja2 expressions. Default: |
groups dictionary | Add hosts to group based on Jinja2 conditionals. Default: |
keyed_groups list / elements=dictionary | Add hosts to group based on the values of a variable. Default: |
|
default_value string added in ansible-core 2.12 |
The default value when the host variable’s value is an empty string. This option is mutually exclusive with |
|
key string |
The key from input dictionary used to generate groups. |
|
parent_group string |
parent group for keyed group. |
|
prefix string |
A keyed group name will start with this prefix. Default: |
|
separator string |
separator used to build the keyed group name. Default: |
|
trailing_separator boolean added in ansible-core 2.12 |
Set this option to This option is mutually exclusive with Choices:
|
leading_separator boolean added in ansible-core 2.11 | Use in conjunction with By default, a keyed group that does not have a prefix or a separator provided will have a name that starts with an underscore. This is because the default prefix is Set this option to If the group name is derived from a mapping the separator is still used to concatenate the items. To not use a separator in the group name at all, set the separator for the keyed group to an empty string instead. Choices:
|
meraki_action_batch_retry_wait_time integer | meraki_action_batch_retry_wait_time (integer), action batch concurrency error retry wait time Default: |
meraki_api_key string | meraki_api_key (string), API key generated in dashboard; can also be set as an environment variable MERAKI_DASHBOARD_API_KEY |
meraki_base_url string | meraki_base_url (string), preceding all endpoint resources Default: |
meraki_be_geo_id string | meraki_be_geo_id (string), optional partner identifier for API usage tracking; can also be set as an environment variable BE_GEO_ID Default: |
meraki_certificate_path string | meraki_certificate_path (string), path for TLS/SSL certificate verification if behind local proxy Default: |
meraki_inherit_logging_config boolean | meraki_inherit_logging_config (boolean), Inherits your own logger instance Choices:
|
meraki_log_file_prefix string | meraki_log_file_prefix (string), log file name appended with date and timestamp Default: |
meraki_log_path string | log_path (string), path to output log; by default, working directory of script if not specified Default: |
meraki_maximum_retries integer | meraki_maximum_retries (integer), retry up to this many times when encountering 429s or other server-side errors Default: |
meraki_nginx_429_retry_wait_time integer | meraki_nginx_429_retry_wait_time (integer), Nginx 429 retry wait time Default: |
meraki_org_id string / required | The organization ID to fetch the networks and devices from. |
meraki_output_log boolean | meraki_output_log (boolean), create an output log file? Choices:
|
meraki_print_console boolean | meraki_print_console (boolean), print logging output to console? Choices:
|
meraki_requests_proxy string | meraki_requests_proxy (string), proxy server and port, if needed, for HTTPS Default: |
meraki_retry_4xx_error boolean | meraki_retry_4xx_error (boolean), retry if encountering other 4XX error (besides 429)? Choices:
|
meraki_retry_4xx_error_wait_time integer | meraki_retry_4xx_error_wait_time (integer), other 4XX error retry wait time Default: |
meraki_simulate boolean | meraki_simulate (boolean), simulate POST/PUT/DELETE calls to prevent changes? Choices:
|
meraki_single_request_timeout integer | meraki_single_request_timeout (integer), maximum number of seconds for each API call Default: |
meraki_suppress_logging boolean | meraki_suppress_logging (boolean), disable all logging? you’re on your own then! Choices:
|
meraki_use_iterator_for_get_pages boolean | meraki_use_iterator_for_get_pages (boolean), list* methods will return an iterator with each object instead of a complete list with all items Choices:
|
meraki_wait_on_rate_limit boolean | meraki_wait_on_rate_limit (boolean), retry if 429 rate limit error encountered? Choices:
|
strict boolean | If Since it is possible to use facts in the expressions they might not always be available and we ignore those errors by default. Choices:
|
use_extra_vars boolean added in ansible-core 2.11 | Merge extra vars into the available variables for composition (highest precedence). Choices:
Configuration:
|
Note
Configuration entries listed above for each entry type (Ansible variable, environment variable, and so on) 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. The entry types are also ordered by precedence from low to high priority order. For example, an ansible.cfg entry (further up in the list) is overwritten by an Ansible variable (further down in the list).
# cisco_meraki.yml
---
plugin: cisco.meraki.meraki
meraki_api_key: "<enter Meraki API key or set the MERAKI_DASHBOARD_API_KEY env var>"
meraki_org_id: "<enter Meraki Org ID>"
keyed_groups:
# group devices based on network ID
- prefix: meraki_network_id
key: network_id
# group devices based on network name
- prefix: meraki_network
key: network
# group devices based on device type
- prefix: meraki_device_type
key: device_type
# group devices based on meraki device tag
- prefix: meraki_tag
key: tags
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cisco/meraki/meraki_inventory.html