API Design
In system design interviews, your API design serves as the contract between your system and its users. It's one of the first concrete artifacts you produce, and a well-designed API shows that you understand the problem deeply enough to define how others will interact with your solution.
This page focuses on the practical aspects of designing APIs for interviews—structuring endpoints, handling common patterns, and avoiding pitfalls. For choosing between REST, gRPC, and GraphQL, see Network Communication.