Agents in production

API strategy

Agent projects stall at the same point. Here's why

RPA and AI agents have fundamentally different architectural requirements. Where RPA breaks down at agent scale, and the right alternative.

5 minute read
Decorative imagery showcasing Pontil's brand

There's a conversation happening inside a lot of SaaS companies right now. It goes roughly like this.

The agent project worked in proof-of-concept. The model reasoned correctly. The demo looked good. The team shipped it to a staging environment, connected it to the real product, and discovered that the agent couldn't do most of what the demo showed. The API didn't expose the workflows the UI runs. The permission logic wasn't callable. The form that triggers the downstream process doesn't have an endpoint.

The project stalls. A post-mortem gets written. It usually concludes that the agent needs better prompts, or a better model, or a different framework. The real conclusion — that the API layer isn't fit for agent-scale access — often goes unwritten, because it implies a multi-year rewrite that nobody wants to propose.

This isn't one company's experience. It's the pattern.

Why the stall is structural

SaaS products were built for human users operating through a UI. Businesses spent years making the interface better — more capable, more connected, more intelligent about what the user was trying to do. The API surface kept up with some of that. Most of it, it didn't.

This wasn't a mistake. APIs were built for the use cases that existed at the time: point-to-point integrations, webhooks, third-party developer access. The UI evolved faster than the API because that's where users were. The gap between what you can do in the interface and what you can do through the API is normal for any product of meaningful age and complexity.

What changed is the consumer. Most production agents call APIs rather than drive UIs — and when the API doesn't expose what the interface does, the agent can't act. The gap that never mattered for human users is fatal for agents.

The three wrong diagnoses

When the project stalls, teams reach for explanations that feel fixable in the short term.

The model diagnosis. The agent isn't reasoning well enough. Switch models, try a different prompting approach, add more context. This gets tried first because it's within the agent team's control. It rarely fixes the stall, because the stall isn't a reasoning problem. The model reasons correctly about what to do — it just can't do it.

The framework diagnosis. The orchestration layer is the problem. Switch from one agent framework to another. Restructure the tool definitions. Add memory. This also gets tried frequently, and it also rarely fixes the stall, for the same reason: the gap is at the API layer, not the agent layer.

The prompt diagnosis. The agent is getting confused about which tool to use or how to sequence steps. Write better tool descriptions. Add examples. This is sometimes the right fix for a different class of problem, but it doesn't fix missing API coverage.

None of these diagnoses are irrational. They're all within the agent project's sphere of control, and they represent genuine levers for some problems. The issue is applying them to a problem they don't address.

What the stall actually is

The stall is an access problem. The agent has a task. The task requires capabilities that exist in the product. Those capabilities aren't reachable through the API. The agent is blocked.

The capabilities aren't missing from the product. They're missing from the API. They exist in controller logic, in UI workflows, in permission checks that were never designed to be called programmatically. They work fine for human users; they're invisible to agents.

This is the diagnosis that unlocks the right conversation. It's not a model problem. It's not a framework problem. It's an access problem, and the fix is at the API layer, not the agent layer.

Why the right diagnosis is hard to make

Saying "our API layer isn't fit for agent access" leads directly to an uncomfortable conversation about what it would take to fix it. For most established SaaS products, that conversation tends to end with an estimate, in our experience, in the range of two to five years of engineering work — a full rearchitecting of the API surface to expose what the UI has always done.

That's not a proposal that gets funded. The product roadmap can't pause for two to five years. Engineering capacity doesn't exist for a parallel rewrite. Leadership has board commitments that require the agent project to ship, not the API rewrite to start.

So the stall gets attributed to something else — something fixable in a sprint, even if it doesn't fix the actual problem. The project continues burning cycles on the wrong diagnosis.

Getting to the right conversation

The productive path starts with naming the actual problem clearly: the agent can't reach the product's capabilities because the API doesn't expose them. Then it asks the right question: what's the fastest path to closing that gap that doesn't require a full API rewrite?

The options on that path — and their honest trade-offs — are worth a separate conversation. What matters first is making the accurate diagnosis. Agent projects that stay stuck on model, framework, and prompt explanations don't unblock. Agent projects that correctly identify the access problem can start evaluating the actual solutions.

The stall is structural. So is the fix. The first step is calling it what it is.

Join our weekly newsletter

Stay up to date on the ever changing agentic landscape.

POSTS

Related content

No items found.