# Minimal API Surface Every API design **MUST** aim for a minimal API surface without sacrificing on product requirements. API design **SHOULD NOT** include unnecessary resources, relations, actions or data. API design **SHOULD NOT** add functionality until deemed necessary \([YAGNI principle](https://martinfowler.com/bliki/Yagni.html)\).