# Httpapi Plugins

- Adding httpapi plugins
- Using httpapi plugins
- Plugin List

Httpapi plugins tell Ansible how to interact with a remote device’s HTTP-based API and execute tasks on the device.

Each plugin represents a particular dialect of API. Some are platform-specific (Arista eAPI, Cisco NXAPI), while others might be usable on a variety of platforms (RESTCONF).

## Adding httpapi plugins

You can extend Ansible to support other APIs by dropping a custom plugin into the `httpapi_plugins` directory. See Developing httpapi plugins for details.

## Using httpapi plugins

The httpapi plugin to use is determined automatically from the `ansible_network_os` variable.

Most httpapi plugins can operate without configuration. Additional options may be defined by each plugin.

Plugins are self-documenting. Each plugin should document its configuration options.

## Plugin List

You can use `ansible-doc -t httpapi -l` to see the list of available plugins. Use `ansible-doc -t httpapi <plugin name>` to see detailed documentation and examples.

- checkpoint – HttpApi Plugin for Checkpoint devices
- eos – Use eAPI to run command on eos platform
- exos – Use EXOS REST APIs to communicate with EXOS platform
- fortianalyzer – HttpApi Plugin for Fortinet FortiAnalyzer Appliance or VM
- fortimanager – HttpApi Plugin for Fortinet FortiManager Appliance or VM
- fortios – HttpApi Plugin for Fortinet FortiOS Appliance or VM
- ftd – HttpApi Plugin for Cisco ASA Firepower device
- nxos – Use NX-API to run command on nxos platform
- qradar – HttpApi Plugin for IBM QRadar appliances
- restconf – HttpApi Plugin for devices supporting Restconf API
- splunk – HttpApi Plugin for Splunk

See also

Ansible for Network Automation
  An overview of using Ansible to automate networking devices.
Developing network modules
  How to develop network modules.
User Mailing List
  Have a question? Stop by the google group!
irc.freenode.net
  #ansible-network IRC chat channel