Hans-Petter Halvorsen
An API (Application Programming Interface) is a way for two or more computer programs or components to communicate with each other. It is a type of software interface that offers a service to other software. APIs come in many shapes, some examples are SOAP API, REST API, HTTP API, Web API, GraphQL API, etc. Most of these terms are more or less the same with some small differences. Most programming languages today have components/libraries that can be used both to create APIs and to consume APIs (using existing APIs).
We can create/use APIs for internal use inside an Application or between 2 or more Applications. Basically, an API can be just a Class with Methods that you use several places inside an Application or that you share between multiple Applications. A set of Stored Procedures in a Database can also be an API. When the Application that consume/use the API is on a local PC and the API itself is located on a Server on the Web, we can talk about so-called "REST APIs" and "Web APIs".
Such APIs also very often perform CRUD operations against a Database located on the Web. Normally it is not allowed to connect directly to a Database located in the Cloud from a local computer unless you configure and give access to the IP addresses for those clients.
You typicaly use a server-side framework/language like PHP or ASP.NET Core to create such APIs. See different examples below.
Here you find some useful resources for creating a simple API with PHP:
Simple PHP WebAPI (YouTube) + PowerPoint (PDF)
Consuming PHP Web API in WinForms App (YouTube) + PowerPoint (PDF)
Here you find some useful resources for creating a REST API with PHP:
PHP REST API (YouTube) + PowerPoint (PDF)
Consuming PHP REST API in WinForms App (YouTube) + PowerPoint (PDF)
Here you find some useful resources for creating APIs with ASP.NET:
ASP.NET Core CRUD Web API (YouTube) + PowerPoint (PDF)
Create a minimal API with ASP.NET Core (YouTube) + PowerPoint (PDF) - "Minimal APIs" is a new simplified approach for creating APIs with ASP.NET Core.
Learn more about Web Programming
Learn HTML Programming
Software Development and Enginnering Resources
Database Systems, Structured Query Language
Visual Studio and C# programming resources
Learn ASP.NET Web Programming