1+ <!DOCTYPE html>
2+ < html lang ="en "> < head > < meta http-equiv ="Content-Type " content ="text/html; charset=UTF-8 ">
3+ < meta charset ="utf-8 ">
4+ < meta http-equiv ="X-UA-Compatible " content ="IE=edge ">
5+ < meta name ="viewport " content ="width=device-width, initial-scale=1.0 ">
6+ < meta name ="description " content ="Full Stack Python shows how an entire Python web application is built and deployed. Each section of the guide explains a different key concept, from the server through the Python WSGI web framework to the front end JavaScript. ">
7+ < meta name ="author " content ="Matt Makai ">
8+ < link rel ="shortcut icon " href ="theme/img/full-stack-python-logo-bw.png ">
9+ < title > Full Stack Python</ title >
10+ <!-- Bootstrap core CSS -->
11+ < link href ="theme/css/fsp.css " rel ="stylesheet ">
12+ <!--[if lt IE 9]>
13+ <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
14+ <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
15+ <![endif]-->
16+ < style >
17+ html ,
18+ body {
19+ font-size : 18px ;
20+ color : # 222 ;
21+ background : # fefefe ;
22+ }
23+ body {
24+ padding-top : 30px ;
25+ }
26+ .footer {
27+ padding : 20px 0 30px 0 ;
28+ }
29+ a , a : hover {border-bottom : 1px dotted; color : # 444 ;}
30+ a : hover {text-decoration : none; color : # 000 ;}
31+ .logo-title {font-size : 56px ; color : # 403072 ; padding-top : 80px ;
32+ font-family : "News Cycle" , "Arial Narrow Bold" , sans-serif;
33+ font-weight : bold; line-height : 30px ; margin-left : 5px ;}
34+ .logo-title a , .logo-title a : hover {color : # 000 ; text-decoration : none;
35+ border-bottom : none;}
36+ .logo-title a : hover {color : gray;}
37+ .logo-image {vertical-align : top; border : none;}
38+ a .list-group-item .active {background : # 444 ; border : 1px solid # 222 ;}
39+ a .list-group-item .active : hover {background : # 444 ; border : 1px solid # 222 ;}
40+ # sidebar {margin-top : 30px ;}
41+
42+ @media (max-width : 600px ) {
43+ .logo-header-section {
44+ margin : 20px 32px 0 0 ;
45+ }
46+ }
47+ </ style >
48+
49+ < script type ="text/javascript ">
50+ var _gaq = _gaq || [ ] ;
51+ _gaq . push ( [ '_setAccount' , 'UA-19910497-7' ] ) ;
52+ _gaq . push ( [ '_trackPageview' ] ) ;
53+
54+ ( function ( ) {
55+ var ga = document . createElement ( 'script' ) ; ga . type = 'text/javascript' ; ga . async = true ;
56+ ga . src = ( 'https:' == document . location . protocol ? 'https://ssl' : 'http://www' ) + '.google-analytics.com/ga.js' ;
57+ var s = document . getElementsByTagName ( 'script' ) [ 0 ] ; s . parentNode . insertBefore ( ga , s ) ;
58+ } ) ( ) ;
59+ </ script >
60+ </ head >
61+
62+ < body >
63+ < a href ="https://github.com/makaimc/fullstackpython.github.com " class ="github ">
64+ < img style ="position: absolute; top: 0; right: 0; border: 0; " src ="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png " alt ="Fork me on GitHub " />
65+ </ a >
66+ < div class ="container ">
67+ < div class ="row ">
68+ < div class ="col-md-12 ">
69+ < div class ="logo-header-section ">
70+ < a href ="/ " style ="text-decoration: none; border: none; "> < img src ="theme/img/full-stack-python-logo-bw.png " height ="42 " width ="42 " class ="logo-image " /> </ a >
71+ < span class ="logo-title "> < a href ="/ "> Full Stack Python</ a > </ span >
72+ </ div >
73+ </ div >
74+ </ div > < div class ="row ">
75+ < div class ="col-md-8 ">
76+ < h1 > API Integration</ h1 >
77+ < p > The majority of production Python web applications rely on several
78+ externally hosted application programming interfaces (APIs). APIs are also
79+ commonly referred to as third party services or external platforms.
80+ Examples include < a class ="reference external " href ="https://www.twilio.com/ "> Twilio</ a > for messaging and voice
81+ services, < a class ="reference external " href ="https://stripe.com/ "> Stripe</ a > for payment processing, and
82+ < a class ="reference external " href ="https://disqus.com/ "> Disqus</ a > for embedded webpage comments.</ p >
83+ < p > There are many articles about proper API design but best practices for
84+ integrating APIs is less commonly written about. However, this subject
85+ continuously grows in importance because APIs provide critical functionality
86+ across many implementation areas.</ p >
87+ < div class ="section " id ="api-integration-resources ">
88+ < h2 > API Integration Resources</ h2 >
89+ < p > < a class ="reference external " href ="http://www.youtube.com/watch?v=iGP8DQIqxXs "> Making Django Play Nice With Third Party Services</ a > (DjangoCon 2013 video)</ p >
90+ </ div >
91+
92+ < br />
93+ Next read the
94+ < a href ="/source-control.html "> source control</ a > section.
95+
96+ </ div >
97+ < div class ="col-md-offset-1 col-md-3 " id ="sidebar ">
98+ < div class ="list-group ">
99+ < a href ="/introduction.html " class ="list-group-item "> Introduction</ a >
100+ < a href ="/servers.html " class ="list-group-item "> Servers</ a >
101+ < a href ="/operating-systems.html " class ="list-group-item "> Operating Systems</ a >
102+ < a href ="/web-servers.html " class ="list-group-item "> Web Servers</ a >
103+ < a href ="/platform-as-a-service.html " class ="list-group-item "> Platform-as-a-service</ a >
104+ < a href ="/databases.html " class ="list-group-item "> Databases</ a >
105+ < a href ="/wsgi-servers.html " class ="list-group-item "> WSGI Servers</ a >
106+ < a href ="/web-frameworks.html " class ="list-group-item "> Web Frameworks</ a >
107+ < a href ="/task-queues.html " class ="list-group-item "> Task Queues</ a >
108+ < a href ="/static-content.html " class ="list-group-item "> Static Content</ a >
109+ < a href ="/caching.html " class ="list-group-item "> Caching</ a >
110+ < a href ="/web-browsers.html " class ="list-group-item "> Web Browsers</ a >
111+ < a href ="/web-application-security.html " class ="list-group-item "> Web Application Security</ a >
112+ < a href ="/monitoring.html " class ="list-group-item "> Monitoring</ a >
113+ < a href ="/web-analytics.html " class ="list-group-item "> Web Analytics</ a >
114+ < a href ="/api-integration.html " class ="list-group-item active "> API Integration</ a >
115+ < a href ="/source-control.html " class ="list-group-item "> Source Control</ a >
116+ < a href ="/configuration-management.html " class ="list-group-item "> Configuration Management</ a >
117+ < a href ="/dependency-management.html " class ="list-group-item "> Application Dependencies</ a >
118+ < a href ="/no-sql-datastore.html " class ="list-group-item "> NoSQL Data Stores</ a >
119+ < a href ="/about-author.html " class ="list-group-item "> About</ a >
120+ < a href ="/change-log.html " class ="list-group-item "> Change Log</ a >
121+ </ div >
122+ </ div > </ div >
123+ < hr />
124+ < div class ="footer pull-right ">
125+ < a href ="http://www.mattmakai.com/ " class ="underline "> Matt Makai</ a > 2014
126+ </ div >
127+ </ div >
128+
129+ < script src ="http://code.jquery.com/jquery-2.1.0.min.js "> </ script >
130+ < script src ="theme/js/bootstrap.min.js "> </ script >
131+ </ body >
132+ </ html >
0 commit comments