pioneered API-design & API-first • built APIs with the largest enterprises • building API infrastructure for AI agents • building AI agents Founder and CTO of Superface.ai • DSL director Apiary.io → Oracle • Founder of Good API consulting • Enterprise API strategy and execution superface.ai
that acts on behalf of user or another program • LLM-powered agents can independently • make decisions • perform tasks • interact with other systems • Agent needs tools to be able to do meaningful things superface.ai
as the tools they have • computation • databases • API calls • LLM works more like a human • It’s able to fi gure out what endpoints to call from API documentation • Agents are more resilient to API changes LLM-powered Agent Memory Planning Tools APIs superface.ai
• It is not easily accessible to developers • The functionality is limited • Using 3rd party (scraping) service • Connect my agent to LinkedIn in one minute superface.ai
or no deal • Entering data into CRM • The case was saving 38hrs / week • Agent did not get the API access to the CRM • Entering the data using web actor (scraper) works superface.ai
a and call a function (tool) • Ideally, we would give an API to LLM and it would fi gure it out • The more atomic and abstract the API is the harder it is to use LLM detects function requirements Structured function input Execution of the function Returning the result API call LLM function calling repeat multiple times superface.ai
to pick the tool • what others tools to call • instruct to use fi lters • describe out-of-the-band knowledge Describe everything Example: Salesforce CRM superface.ai
GraphQL shines here! • Bundle API calls • when descriptions are not enough or context would be too big • Create endpoints to serve speci fi c agentic use-cases • also helps for weaker LLMs Mind the Context Size Example: Google Mail superface.ai
design their tool interfaces • LLM will not fi gure it out Avoid abstraction Extremely di ff i cult for LLMs Example: Notion Notion API: you need to get the database, then blocks in the database, and then iterate through the blocks superface.ai
handling often sucks • Respect status codes • Most agents can use error message to fi x the request (in 400 cases) • Good error messages are the di ff erence between a failure and success Error handling design it to be useful superface.ai
relations between parameters • Ideally using JSON Schema (and not description) • Correctly named, described, including format (e.g. timestamps), and default values • De fi ne parameters as enums where possible Required fields must be designed well Example: Scrapin superface.ai
sweet spot is only 15-20 • We are are using hierarchy to fi lter hundreds of tools • Isolated agent can help select the right tool Number of tools keep it very, very low superface.ai
get too creative • Keep it simple • Focus on documentation, description and naming • Streamline API access: OIDC/OAuth is a must • Have API AI PO: API- fi rst, API Design for AI superface.ai