Please note that gami is under active development.
In addition to GAM (below) this package adds the following features:
- Command line utility "gami" is installed into your path
- Bash complete available
- Installable into a virtualenv
- Import a helper function that can run exact same gam commands listed in wiki. No more piping out to the system
- Incorporates click and gets some bonus free-stuff, like automated help system, and python3 compatibility (although we have to change the print functions into click.echo calls, to start)
- Install into a Virtualenv
Clone me into a new directory, after that, I recommend first installing pyenv and pyenv-virtualenv to install into a virtualenv. This is required to work, and also is best practice with Python.
cd <path_to_parent_folder>
git clone <url>
cd gami
pyenv virtualenv gami
pyenv local gami
pip install -e .
That's it. Now you have gami as a commande line. When gami updates, just do this to get the latest:
cd <path_to_gami>
git pull origin master
From inside the directory, run python gam.py info domain and you'll get the usual rigamorle. You have to do this first before being able to use gami or the helper function
cd <path_to_gami>
python gam.py
And follow the usual rigamarole.
2b) Get yourself bash complete Nice, yes?
cd <path_to_gami>
echo "source "`pwd`/bash-complete.sh >> ~/.bash_profile
gami --help
All the functions have help too.
You can use gami from within your python code.
from gami.utils import run_gami_from_string
run_gami_from_string('gam info domain') # any regular gam command
That function returns a python dictionary
It provides a more modern cli interface, but manages to sort of "bootstrap" the old code, so nothing is broken, you can still use the same old commands in the same old way, but you can also opt-in on these other features.
Most of the magic happens in cli/cli.py, and most of the heavy lifing is done with click.
GAM is a free, open source command line tool for Google Apps Administrators to efficiently manage domain and user settings quickly and easily. GAM has support for many features, such as
- creating, deleting, and updating users, aliases, groups, organizations, and resource calendars
- modifying user email settings such as IMAP, signatures, vacation messages, profile sharing, email forwarding, send as address, labels, and features.
- delegating mailboxes and calendars to other users
- modifying calendar access rights for users and resource calendars.
- auditing user accounts and mailboes
- monitoring incoming and outgoing email
- generating detailed reports for users, groups, resources, account activity, email clients, and quotas.
You can download current GAM from the GitHub Releases page.
The GAM documentation is currently hosted in the GitHub Wiki
The GAM mailing list / discussion group is hosted on Google Groups. You can join the list and interact via email, or just post from the web itself.
The official GAM source repository is on GitHub.
GAM is maintained by Jay Lee.
GAM is made possible and maintained by the work of Dito. Who is Dito?
Dito is solely focused on moving organizations to Google's cloud. After hundreds of successful deployments over the last 5 years, we have gained notoriety for our complete understanding of the platform, our change management & training ability, and our rock-star deployment engineers. We are known worldwide as the Google Apps Experts.
Need a Google Apps Expert? Contact Dito, which offers free premium GAM support for domains that sign up through Dito.