A Python package designed to help users of Cisco's FMC interface with its API.
FMCAPI was originally developed by Dax Mickelson ([email protected]). Dax has moved on to other projects but has kindly transferred the ownership of this repo so that we can keep it current!
Provide an "easier to use" way of interacting with the Cisco FMC's API. There is a LOT that has yet to be done in order to make this project have "feature parity" with all that can be done with the FMC's API. That said, what is here works!
The fmcapi is published to PyPI. This means you can install it via pip
(pip3 install fmcapi
)
This is now an installable Python package via pip! I'm heavily developing this code so you might want to issue the
command pip3 install -U fmcapi
to update your installed version.
First install it with: pip3 install fmcapi
Then to use the code best start a "with" statement that creates an instance of the FMC class like this:
with fmcapi.FMC(host='192.168.11.15', username='admin', password='Admin123', autodeploy=False) as fmc:
Then either code away referencing the fmc variable to get to the internal methods of the FMC class or utilize
the various class objects to ease your coding needs.
Building out an example network is in the "example" directory. This isn't fully completed but it should help you get an idea of what is possible.
I recorded a quick "howto" video which can be accessed via: (This is outdated and I need to make new videos.) https://www.youtube.com/watch?v=4NIe3T-HjDw
There is a Docker image stored on DockerHub (dmickels/fmcapi) you can use to create Docker containers with.
The syntax is as follows: docker run -i --name fmcapi --rm --name fmcapi -v 'local directory with scripts':/usr/src/app dmickels/fmcapi:latest