I spent the better part of today cooking up a nice little interface to the US Postal Service's rate calculation APIs, and like a good little dev I've even been writing little py.test cases to poke at it. But once it came time to stop stubbing out the live IO and see if their test server would yield up any joy, my hopes were dashed and torn asunder. Because as lovely as all of the API documentation is, no matter how thoroughly they describe the input and output XML schemas, no matter how slick and (literally) head-turning their diagrams are, none of it matters two hoots when the test server says that there's no service with the API name that the docs tell you to use.
Even better, all of the preliminary canned example requests that are supposed to be no-brainers to bounce off of their test server get a lovely and oh-so-enlightening "the parameter is invalid" response. Yes, thank you, it's all clear to me now! Clearly--the parameter... It's invalid! What was I thinking?
United States Postal Service... you're on notice.
Seriously, though, if anyone else has had to integrate with the USPS APIs and has advice, I'd love to hear it. I did encounter some rumors and hearsay that "some" of the APIs were recently "broken" and "undocumented," but I'd really like to believe that there's a simpler (and friendlier-to-deadlines) explanation than that.
- Mood: annoyed
- Music: The New Pornographers - "My Rights Versus Yours"