> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.itential.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.itential.com/_mcp/server.

# Inventory integration variables

> Variables required by Itential Gateway to create inventory devices.

## Integration variables to create inventory devices

The chart below describes the variables required by Itential Gateway to create an inventory device.

* For Gateway information regarding parameters, data types, etc., see the `{automation gateway url}/app/apidocs` endpoint for the specific inventory or integration in question.

| Integration   | Required variables                                                                                    | Recommended variables                                                                                     |
| ------------- | ----------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| Ansible       | None                                                                                                  | ansible\_host, ansible\_port, ansible\_user, ansible\_password, ansible\_connection, ansible\_network\_os |
| HTTP Requests | protocol, base\_url                                                                                   | port, username, password                                                                                  |
| NETCONF       | host, username, password, platform                                                                    | port, timeout                                                                                             |
| Netmiko       | host, device\_type                                                                                    | port, username, password                                                                                  |
| Nornir        | None                                                                                                  | hostname, port, username, password, platform                                                              |
| Scripts       | See [Ansible](https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html) documentation. | See [Ansible](https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html) documentation.     |
| Terraform     | Not applicable                                                                                        | Not applicable                                                                                            |

## Inventory documentation

For inventory questions related to integrations such as Ansible or Nornir, see the official guides to learn how to effectively create that type of inventory.

* [Ansible Inventory](https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html)
* [Nornir Inventory](https://nornir.readthedocs.io/en/3.0.0/tutorial/inventory.html)

For inventory questions related to Gateway, you can refer to the built-in Swagger documentation by hovering the cursor over the menu icon to the right of **Automation Gateway** and clicking on the **API Documentation - 2.0** link.

![](/_fern-img/5052e0359db649cf29e829c2fa80ff044d9aed24e78b08c9fefd08f3e1b3286b.webp)

## Create internal inventory devices

To create a native (internal) device inventory via GUI or API:

#### Create a new device

Click the plus sign (**"+"**) in the top left corner to create a new device.

#### Select the device option

Select the appropriate device option from the dropdown list and click the **Create** button.

![](/_fern-img/919712e2a41d60b0424dd341a72056ef4baa689470770d7b4a1a78ef179763fd.webp)

#### Configure device variables

Configure the device's variables, as needed. Click **Create**.

![](/_fern-img/392d0221cbadee96e9ef818422e4671aa045b66459e92e8f8026f51f7709ab9f.webp)

#### Execute native methods via API

If via API, use the internal device name (host) to execute native methods (depending on modules).

![](/_fern-img/5b0abcfef0f34aef1325c289de9785df4e6b4d70bc9a5f27de41bee1cbc17a7d.webp)

## Configuration to connect internal inventory devices

The **internal inventory devices supported** are: Aruba, ASA, BigIP, EOS, IOS, IOSXR, Junos, NXOS, SROS.

These are the minimum required variables used to connect a device. The `ansible_network_os` must be one of the supported inventory devices in the list above, and `ansible_connection` is set to `network_cli`.

```json
{
  "ansible_network_os": "ios",
  "ansible_connection": "network_cli",
  "ansible_user": "USERNAME",
  "ansible_password": "PASSWORD",
  "ansible_host": "172.20.100.110"
}
```

## Configuration to connect external inventory devices

For devices that are not supported, a Netmiko device is created. The following configurations are used.

Set the `ansible_connection` variable to `local`.

```json
{
  "ansible_connection": "local",
  "ansible_host": "172.20.100.110",
  "netmiko_device_type": "fortinet",
  "ansible_password": "PASSWORD",
  "ansible_user": "USERNAME"
}
```

Set the `provider` variable to the following config:

```json
{
  "ansible_connection": "local",
  "provider": {
    "host": "172.20.100.110",
    "device_type": "fortinet",
    "username": "USERNAME",
    "password": "PASSWORD"
  }
}
```

If the connection to a device should fail, test the device connection and check for errors in the log.