惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
Google Developers Blog
J
Java Code Geeks
爱范儿
爱范儿
Microsoft Azure Blog
Microsoft Azure Blog
美团技术团队
人人都是产品经理
人人都是产品经理
Martin Fowler
Martin Fowler
IT之家
IT之家
博客园_首页
B
Blog RSS Feed
Google DeepMind News
Google DeepMind News
B
Blog
U
Unit 42
Apple Machine Learning Research
Apple Machine Learning Research
L
LangChain Blog
Stack Overflow Blog
Stack Overflow Blog
罗磊的独立博客
N
Netflix TechBlog - Medium
T
Tailwind CSS Blog
博客园 - 聂微东
腾讯CDC
A
About on SuperTechFans

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Why AI Agents Keep Breaking Your APIs
Chaitrali Kakde · 2026-06-03 · via DEV Community

Last week, I ran a small experiment.

I wanted to see how well GPT-4 could interact with a real-world API without much hand-holding. Nothing complicated. No multi-agent workflows. No orchestration frameworks. Just a simple task that thousands of applications perform every day.

Send an email through SendGrid.

The goal was straightforward. Give the model the context it needed, let it generate the request, and see how far it could get.

What happened next surprised me.

GPT-4 generated a request containing several parameters that looked completely valid. The payload was structured correctly. The field names were descriptive. Everything looked professional.

The only problem was that those parameters did not exist in the SendGrid API.

The request failed immediately.

At first, I thought this was a model problem. After all, hallucinations are a well-known limitation of language models. **But the more I experimented with APIs, agents, and production workflows, the more I realized something deeper.

The problem is not that AI agents occasionally hallucinate APIs.**

The problem is that most APIs were never designed for AI agents in the first place.

APIs Were Built For A Different Consumer

For the last two decades, APIs have been designed around a very specific assumption.

The consumer is a developer.

That developer reads documentation, understands business context, interprets ambiguous descriptions, and fills in gaps when documentation is incomplete.

When an API specification says:

{
  "status": 1
}

a developer can usually figure out what that means.

  • Maybe they read the docs.
  • Maybe they ask a teammate.
  • Maybe they inspect the application.

Eventually, they learn that:

1 = Pending
2 = Approved
3 = Rejected

and move on.

AI agents don't work that way.

They do not infer intent from tribal knowledge. They do not ask the developer sitting next to them for clarification. They only know what exists inside the contract they were given.

If the meaning is not explicit, the agent is left guessing.

And guessing is where things start to break.

GPT Didn't Read The API. It Predicted The API

What made the SendGrid experiment interesting wasn't that GPT generated an invalid request.

It was how convincing the invalid request looked.

The generated payload contained fields like:

{
  "recipient_email": "john@example.com",
  "email_subject": "Welcome",
  "priority_level": "high"
}

None of those fields exist in SendGrid.

Yet if you've worked with enough APIs, they feel completely reasonable.

That's because GPT wasn't retrieving the schema.

It was predicting the schema.

Across millions of code examples, SDKs, documentation pages, and tutorials, fields like recipient_email and email_subject are statistically common. The model generated what seemed likely to exist.

The API, however, only cares about what actually exists.

This distinction is easy to overlook, but it sits at the center of many agent failures.

Language models operate on probability.

APIs operate on contracts.

Those are fundamentally different systems.

The Enterprise API Problem Is About To Get Bigger

Historically, this wasn't a major issue.

A developer chooses an API once, integrates it into an application, and that integration remains relatively stable.

Agents change that model entirely.

Instead of discovering APIs during development, agents increasingly discover and use capabilities at runtime.

That sounds simple until you look at the scale of modern enterprises.

Large organizations often operate tens of thousands of APIs and hundreds of thousands of endpoints. Most engineering teams don't even have an accurate inventory of everything that exists.

For a developer, that complexity is hidden because someone already made the integration decision.

For an agent, the discovery process becomes part of the workflow itself.

The challenge is no longer "Can the API perform this action?"

The challenge becomes "Can the agent find the correct capability among thousands of possibilities and understand how to use it correctly?"

That's a very different problem.

Too Many Endpoints, Not Enough Intent

One of the most interesting ideas I've come across recently is that enterprise APIs expose too much implementation detail and not enough intent.

Imagine a workflow that creates a new customer.

From a business perspective, that's a single action.

From an API perspective, it might require:

  • Creating the account
  • Creating a billing profile
  • Assigning permissions
  • Creating notification settings
  • Linking related resources

A developer can understand how those pieces fit together.

An agent sees five independent endpoints and must figure out how they relate to one another.

As API landscapes grow, this becomes increasingly difficult.

The problem isn't that agents lack intelligence.

The problem is that we're asking them to navigate systems that were optimized for flexibility rather than clarity.

The more I think about agent infrastructure, the more convinced I become that agents should interact with capabilities, not endpoint catalogs.

A business action like "Create Customer" should look like a business action.

Not a sequence of fifteen API calls hidden behind documentation.

Even Perfect APIs Won't Solve Everything

Better API design will help.

Better specifications will help.

Better documentation will help.

But they don't solve the entire problem.

Even if an agent perfectly understands an API, production systems introduce an entirely different set of challenges.

  • Authentication expires.
  • Networks fail.
  • Requests time out.
  • Rate limits are reached.
  • Services return partial failures.
  • Dependencies become unavailable.

None of these problems are reasoning problems. They're execution problems.

And execution is where many agent architectures still struggle today.

The Missing Layer Between AI And APIs

Most diagrams describing AI agents look something like this:

LLM → API

In practice, production systems need something in the middle.

An execution layer.

A layer responsible for authentication, validation, retries, observability, and policy enforcement.

The model decides what it wants to do.

The execution layer determines whether that action can be performed safely and reliably.

Without that layer, every API call becomes a potential point of failure.

The model is forced to handle responsibilities it was never designed for.

And reliability quickly becomes difficult to achieve.

While building agent workflows, we kept running into the same pattern. The model wasn't struggling to decide what action to take. It was struggling with everything that happened after the decision was made.

  • Authentication failures.
  • Invalid payloads.
  • Rate limits.
  • Retries.
  • Partial failures.

The more integrations we connected, the more obvious it became that agents needed infrastructure around API execution, not just better prompts.

That realization eventually became one of the motivations behind Swytchcode.

Instead of treating APIs as raw endpoints that agents need to figure out at runtime, we started treating them as structured capabilities with managed execution underneath. The goal wasn't to make the model smarter. It was to make execution more reliable.

What That Execution Layer Actually Looks Like

The phrase "execution layer" can sound abstract, so let's make it concrete.

Imagine an agent wants to create a customer in HubSpot, send a welcome email through SendGrid, and post a notification to Slack.

From the model's perspective, those are simple actions.

But behind the scenes, each integration comes with its own set of requirements.

  • Different authentication mechanisms.
  • Different request schemas.
  • Different rate limits.
  • Different error responses.
  • Different retry strategies.

In many agent architectures today, the model is expected to handle all of that complexity directly.

That's where things start to break.

What we've found is that agents work much more reliably when API execution is treated as infrastructure rather than prompt engineering.

That's one of the ideas behind Swytchcode.

Instead of exposing raw APIs to agents, Swytchcode provides a managed execution layer that sits between the agent and external services.

That layer handles things like:

  • Authentication and credential management
  • Request validation against API contracts
  • Retry and failure recovery
  • Idempotent execution
  • Error handling and observability
  • Structured tool definitions instead of raw endpoints

As a result, the agent can focus on intent:

Create a customer.

Send an email.

Update a CRM record.

The goal isn't to replace the model.

The goal is to provide the infrastructure that allows the model to operate reliably in production.

Resources