This week I muddled my way through the documentation for the new Barracuda 4.x API, and I was reminded of something I saw on Slashdot awhile back:
“XML is like violence: if it doesn't solve your problem, use more.”
Yes, instead of sending your query as key/value pairs the way a standard HTML form would work (which is how the Barracuda 3.x API worked), the new API takes queries in the form of XML data, much like Microsoft's autodiscover protocol which only ever passes a single value as an argument, but needs it to be wrapped in XML anyway.
This wouldn't annoy me so much, but Barracuda's documentation fails to
show how to actually do a query using the Perl module that they themselves
recommend. That's right, the documentation suggests using CPAN's
XML::RPC, then never mentions anything about it again.
Instead they give examples that use incomplete, truncated XML listings.
But at least I can get a list of domains, which I couldn't find a way to do with the 3.x API.