Most APIs for online applications (Facebook, Twitter, Shipstation, etc) are in the form of an HTTP API. An HTTP endpoint is an online URL you can make requests to, similarly to how a browser would make requests to a normal website. The HTTP server would take requests with parameters and return relevant data. For example, the project I'm working on uses the crytocurrency trading platform's API. The URL to get the current Bitcoin price in USD can be taken by sending a request to this URL: https://bittrex.com/api/v2.0/pub/currencies/GetBTCPrice, The data is in a JSON format, so it can easily be read by programs.
If an HTTP API is commonly used, especially if it requires authentication in some way, it's common for there to exist a wrapper for it in most languages. A wrapper still ends requests, but instead of writing code to send the request you can simply call a function such as "getBitcoinPrice". They normally come complete with error handling, to make things easier. For authentication, they usually automate the process by only requiring you to supply an API key once for it to be used in later requests.