A comprehensive design guide for building consistent, business-focused HTTP+JSON APIs, extracted from Heroku's Platform API.
HTTP API Design Guide is a set of best practices and conventions for building HTTP+JSON APIs, extracted from the development of the Heroku Platform API. It provides actionable recommendations to help designers and developers create consistent, well-structured APIs that focus on business logic while minimizing design friction. The guide covers essential aspects like URL design, versioning, error handling, and response formatting.
API designers, backend engineers, and development teams building or maintaining HTTP+JSON APIs who want to adopt proven, consistent design patterns. It's particularly valuable for those seeking to align their API practices with industry-tested standards.
Developers choose this guide because it offers real-world, battle-tested conventions from Heroku's extensive API experience, reducing decision fatigue and promoting team consistency. Its practical, non-dogmatic approach focuses on what works in production, avoiding theoretical perfection in favor of actionable guidance.
HTTP API design guide extracted from work on the Heroku Platform API
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Derived from the Heroku Platform API, ensuring recommendations are battle-tested and scalable in production environments.
Offers standardized patterns for URL structures and error handling to reduce design debates and promote team alignment.
Addresses essential aspects like versioning, pagination, and filtering in a clear, actionable manner based on the README.
Available online via GitBook and in multiple translations, making it easily accessible to a global audience.
Recommendations are tailored to Heroku's use cases and may not generalize well to all API contexts, such as high-performance or niche applications.
Focuses on traditional HTTP/JSON APIs and lacks guidance on newer trends like GraphQL, WebSockets, or serverless architectures.
As a static guide, it provides no tooling or automation for validation, relying entirely on team discipline for adherence.