Arya is a tool to translate an XML or JSON to Python. Arya will convert your input and use the Cisco sdk COBRA.

Generate the code with arya :
arya -f tenant.xml
!/usr/bin/env python
'''
Autogenerated code using arya
Original Object Document Input:
'''
raise RuntimeError('Please review the auto generated code before ' +
'executing the output. Some placeholders will ' +
'need to be changed')
list of packages that should be imported for this code to work
import cobra.mit.access
import cobra.mit.naming
import cobra.mit.request
import cobra.mit.session
import cobra.model.fv
import cobra.model.vns
from cobra.internal.codec.xmlcodec import toXMLStr
log into an APIC and create a directory object
ls = cobra.mit.session.LoginSession('https://1.1.1.1', 'admin', 'password')
md = cobra.mit.access.MoDirectory(ls)
md.login()
the top level object on which operations will be made
Confirm the dn below is for your top dn
topDn = cobra.mit.naming.Dn.fromString('uni/tn-aaaaaaaa-tn')
topParentDn = topDn.getParent()
topMo = md.lookupByDn(topParentDn)
build the request using cobra syntax
fvTenant = cobra.model.fv.Tenant(topMo, ownerKey='', name='aaaaaaaa-tn', descr='', nameAlias='', ownerTag='')
vnsSvcCont = cobra.model.vns.SvcCont(fvTenant)
fvRsTenantMonPol = cobra.model.fv.RsTenantMonPol(fvTenant, tnMonEPGPolName='')
commit the generated code to APIC
print toXMLStr(topMo)
c = cobra.mit.request.ConfigRequest()
c.addMo(topMo)
md.commit(c)