CISCO FMC
the cisco fmc connector facilitates the automation of security policy management and operational tasks by interfacing with the cisco firepower management center cisco fmc (firepower management center) is a comprehensive management platform that provides centralized control over cisco's security solutions this connector enables swimlane turbine users to automate critical security management tasks such as creating, updating, and deleting network objects and access policies by integrating with cisco fmc, users can streamline security configurations, enforce consistent policies, and rapidly respond to security events without manual intervention limitations none to date supported versions this cisco fmc connector uses the latest version api additional documents prerequisites to utilize the cisco fmc connector with swimlane turbine, ensure you have the following http basic authentication with these parameters url endpoint for the cisco fmc api username your cisco fmc username password your cisco fmc password authentication methods http basic authentication method url the endpoint url for the cisco fmc api username the username for authenticating with the cisco fmc api password the password associated with the provided username capabilities this cisco fmc connector provides the following capabilities create access policy create access rules create network group create network objects delete access policy delete access rule delete network groups delete network objects get all access policies get all access rules get all devices get all network groups get all policies get all usage get a specific access policy by id and so on create access policy create an access control policy create access rules create access rules create network group create a network group create network objects create network objects delete access policy delete the access control policy associated with the specified id delete access rule delete the access rule associated with the specified policy id and rule id delete network groups delete all network groups use filtering to specify which network groups will be deleted delete network objects delete all network objects use filtering to specify which network objects will be deleted get all access policies get the list of all access control policies get all access rules get the list of all access rules associated with the specified policy id get all devices search for devices matching the specified text get all network groups get the list of all network groups get all policies search for policies matching specified text or ip address, including values found in policies get all usage find usage of specified object uuid and type across objects and policies get a specific access policy by id get the access control policy associated with the specified id get a specific access rule by id get the access rule associated with the specified policy id and rule id get a specific network group object by id get the network group associated with the specified id get a specific network object by id get the network object associated with the specified id get all network objects get the list of all network objects update access policy modify the access control policy associated with the specified id update access rules modify all access rules update a network group modify the network group associated with the specified id update a network object modify the network object associated with the specified id configurations cisco fmc basic authentication authenticates using username and password configuration parameters parameter description type required url a url to the target host string required username username string required password password string required verify ssl verify ssl certificate boolean optional http proxy a proxy to route requests through string optional actions create access policy initiates the creation of an access control policy in cisco fmc using the specified domain uuid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies method post input argument name type required description parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid input example {"parameters" {"ticket id" "1234567890"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} create access rules creates new access rules within a specified domain and container in cisco fmc using provided parameters endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{containeruuid}}/accessrules method post input argument name type required description parameters bulk boolean optional boolean indicating whether this is a bulk operation parameters insertafter string optional specifies that the rules will be inserted after the specified rule index if no section or category is specified, the rules will be added to the section or category after the insertion point insertbefore takes precedence over insertafter if both are specified, the insertbefore parameter will apply parameters insertbefore string optional specifies that the rules will be inserted before the specified rule index if no section or category is specified, the rules will be added to the section or category before the insertion point insertbefore takes precedence over insertafter if both are specified, the insertbefore parameter will apply parameters section string optional specifies the section into which the rules will be added if this parameter is not used the section will be the default section only mandatory and default are allowed values if a section is specified, a category cannot be specified parameters category string optional specifies the category into which the rules will be added if a category is specified it must exist or the request will fail if a section is specified, a category cannot be specified parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid path parameters containeruuid string required the container id under which this specific resource is contained input example {"parameters" {"bulk"\ true,"insertafter" "1234567890","insertbefore" "1234567890","section" "1234567890","category" "1234567890","ticket id" "1234567890"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890","containeruuid" "container 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} create network group creates a new network group in cisco fmc using the specified domain uuid required inputs include path parameters and json body endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networkgroups method post input argument name type required description parameters bulk boolean optional indicating whether this is a bulk operation parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid input example {"parameters" {"bulk"\ true,"ticket id" "1234567890"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} create network objects creates network objects in cisco fmc using the specified domain uuid required inputs include path parameters and json body endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networks method post input argument name type required description parameters bulk boolean optional indicating whether this is a bulk operation parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required uuid of the domain to create the network objects in input example {"parameters" {"bulk"\ true,"ticket id" "1234567890"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} delete access policy deletes an access control policy in cisco fmc using the specified domainuuid and objectid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{objectid}} method delete input argument name type required description parameters ignorewarning boolean optional indicating whether to ignore the warning parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid path parameters objectid string required unique identifier of the access policy to delete input example {"parameters" {"ignorewarning"\ true,"ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} delete access rule removes a specified access rule from a policy in cisco fmc using domain, container, and object ids endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{containeruuid}}/accessrules/{{objectid}} method delete input argument name type required description parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid path parameters containeruuid string required the container id under which this specific resource is contained path parameters objectid string required unique identifier of the access rule to delete input example {"parameters" {"ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890","containeruuid" "container 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} delete network groups deletes specified network groups in cisco fmc using the domainuuid for filtering ensure correct selection before deletion endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networkgroups method delete input argument name type required description parameters filter string optional to be used in conjunction with "unusedonly \ true " to search for unused objects and "nameorvalue {nameorvalue}" to search for both name and value "ids \ id1 ,id2, " ids is a comma separated list of rule ids to be deleted parameters bulk boolean optional indicating whether this is a bulk operation parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required uuid of the domain to delete the network groups from input example {"parameters" {"filter" "unusedonly\ true","bulk"\ true,"ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} delete network objects removes specified network objects from cisco fmc using domainuuid for filtering ensure correct selection before deletion endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networks method delete input argument name type required description parameters filter string optional to be used in conjunction with "unusedonly \ true " to search for unused objects and "nameorvalue {nameorvalue}" to search for both name and value "ids \ id1 ,id2, " ids is a comma separated list of rule ids to be deleted parameters bulk boolean optional indicating whether this is a bulk operation parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required uuid of the domain to delete the network objects from input example {"parameters" {"filter" "unusedonly\ true","bulk"\ true,"ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get a specific access policy by id retrieve a specific access control policy from cisco fmc using the provided domainuuid and objectid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{objectid}} method get input argument name type required description parameters ticket id string optional parameters for the get a specific access policy by id action path parameters domainuuid string required parameters for the get a specific access policy by id action path parameters objectid string required parameters for the get a specific access policy by id action input example {"parameters" {"ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get a specific access rule by id retrieve a specific access rule from cisco fmc using the policy id and rule id provided in the path parameters endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{containeruuid}}/accessrules/{{objectid}} method get input argument name type required description parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid path parameters containeruuid string required the container id under which this specific resource is contained path parameters objectid string required unique identifier of the access rule input example {"parameters" {"ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890","containeruuid" "container 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get a specific network group object by id retrieve details of a specific network group object in cisco fmc using the provided domainuuid and objectid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networkgroups/{{objectid}} method get input argument name type required description parameters overridetargetid string optional get the overrides associated with the specified network group object parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid path parameters objectid string required unique identifier of the network group object input example {"parameters" {"overridetargetid" "1234567890","ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get a specific network object by id retrieve details of a specific network object in cisco fmc using the provided domainuuid and objectid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networks/{{objectid}} method get input argument name type required description parameters overridetargetid string optional get the overrides associated with the specified network object parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required uuid of the domain to get the network object from path parameters objectid string required unique identifier of the network object input example {"parameters" {"overridetargetid" "1234567890","ticket id" "1234567890"},"path parameters" {"domainuuid" "domain 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get all access policies retrieve a list of all access control policies from cisco fmc using the specified domainuuid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies method get input argument name type required description parameters name string optional only show the policy matching the specified name parameters filter string optional value is of format (including quotes) "locked {true false}" locked query parameter when set to 'true' returns list of access policies which are locked and when set to 'false' returns policies which are unlocked parameters ticket id string optional uuid of the ticket for tracking the configuration changes parameters offset number optional the offset of the first item to return parameters limit number optional the maximum number of items to return parameters expanded boolean optional if set to true, the get response displays a list of items with additional attributes path parameters domainuuid string required domain uuid input example {"parameters" {"name" "test","filter" "locked\ true","ticket id" "1234567890","offset" 0,"limit" 100,"expanded"\ true},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get all access rules retrieve all access rules for a given policy by specifying domainuuid and containeruuid in cisco fmc endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{containeruuid}}/accessrules method get input argument name type required description parameters filter string optional for getall filter criteria can be specified using the format "name \ filtername ; timerange \ true ;action \ filteraction ;sourcenetworks \ filtervalue1 ,filtervalue2 " supported filter criteria are "name", "timerange", "action", "sourcenetworks", "originalclientip", "destinationnetworks", "sourceports", "destinationports", "sourcezones", "destinationzones", "applications", "sourcedynamicobjects", "destinationdynamicobjects", "vlantags", "comments", "users", "urls", "intrusionpolicy", "sourcesecuritygrouptags", "fts" parameters ticket id string optional uuid of the ticket for tracking the configuration changes parameters offset number optional the offset of the first item to return parameters limit number optional the maximum number of items to return parameters expanded boolean optional if set to true, the get response displays a list of items with additional attributes path parameters domainuuid string required domain uuid path parameters containeruuid string required the container id under which this specific resource is contained input example {"parameters" {"filter" "timerange\ true","ticket id" "1234567890","offset" 0,"limit" 100,"expanded"\ true},"path parameters" {"domainuuid" "domain 1234567890","containeruuid" "container 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get all devices retrieve a list of all devices within a specified domain in cisco fmc, requiring the domainuuid as a path parameter endpoint url /api/fmc config/v1/domain/{{domainuuid}}/search/device method get input argument name type required description parameters filter string optional text used for filtering parameters offset number optional the offset of the first item to return parameters limit number optional the maximum number of items to return parameters expanded boolean optional if set to true, the get response displays a list of items with additional attributes path parameters domainuuid string required domain uuid input example {"parameters" {"filter" "name\ test","offset" 0,"limit" 100,"expanded"\ true},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get all network groups retrieve a list of all network groups from cisco fmc, requiring the domainuuid as a path parameter endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networkgroups method get input argument name type required description parameters filter string optional to be used in conjunction with "unusedonly \ true " to search for unused objects and "nameorvalue {nameorvalue}" to search for both name and value "ids \ id1 ,id2, " ids is a comma separated list of rule ids to be deleted parameters ticket id string optional uuid of the ticket for tracking the configuration changes parameters offset number optional the offset of the first item to return parameters limit number optional the maximum number of items to return parameters expanded boolean optional if set to true, the get response displays a list of items with additional attributes path parameters domainuuid string required domain uuid input example {"parameters" {"filter" "unusedonly\ true","ticket id" "1234567890","offset" 0,"limit" 100,"expanded"\ true},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get all network objects retrieve a complete list of network objects from cisco fmc, requiring the domainuuid as a path parameter endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networks method get input argument name type required description parameters filter string optional to be used in conjunction with "unusedonly \ true " to search for unused objects and "nameorvalue {nameorvalue}" to search for both name and value "ids \ id1 ,id2, " ids is a comma separated list of rule ids to be deleted parameters ticket id string optional uuid of the ticket for tracking the configuration changes parameters offset number optional the offset of the first object to return parameters limit number optional the maximum number of objects to return parameters expanded boolean optional if set to true, the get response displays a list of objects with additional attributes path parameters domainuuid string required uuid of the domain to get the network objects from input example {"parameters" {"filter" "unusedonly\ true","ticket id" "1234567890","offset" 0,"limit" 100,"expanded"\ true},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get all policies retrieve all policies from cisco fmc for a given domain, identified by the domainuuid, including matches for specific text or ip addresses endpoint url /api/fmc config/v1/domain/{{domainuuid}}/search/policy method get input argument name type required description parameters filter string optional text used for filtering parameters offset number optional the offset of the first item to return parameters limit number optional the maximum number of items to return parameters expanded boolean optional if set to true, the get response displays a list of items with additional attributes path parameters domainuuid string required domain uuid input example {"parameters" {"filter" "name\ test","offset" 0,"limit" 100,"expanded"\ true},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} get all usage retrieve usage details of a specified object uuid and type across various objects and policies in cisco fmc endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/operational/usage method get input argument name type required description parameters filter string optional text used for filtering parameters offset number optional the offset of the first item to return parameters limit number optional the maximum number of items to return parameters expanded boolean optional if set to true, the get response displays a list of items with additional attributes path parameters domainuuid string required domain uuid input example {"parameters" {"filter" "name\ test","offset" 0,"limit" 100,"expanded"\ true},"path parameters" {"domainuuid" "domain 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} update a network group modify an existing network group in cisco fmc using the specified domainuuid and objectid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networkgroups/{{objectid}} method put input argument name type required description parameters ticket id string optional uuid of the ticket for tracking the configuration changes parameters action string optional the action to perform on the network group path parameters domainuuid string required domain uuid path parameters objectid string required unique identifier of the network group to update input example {"parameters" {"ticket id" "1234567890","action" "add"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} update a network object modify an existing network object in cisco fmc using the specified domainuuid and objectid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/object/networks/{{objectid}} method put input argument name type required description parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required uuid of the domain to update the network object in path parameters objectid string required unique identifier of the network object to update input example {"parameters" {"ticket id" "1234567890"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} update access policy modify an existing access control policy in cisco fmc using the specified domainuuid and objectid endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{objectid}} method put input argument name type required description parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid path parameters objectid string required unique identifier of the access policy to update input example {"parameters" {"ticket id" "1234567890"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890","objectid" "1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} update access rules update existing access rules within a specified domain and container in cisco fmc using provided path parameters endpoint url /api/fmc config/v1/domain/{{domainuuid}}/policy/accesspolicies/{{containeruuid}}/accessrules method put input argument name type required description parameters bulk boolean optional boolean indicating whether this is a bulk operation parameters partialupdate boolean optional boolean indicating whether to change the entire object or only certain attributes of it the default value is false parameters ticket id string optional uuid of the ticket for tracking the configuration changes path parameters domainuuid string required domain uuid path parameters containeruuid string required the container id under which this specific resource is contained input example {"parameters" {"bulk"\ true,"partialupdate"\ true,"ticket id" "1234567890"},"json body" {},"path parameters" {"domainuuid" "domain 1234567890","containeruuid" "container 1234567890"}} output parameter type description status code number http status code of the response reason string response reason phrase output example {"status code" 200,"response headers" {},"reason" "ok","json body" {}} response headers header description example content type the media type of the resource application/json date the date and time at which the message was originated thu, 01 jan 2024 00 00 00 gmt