The auction API is returning auctions that have been purchased - much as API devs have been hoping to get that kind of information, there's nothing in the listing to indicate that the auction lot's state is anything but "available."
Consequently, I've noticed that commodity prices are dropping through the floor, and I suspect it's because snipers aren't able to cycle goods to the Tool Vendors, so there isn't an effective floor anymore.
For instance:
{"player"=>{"tsid"=>"PHVU5FRQAM52F0L", "name"=>"Devolish"},
"created"=>"1320606629",
"expires"=>"1320693029",
"class_tsid"=>"crystallizer",
"category"=>"tools",
"count"=>"1",
"cost"=>"800",
"url"=>"/auctions/PHVU5FRQAM52F0L/4eb6dba5/",
"tool_state"=>"used",
"tool_uses"=>"750",
"tool_capacity"=>"1000",
"item_def"=>
{"class_tsid"=>"crystallizer",
"name_single"=>"Crystalmalizing Chamber",
"name_plural"=>"Crystalmalizing Chambers",
"category"=>"tools",
"max_stack"=>"1",
"desc"=>
"With this tool, every armchair alchemist can be the master of their own future. Or at least make some Plain Crystals. Who knew Barnacle Talc and essence of Firefly would combine to make such fine new age bling?",
"base_cost"=>"2500",
"swf_url"=>"http://c2.glitch.bz/items/2011-01/1296505059-5923.swf",
"iconic_url"=>
"http://c2.glitch.bz/items/2011-01-31/1853_1296505060_iconic.png"}}
Who wouldn't want to snag a 2500 currant tool for 800?
Well:
You snooze, you lose...
Someone purchased this auction 4 days ago for 800 currants.
API scripts could be rewritten to hammer the purchase site until they fulfill orders, but that's really a pain for everyone.
If the idea was to provide historical data about auctions, please add a state field! (sold, expired, active, delivered ...)