The definitions provided assumes APIs are tools for connecting services across the web. I can’t believe I’m becoming a greybeard in programming, but APIs existed long before web programming. An SDK is an API - both expose endpoints to a consumer which define the rules and data necessary to interact with their underlying implementations. They’re both intended to abstract the consumer and, hopefully, expose much of the logic while ensuring the use of the tools are within limits. The only difference between them is that SDKs contain the code and dependencies necessary to complete the task and APIs are just a concept. As an example: a PlayStation SDK contains everything you need to make a game work on a PlayStation hardware, including the exposed interfaces for the graphics card, sound engine, clock, network, etc. In that same example, the API is the code exposed to the user like “renderFrame()” which can be called by the developer to fire off the rendering process. This API abstracts you from the underlying calls to the AMD chips, TSMC RAM, proprietary CPU, etc.