Once Itential Automation Gateway is installed and configured, use the information in this guide to change the default password, get started with the API, and set your security keys.
- Default User Name:
admin@itential
. - Default Password:
admin
.
Change Default Password
You must first login to obtain the authorization token and then paste the token into the change password curl
command.
An example curl
script is provided below.
$ curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ "password": "admin", "username": "admin@itential" }' 'http://localhost:8083/api/v2.0/login'
{"token": "NTAuMjczOTA4MTYwNDM5OTY2"}
curl -X POST --header 'Authorization: <COPY TOKEN VALUE FROM PREVIOUS CMD HERE>' --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{
"new_password": "super-secure-password",
"old_password": "admin"
}' 'http://localhost:8083/api/v2.0/account/admin%40itential/change_password'
Login to Automation Gateway
Login to the Automation Gateway UI running at https://servername:8443.
- The username will be
admin@itential
. - The password will be the
<super-secure-password>
that was selected in the previous step.
Getting Started with the API
For a complete API reference, use the API Documentation link in the Automation Gateway UI. This page allows you to browse and interact with the Automation Gateway API.
Add a Device
If an existing Ansible Inventory is not already configured, you can add a new device to Automation Gateway using the API. The following is an example curl
script to add a device.
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ "password": "admin", "username": "admin@itential" }' 'http://localhost:8083/api/v2.0/login'
{"token": "NTAuMjczOTA4MTYwNDM5OTY2"}
curl -X POST --header 'Authorization: <COPY TOKEN VALUE FROM PREVIOUS CMD HERE>' --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{
"name": "ios02",
"variables": {
"ansible_host": "192.168.32.79",
"ansible_port": 22,
"ansible_user": "ios-user",
"ansible_ssh_private_key_file": "/path/to/key",
"ansible_network_os": "ios",
"ansible_connection": "network_cli"
}
}' 'https://localhost:8083/api/v2.0/devices'
Get a Device List
Use the following command to get a list of managed devices.
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ "password": "admin", "username": "admin@itential" }' 'http://localhost:8083/api/v2.0/login'
{"token": "NTAuMjczOTA4MTYwNDM5OTY2"}
curl -X GET --header 'Authorization: <COPY TOKEN VALUE FROM PREVIOUS CMD HERE>' --header 'Accept: application/json' 'http://localhost:8083/api/v2.0/devices'
Get Configuration for a Device
Use the following command to retrieve the configuration for a managed device.
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ "password": "admin", "username": "admin@itential" }' 'http://localhost:8083/api/v2.0/login'
{"token": "NTAuMjczOTA4MTYwNDM5OTY2"}
curl -X POST --header 'Authorization: <COPY TOKEN VALUE FROM PREVIOUS CMD HERE>' --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{
"hosts": [ "ios01" ],
"template": "ios_config"
}' 'https://localhost:8083/api/v2.0/getConfig'
Run a Command on a Device
Use the following to run a command on a managed device.
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ "password": "admin", "username": "admin@itential" }' 'http://localhost:8083/api/v2.0/login'
{"token": "NTAuMjczOTA4MTYwNDM5OTY2"}
curl -X POST --header 'Authorization: <COPY TOKEN VALUE FROM PREVIOUS CMD HERE>' --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{
"command": [ "show version" ],
"hosts": [ "ios01" ],
"template": "ios_command"
}' 'https://localhost:8083/api/v2.0/runCommand'