63 captures
12 Jun 2014 - 03 Dec 2025
Oct NOV Dec
29
2020 2021 2022
success
fail

About this capture

COLLECTED BY

Collection: Common Crawl

Web crawl data from Common Crawl.
TIMESTAMPS

The Wayback Machine - http://web.archive.org/web/20211129214922/https://www.fullstackpython.com/application-programming-interfaces.html
 

Full Stack Python logoFull Stack Python
All topics | Blog | Supporter's Edition | @fullstackpython | Facebook | What's new?

Application Programming Interfaces






Application programming interfaces (APIs) provide machine-readable data transfer and signaling between applications.

Why are APIs important?


HTML, CSS and JavaScript create human-readable webpages. However, those webpages are not easily consumable by other machines.

Numerous scraping programs and libraries exist to rip data out of HTML but it's simpler to consume data through APIs. For example, if you want the content of a news article it's easier to get the content through an API than to scrap the text out of the HTML.

Key API concepts


There are several key concepts that get thrown around in the APIs world. It's best to understand these ideas first before diving into the API literature.



Representation State Transfer (REST)



Webhooks



JavaScript Object Notation (JSON) and Extensible Markup Language (XML)



Endpoints


What are Webhooks?


A webhook is a user-defined HTTP callback to a URL that executes when a system condition is met. The call alerts the second system via a POST or GET request and often passes data as well.

Webhooks are important because they enable two-way communication initiation for APIs. Webhook flexibility comes in from their definition by the API user instead of the API itself.

For example, in the Twilio API when a text message is sent to a Twilio phone number Twilio sends an HTTP POST request webhook to the URL specified by the user. The URL is defined in a text box on the number's page on Twilio as shown below.

Webhook definition in the Twilio API.

API open source projects



Swagger is an open source project written in Scala that defines a standard interface for RESTful APIs.

API resources




Zapier has an APIs 101 free guide for what APIs are, why they are valuable and how to use them properly. 



What is REST? is a well-written overview of the REpresentational State Transfer (REST) architecture proposed by Roy Fielding in his dissertation.



The list of public APIs in this Git repository is incredible and worth examining if you are looking to find data sources for your projects.



GET PUT POST is a newsletter just about APIs. Past issues have included interviews with the developers behind Stripe, Dropbox and Coinbase.



Designing robust and predictable APIs with idempotency discusses designing APIs for idempotency, which means guaranteeing that side effects only occur once. This topic is especially important with web APIs because network connections are and will always be unreliable so you need to build knowing network problems will happen.



What RESTful actually means does a fantastic job of laying out the REST principles in plain language terms while giving some history on how they came to be.



What is a webhook?byNick Quinlan is a plain English explanation for what webhooks are and why they are necessary in the API world.



Simplicity and Utility, or, Why SOAP Lost provides context for why JSON-based web services are more common today than SOAP which was popular in the early 2000s.


APIs learning checklist




Learn the API concepts of machine-to-machine communication with JSON and XML, endpoints and webhooks.



Integrate an API such as Twilio or Stripe into your web application. Read the API integration section for more information.



Use a framework to create an API for your own application. Learn about web API frameworks on the API creation page.



Expose your web application's API so other applications can consume data you want to share.


Do you want to know more about integrating or creating APIs?





How do I integrate existing web APIs into my application?
 




How do I create an API for my web application?
 




How do I execute code outside the HTTP request-response cycle?
 





Sponsored By


AssemblyAI logo
The most accurate speech-to-text API. Built for Python developers.





Table of Contents



1. Introduction 2. Development Environments 3. Data 4. Web Development Web Frameworks Django Flask Bottle Pyramid TurboGears Falcon Morepath Sanic Other Web Frameworks Template Engines Jinja2 Mako Django Templates Web Design HTML Cascading Style Sheets (CSS) Responsive Design Minification CSS Frameworks Bootstrap Foundation JavaScript React Vue.js Angular Task Queues Celery Redis Queue (RQ) Dramatiq Static Site Generators Pelican Lektor MkDocs Testing Unit Testing Integration Testing Debugging Code Metrics Networking HTTPS WebSockets WebRTC Web APIs Microservices Webhooks Bots API Creation API Frameworks Django REST Framework API Integration Twilio Stripe Slack Okta Security SQL Injection CSRF 5. Deployment 6. DevOps Changelog What Full Stack Means About the Author Future Directions Page Statuses ...or view the full table of contents.



Full Stack Python


Full Stack Python is an open book that explains concepts in plain language and provides helpful resources for those topics.

Updates via Twitter & Facebook.



Chapters



1. Introduction 2. Development Environments 3. Data 4. Web Development » Web APIs 5. Deployment 6. DevOps Changelog What Full Stack Means About the Author Future Directions Page Statuses ...or view the full table of contents.

 



Matt Makai 2012-2021