The command line user interface of NetworkManager. It uses the D-Bus API of NetworkManager (via libnm).
See:
man 1 nmcli
man 7 nmcli-examples
man 5 nm-settings-nmcli
Try also with bash-completion!