fmgr_generic – The Generic FortiManager module.
Added in version 2.0.0.
Synopsis
This module is able to configure a FortiManager device.
Examples include all parameters and values need to be adjusted to data sources before usage.
Tested with FortiManager v6.x and v7.x.
Requirements
The below requirements are needed on the host that executes this module.
ansible>=2.9.0
Parameters
- enable_log - Enable/Disable logging for task. type: bool required: false default: False
- forticloud_access_token - Access token of forticloud managed API users, this option is available with FortiManager later than 6.4.0. type: str required: false
- rc_succeeded - The rc codes list with which the conditions to succeed will be overriden. type: list required: false
- rc_failed - The rc codes list with which the conditions to fail will be overriden. type: list required: false
- workspace_locking_adom - Acquire the workspace lock if FortiManager is running in workspace mode. type: str required: false choices: global, custom adom including root
- workspace_locking_timeout - The maximum time in seconds to wait for other users to release workspace lock. type: integer required: false default: 300
- method - The method of API request, grouped with parameter params. type: str required: false choices: [add, set, update, get, delete, exec, move, clone]
- params - The parameter body of API request, grouped with parameter method. type: list required: false
- json - The raw json formatted string, it must contain method and params.type: str required: false
Notes
Note
Running in workspace locking mode is supported in this FortiManager module, the top level parameters workspace_locking_adom and workspace_locking_timeout help do the work.
Full API reference: https://fndn.fortinet.net/index.php?/fortiapi/5-fortimanager
When all three parameters are given at the same time, json has higher priority over method¶ms.
Normally, running one module can fail when a non-zero rc is returned. you can also override the conditions to fail or succeed with parameters rc_failed and rc_succeeded
Examples
- name: Generic module
hosts: fortimanagers
connection: httpapi
vars:
adom: "root"
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_httpapi_port: 443
tasks:
- name: Login a user
fortinet.fortimanager.fmgr_generic:
method: "exec"
params:
- url: "sys/login/user"
data:
- user: "APIUser"
passwd: "Fortinet1!e"
- name: Login another user
fortinet.fortimanager.fmgr_generic:
json: |
{
"method":"exec",
"params":[
{
"url":"sys/login/user",
"data":[
{
"user":"APIUser",
"passwd":"Fortinet1!"
}
]
}
]
}
Return Values
Common return values are documented: https://docs.ansible.com/ansible/latest/reference_appendices/common_return_values.html#common-return-values, the following are the fields unique to this module:
- request_url - The full url requested returned: always type: str sample: /sys/login/user
- response_code - The status of api request returned: always type: int sample: 0
- response_message - The descriptive message of the api response returned: always type: str sample: OK
- response_data - The data body of the api response returned: optional type: list or dict
Status
This module is not guaranteed to have a backwards compatible interface.