I'm trying to communicate with the Zuora SOAP API. I'm following their
documentation here:
http://knowledgecenter.zuora.com/L_Implementation_Guide:_Seed_Edition/K_U...
to repair the broken WSDL imports and instantiate a SUDS client.
For reference, the WSDL I'm using is here:
https://gist.github.com/bjmc/3213578bd3b5fdf06a46
When I go to try and update an account:
account = suds_client.factory.create('Account')
account.AccountNumber = account_id
account.AutoPay = False
suds_client.service.update(account)
I get the following error:
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/client.py",
line 542, in __call__
return client.invoke(args, kwargs)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/client.py",
line 595, in invoke
soapenv = binding.get_message(self.method, args, kwargs)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/bindings/binding.py",
line 120, in get_message
content = self.bodycontent(method, args, kwargs)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/bindings/document.py",
line 63, in bodycontent
p = self.mkparam(method, pd, value)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/bindings/document.py",
line 105, in mkparam
return Binding.mkparam(self, method, pdef, object)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/bindings/binding.py",
line 287, in mkparam
return marshaller.process(content)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/mx/core.py",
line 62, in process
self.append(document, content)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/mx/core.py",
line 75, in append
self.appender.append(parent, content)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/mx/appender.py",
line 102, in append
appender.append(parent, content)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/mx/appender.py",
line 243, in append
Appender.append(self, child, cont)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/mx/appender.py",
line 182, in append
self.marshaller.append(parent, content)
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/mx/core.py",
line 74, in append
if self.start(content):
File
"/home/bjmc/Sandbox/project/.env/local/lib/python2.7/site-packages/suds/mx/literal.py",
line 87, in start
raise TypeNotFound(content.tag)
TypeNotFound: Type not found: 'Type not found: 'billToContact'
I'm guessing that I need to do some further repairs to the WSDL with the
ImportDoctor, but I'm not sure what those might be exactly. Can anyone
point me in the right direction?
Thanks,
Brendan