Tag
A developer describes running AI agents in a simulated restaurant world and finds that across different models and harnesses, the same three API-related mistakes dominate: guessing nonexistent endpoints, exceeding budgets, and acting on stale IDs. Shows persistent failure patterns despite fixing the system.
The author explains why they forked Rust's rand crate into urandom, focusing on a smaller API surface, better discoverability, and a sealed Rng trait to simplify custom randomness use.
This article explains the true meaning of RESTful APIs, emphasizing the importance of HATEOAS and hypermedia as the engine of application state, and argues that most modern APIs only reach Level 2 of the Richardson Maturity Model.
Alvin Sng explains why their team moved away from using client SDKs for Stripe, WorkOS, and Slack, opting instead to call their REST APIs directly via a centralized wrapper. They argue that SDKs hide critical debugging details, are fragile in production, and encourage anti-patterns that are now more easily avoided with AI-assisted coding.
The article argues that designing APIs for AI agents requires different principles than for humans, emphasizing clarity, explicitness, and avoiding defaults, because agents can read entire docs and write extensive code.
The SaaS company TRCR built an MCP server exposing ~150 tools for AI agents, and shares six key lessons from dogfooding with Claude: agents expose API flaws, tool descriptions matter as product copy, self-contained context is crucial, OAuth 2.1 is worth the pain, combining agents with billing data is powerful, and dogfooding shifts the product roadmap.
Promotional tweet offering a free API Design Playbook for 24 hours, covering fundamentals, clean design, patterns, and practical concepts.
RFC 10008 defines the HTTP QUERY method, a safe and idempotent request method that allows sending a query payload in the request body, bridging the gap between GET and POST for query operations.
The author built a Healthy Food MCP server and learned that agents perform better with many narrow, constrained tools rather than one flexible tool, emphasizing the need for a boring tool surface to reduce LLM hallucination.
The article presents a framework for interface design where every interface has two channels (in-band and out-of-band) for concern signaling, arguing that good design forces users to confront important concerns rather than allowing them to ignore them.
A discussion on API versioning practices, questioning the coupling of URL paths (e.g., /v1/) with semantic versioning and exploring potential antipatterns.
A blog post proposing a redesign of the System.Diagnostics.Process class in .NET to separate properties valid only for started processes into a new class, aiming to reduce API confusion.
This article from The Old New Thing explains the concept of making APIs 'inert'—do nothing in a way that avoids breaking existing apps—using examples like printing support on Xbox and retiring widget APIs.
The AEP Project provides API design specifications and tooling for protobuf and HTTP REST APIs, hosted on GitHub.
The author discusses the architectural challenge of designing both MCP and CLI interfaces, weighing the benefits of mirroring capabilities versus leveraging the unique strengths of each (composability for CLI, safety/auditability for MCP).
The article discusses the complexities of implementing idempotency in APIs, arguing that handling edge cases like concurrent requests and content mismatches is harder than simple replay caching.
The article examines the pitfalls of altering API behavior depending on the linked SDK version, using Windows' CoInitializeSecurity as a case study. It discusses issues with DLL version mismatches and tail call optimization that complicate this approach.