Friday, March 02, 2007

Blog movage

The techno blog has officially moved to the new general-purpose kayak blog. Please redirect your feed readers there for all future technical posts.

Thanks.

Friday, September 29, 2006

Perl and Java examples of Kayak search API

These samples are a bit old, but are a good starting point if you want to try implementing the Kayak API in Perl or Java. If you have a better/cleaner example you would like to share, let us know. If it's better than our hacked-together examples, I'll send you a Kayak t-shirt. Yeah, we spare no expense, baby!

Perl example.

Java example.

Friday, September 22, 2006

Search API problems

Just a quick note to let you know that we know that the search API is having some problems. We're working on tracking them down. So now we know that you know that we know. We'll let you know when it's fixed.

Update: we've found and fixed the problem; it will be patched first thing tomorrow, along with some other updates.

Wednesday, June 21, 2006

Where is the Kayak WSDL?

Sometimes people ask why the kayak search API is not a true Web Services implementation.

Bruce Eckel just posted an interesting article that pretty much covers it for me.

Friday, June 02, 2006

Search API changes coming next week!

We've made a pretty major change to the search API this week, slated for release next Thursday. Actually, it's not so much a change to the API as it is a change to kayak.com itself, and the API is just a victim of this.

The short story is that in order to expand our scale by 50-100% on our front-end processors, we now "lock" interim search results to a single front-end processors. These units are called "sparkles," for reasons that are too silly to explain. This is bad news for you, the developer, in the short term because you will have to change your code; but in the long run it's good, because we'll be able to handle much bigger volume than the 300,000 searches/day we handle right now. (Without buying zillions more servers.)

So, before you would make http calls like this:

/k/ident/apisession...
/s/apisearch...
/s/apibasic/flight...
/s/apibasic/flight...
/s/apibasic/flight...
etc.

But after thursday, it will be:


/k/ident/apisession...
/s/apisearch...
/s/apibasic/flight...
(this returns "-sparkle27" in the "searchinstance" xml tag)
/s-sparkle27/apibasic/flight...
/s-sparkle27/apibasic/flight...
/s-sparkle27/apibasic/flight...
etc.

Clear as mud? Good.

If you have any questions, drop me an email. billo at kayak daught com

Friday, May 12, 2006

Search API common problems

We're suddenly picking up a lot more people using the search API. There are a few problems that people run into, and they are our fault. Sorry.

The first problem is that there is a parameter missing from the doc: on the search results calls, the "apimode=1" parameter is required. If you don't pass it, you will get HTML and not XML! This will be fixed on the next site update we do. Just send apimode=1 on everything, it can't hurt :-)

The next problem is that sometimes the quota allocation breaks, and your quota is set to zero. If you are only able to do 1 or 2 searches and then you get "over quota" errors, please use the feedback link on kayak.com to say this:

"my quota is broken on the search API. my email address for the developer is *insert email here*. Tell billo to get off his fat ass and fix my quota!"

(you may substitute "chiseled, Brad Pitt-like" for "fat" if you want to score points)

Finally there is some confusion over the 1000/day default quota. It's really 1000 searches/day, distributed over 24 hours, bucketed by whole hour. So you have 41 searches per hour when the quota is 1000/day.

Friday, March 17, 2006

Opera Browser

We've had some trouble with the Opera browser recently. It used to work on kayak.com, and now it's broken. There is good news for you Opera fans out there: our pals at Opera gave us some Javascript to fix the AJAX-ing of results. That fix is currently planned to go out on April 13. It would be sooner than that, but some other stuff that is happening makes it troublesome. You really don't want to know the details.

In the meantime, here are two workarounds for Opera:

1. when you are doing a flight search (or hotel search), wait for the little green bar to progress all the way across. Then hit refresh. Your flights will appear!

2. Try basic mode kayak. It's kind of, um, basic, but it works with almost all browsers. Even really old ones. No AJAXy goodness, of course. Mr. Miyagi says: basic on, basic off.