This sample should demonstrate the basics for adding a new device, including examples of defining <vendorConfig> options: https://github.com/CiscoDevNet/axl-python-zeep-samples/blob/master/axl_add_Phone_vendorConfig.py
As device <vendorConfig> schemas vary per device and are not definitively documented, usually a good way to figure out what elements are needed is to create a similar device in CUCM admin, then use AXL (e.g. via SoapUI) to retrieve it.
This sample covers adding a new line: https://github.com/CiscoDevNet/axl-python-zeep-samples/blob/master/axl_add_update_Line.py
This one covers adding a user, enabling IM&P, associating device/primary extension/groups: https://github.com/CiscoDevNet/axl-python-zeep-samples/blob/master/axlZeep.py