Skip to content

Latest commit

 

History

History
97 lines (51 loc) · 8.31 KB

VIDEO_1_SCRIPT.md

File metadata and controls

97 lines (51 loc) · 8.31 KB

video storyboard https://docs.google.com/presentation/d/1WAlxxo-neqac5hczq8sCTMYx9jqelwvZ

Video 1: What are APIs

  • What are APIs
  • Brief history of APIs (when and how APIs were born)
  • Types of APIs
  • Benefits of APIs

Hello! My name is … and today I'm going to talk about APIs. Maybe you've heard of APIs before because they're in almost all the technology we use in our everyday lives.

We're going to dive a little bit into their history and origins, explaining what they are, what types of APIs exist, and what are their benefits. Finally, we will show you some API examples to make the concept and its use clearer.

Let’s go!

What are APIs

API is the acronym for Application Programming Interface. APIs are a tool that facilitates the communication and relationship between several applications. It’s the way apps are able to exchange messages or data and understand each other.

APIs allow your products and services to communicate with others, without needing to know how they are implemented. An API is a set of definitions and protocols used to develop and integrate application software.

For communicating efficiently with each other, we need to be on the same page; it's the same for machines. You see, API is a user interface that enables interaction and communication between software and a person.

Each API is designed in a particular programming language and with distinct specifications that define it. APIs may include specifications for data structures, routines, object classes, or variables; all based on your selected interface.

In that complex and fascinating area everybody needs some guidance. A cartography. That's why each API use to offer a complete and effective documentation, such as a set of tutorials, manuals, and best practices for that programming interface.

APIs are an essential part of the development process of any application, but, in spite of their importance, they remain hidden from the end-user. They are the great unknowns. The magic trick that makes things work!

Brief history of APIs

Have you ever wondered when and how APIs were born? Do you know how old they are? Not that long ago... The API story took baby steps around the beginning of the new millennium. APIs began growing very quickly, becoming soon a fundamental piece of the digital world where we live.

The official arrival and introduction to the public of APIs took place with the dissertation written by Roy Fielding, one of the main authors of the HTTP specification, also creator of the Representational State Transfer (REST) architectural style. That was a fundamental step to understanding the childhood adventures and quick growth of APIs. As well their misfortunes, and dreams. Their initial history, after all.

Beyond emotions, the beginning of APIs took solid steps with a certain constancy thanks to e-commerce. At the end of 2000, eBay launched its API together with a program that, trying to boost the area of e-commerce solutions, also encouraged APIs in the process. Moreover, eBay was not alone in this endeavor: in the summer of 2002, the giant Amazon followed suit.

Amazon put the icing on the cake with the launch of Amazon Web Services. With this platform, the company enabled developers to incorporate Amazon content and features into their own web pages, making it possible for third-party sites to search for and display the company's products.

Social networks were the next springboard where APIs gain momentum: actually, a few months after its launch in 2004, Flickr made its platform available to developers. And that was one of the secrets of its quick success. Yahoo took over the social network when Flickr's REST API quickly made it the preferred photo platform. From that moment, many bloggers could easily integrate their images into their websites.

Two years later, in 2006, Facebook followed Flickr's steps and opened the platform and its first API to developers. A large amount of data was suddenly available: connections, photos, events, and personal information. Facebook became an endless source of information.

Just a month later, Twitter joined the game as well. It seemed like APIs were here to stay.

And while the social platforms were experimenting in the promising world of APIs, Google was going one step further, preparing the way to integrate its tools into third-party sites: just six months after the launch of Google Maps, the Mountain View company launched the mapping service API. They did so in response to the countless fake platforms that emerged based on hacking information from Google's tool.

After the success of its first attempt, Amazon took its APIs to the next level. Far from focusing exclusively on e-commerce, the company opted to create an entire infrastructure to support developers based on REST APIs: first with Amazon S3, to store data in the cloud, and later with Amazon EC2, to provision virtual servers in their data centers.

While all this was happening on the internet, on our computers, smartphones were the tool that finally put APIs in the palm of our hands, carrying them with us wherever we go. Since 2010, the prevalence of the public API skyrocketed. Smartphones finally brought APIs to our daily lives, every day, every hour, making life easier for every user that was coming and going. We now had support in understanding the world with the help of machines that communicated with each other fluently. All this information is within grasp to everybody, merely one-click away.

E-commerce, Social media, cloud computing, mobility… Without a doubt, we are definitely living in the Web API era.

Types of APIs

Now that we have covered the origins and popularization of API, let's talk about the types of APIs.

  • Web services APIs: these are the application development interfaces that enable the exchange of information between an application and a web service. (A web service is a software that provides access to a particular service via a URL).

    There are four types of Web services APIs:

    • SOAP (Simple Object Access Protocol), a standard protocol for exchanging information and data in XML between two objects.

    • XML-RPC, a remote procedure call protocol that uses XML as the data format and HTTP calls as the communication system.

    • JSON-RPC, same as XML-RPC but in JSON format.

    • REST (Representational State Transfer), a software architecture for hypermedia systems on the World Wide Web; a REST API often uses the HTTP protocol.

  • Library-based APIs: These are APIs designed for a specific programming language. They are a means to reuse libraries from other software or other parts of the same software.

  • Function APIs in operating systems: software programs are continuously interacting with operating systems (OS). In many cases, the way they do so is through APIs. Operating systems such as Windows have APIs that enable such communication between programs and the OS.

Benefits of Web APIs

We have highlighted how APIs allow applications to share the information previously, this is called Integration. Now let's discuss other benefits that APIs have:

  • Adaptation: it is a fact that time change thing and APIs help anticipate changes. When working on this technology, data migration can be better supported, while offering a better review of the information.

  • Automation: Through APIs, workflows can be updated so that they can be done in less time while being more productive.

  • Flexibility: enabling API access to app components provides flexibility in the delivery of services and information.

  • Customization: through APIs, any user can customize content and services.

  • Efficiency: when access to an API is provided, the information is made available immediately.

  • Integration: APIs allow information to be easily shared between applications or products. This enables an integrated user experience.

Goodbye to viewer

I hope that the idea of what an API is and its environment are clearer now to you. It’s good to know and value what was the long, winding road and previous efforts made before a tool was implemented.

If you have any questions about today's video, do not hesitate to ask through the AsyncAPI Slack or through our GitHub Discussions. Join our Open-Source community and participate!


  • The italic and bold text is the script of the short version of the video.