Things that I can point out as missing:
- no support for other locales (it's dd/mm/yyyy and 2300, not 11pm where I live, US is not the only place in the world)
- no rich-text on long-content fields
- no actual changes visible in revisions, history contains only "changed by xxx on yyy"
From the developer's perspective, the API is really silly. It seems to be completely different from normal access path. Tokens need to be authorized by project owners, not all authentication schemes work with APIs. I don't get at all why is API access treated as something additional, rather than a normal usage pattern. If I've got a user account, I should be able to do via the API every action I'm allowed to do via web - without anyone's blessing.
API design also leaves a lot room for improvements. Custom XML only with things like this definition of a query:
Trying to figure out the exact meaning of "field_type", "base_type", "role" and "mode" in the results (all are attributes on every value of the results) along with how to resolve them when they reference values in other tables (which can be done in 3 different slightly underdocumented ways from what I've seen so far) is pretty difficult. This may be a good start for a TDWTF article...
I have a working DBAPI compliant Python module that is about 40% complete. It really needs a method to translate SQL to QuickBase's clunky xml query format. The Ruby API has one and it would be trivial to port it to Python.
Would you (or anyone else?) be interested in contributing if I put it up on GitHub?