Content deleted Content added
Tag: Reverted |
TurboSuperA+ (talk | contribs) unsourced addition, possibly LLM-generated |
||
(5 intermediate revisions by 4 users not shown) | |||
Line 1:
{{short description|Connection between computers or programs}}
{{other uses}}
{{hatnote|"Api.php" redirects here. For the Wikipedia API, see {{Plain link|[Special:ApiHelp]}}.|selfref=true}}
In contrast to a [[user interface]], which connects a computer to a person, an application programming interface connects computers or pieces of software to each other. It is not intended to be used directly by a person (the [[end user]]) other than a [[computer programmer]]<ref name=":0" /> who is incorporating it into software. An API is often made up of different parts which act as tools or services that are available to the programmer. A program or a programmer that uses one of these parts is said to ''call'' that portion of the API. The calls that make up the API are also known as [[subroutine]]s, methods, requests, or [[communication endpoint|endpoint]]s. An API specification ''defines'' these calls, meaning that it explains how to use or implement them.
One purpose of APIs is to hide the internal details of how a system works, exposing only those parts a programmer will find useful and keeping them consistent even if the internal details later change. An API may be custom-built for a particular pair of systems, or it may be a shared standard allowing interoperability among many systems.▼
▲One purpose of APIs is to [[information hiding|hide the internal details]] of how a system works, exposing only those parts a programmer will find useful and keeping them consistent even if the internal details later change. An API may be custom-built for a particular pair of systems, or it may be a shared standard allowing [[interoperability]] among many systems.
The term API is often used to refer to web APIs, which allow communication between computers that are joined by the internet. There are also APIs for programming languages, software libraries, computer operating systems, and computer hardware. APIs originated in the 1940s, though the term did not emerge until the 1960s and 70s.▼
▲The term API is often used to refer to [[web
== Purpose ==
Line 73 ⟶ 76:
}}
</ref>
===Operating systems===
Line 193 ⟶ 197:
Client code may contain innovative or opportunistic usages that were not intended by the API designers. In other words, for a library with a significant user base, when an element becomes part of the public API, it may be used in diverse ways.<ref name="MendezBaudry2013">{{Cite conference |last1=Mendez |first1=Diego |conference=2013 IEEE 13th International Working Conference on Source Code Analysis and Manipulation (SCAM) |last2=Baudry |first2=Benoit |last3=Monperrus |first3=Martin |year=2013 |isbn=978-1-4673-5739-5 |pages=43–52 |title=Empirical evidence of large-scale diversity in API usage of object-oriented software |arxiv=1307.4062 |doi=10.1109/SCAM.2013.6648183 |s2cid=6890739 |url=https://hal.archives-ouvertes.fr/hal-00844753/document}}</ref>
On February 19, 2020, [[Akamai Technologies|Akamai]] published their annual “State of the Internet” report, showcasing the growing trend of cybercriminals targeting public API platforms at financial services worldwide. From December 2017 through November 2019, Akamai witnessed 85.42 billion credential violation attacks. About 20%, or 16.55 billion, were against hostnames defined as API endpoints. Of these, 473.5 million have targeted financial services sector organizations.<ref name="VentureBeat">{{Cite web |url=https://venturebeat.com/2020/02/19/akamai-cybercriminals-are-attacking-apis-at-financial-services-firms/ |title=Akamai: Cybercriminals are attacking APIs at financial services firms |last=Takanashi |first=Dean |date=19 February 2020 |website=Venture Beat |access-date=27 February 2020}}</ref>
==Documentation==
|