The Missing Link between AI and APIs
What is still missing from AI systems to efficiently connect to and use APIs?
In the age of AI, not everything is an API. Last year I wrote that AI-powered conversational interfaces let you express your intents. In that context “it's only natural that you want to extend the UI’s abilities by integrating it with external features.” At the time, I thought we’d quickly get to a point where AI would learn how to extend itself by discovering APIs. However, we’re not there yet. Let’s find out why not.
This article is brought to you with the help of our supporter: Speakeasy.
Speakeasy provides you with the tools to craft truly developer-friendly integration experiences for your APIs: idiomatic, strongly typed, lightweight & customizable SDKs in 8+ languages, Terraform providers & always-in-sync docs. Increase API user adoption with friction-free integrations.
As an end user, I can’t still use most AI-powered UIs to connect to external systems. In November 2023 I told ChatGPT that I needed a train ticket for a trip to Paris. It understood my intent but replied saying it didn’t have the capability to book tickets. Today, I’m trying the same thing to see how things have evolved in 8 months.
Things have definitely changed. Last time, ChatGPT told me it couldn’t book tickets and it simply suggested the use of an online booking website. Now, it told me it could help me and even asked for more details such as the departing city, date, and number of passengers. However, once I gave it the information the reply was quite disappointing. Instead of trying to book the ticket itself, it told me to go to a booking website and do it myself.
Despite all the technological advancements, booking a train ticket using ChatGPT feels similar to what it was 8 months ago. Yes, the conversational capabilities are more refined now. Yes, ChatGPT can provide information related to train stations and fares. But, in the end, it still can’t book the ticket. It’s not because it’s not possible, however. It feels like there was a decision not to make it available easily.
In March 2023, ChatGPT announced the availability of plugins. According to the announcement, plugins “help ChatGPT access up-to-date information, run computations, or use third-party services.” Extensive documentation was available andthe launch happened with a list of partners like Expedia, Shopify, and Zapier. Later, plugins have been deprecated in favor of Actions. The concept is similar to plugins. However, there’s one big difference. Actions are available only inside custom GPTs.
And, in my opinion, this is why it doesn’t feel easy to book a train ticket using ChatGPT. Custom GPTs are “custom versions of ChatGPT that combine instructions, extra knowledge, and any combination of skills.” The model is quite similar to the one used for mobile apps. There’s a “GPT Store” where you can find the GPTs you’re interested in. You use each GPT individually and have access to its features in a contained way. The information you share with each GPT isn’tshared with other GPTs or the whole system—unless the GPT owner wishes to do so.
In conclusion, using a custom GPT follows a pattern similar to using a mobile app. You have to know what you want the GPT to do, find it on the “GPT store,” and finally use it. What is lost in this process—and where I thought ChatGPT would shine—is translating an intent into a connection with a third-party API. In this store model, finding the GPT that can book me a train ticket to Paris doesn’t feel easy.
If discovering GPTs is as hard as discovering apps, then where’s the advantage? Is it merely about the conversational UI? I even tried searching for a train ticket GPT using ChatGPT’s conversational UI. It couldn’t point me in the right direction. Instead, it explained how plugins (now deprecated) work and mentioned that I could use Expedia's to book a ticket.
The promise of an AI assistant seems to fade with the OpenAI’s approach to custom GPTs. In an assistant world, you shouldn’t have to explicitly ask for what you need. Instead, you’d mention what you want done and the assistant would infer what it needs to do, and would then do it for you. You shouldn’t have to care how the assistant gets things done and what’s behind the scenes. This is what I call implicit third-party API discovery.
However, the opportunity to offer automated discovery of third-party APIs based on intent wasn’t taken by OpenAI. The opportunity to grab users at their intent and offer them the best third-party API wasn’t taken. OpenAI preferred to create a marketplace of “conversational apps” it calls custom GPTs. The missing link between AI and APIs is implicit discovery based on intent. We’re not there yet.
I agree that this has taken longer than expected. You can @mention GPTs in the GPT store (though I think you may need to be on a paid plan to do that). So you could say "find me flights from Paris to Capetown using @kayak" ... so you could see how flight booking could happen using the GPT layer. OpenAI haven't invested a lot of effort there though recently.
I do think it'll come but it may come in a way that feels very "non-open": with essentially a platform that has preconfigured providers for things. So you need to be a partner to be prioritized. This will be a new potential distribution hub on the web that people will have to work their way into.
I couldn't agree more! We're not there yet, but maybe we will get there soon? I just spent the last 3 days thinking about this exact same problem. I've started to work on a framework designed to facilitate seamless interaction between AI agents and web services. By allowing services to register their intents and actions, and enabling AI agents to discover and execute these intents, this API acts as a powerful intermediary layer. It's still early days and I'm not yet sure if it should be just an open source protocol or an actual service.
But what I find amazing is that for some reason the algorithmic gods decided that I'm not alone in thinking that there is a missing link between AI and APIs 🙌