blob: 4d01f4b1b8e8a33b9df3be9d69783adcbcbd5c70 [file] [log] [blame]
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -04001<?xml version="1.0" encoding="ascii"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5<head>
6 <title>oauth2client.client.OAuth2WebServerFlow</title>
7 <link rel="stylesheet" href="epydoc.css" type="text/css" />
8 <script type="text/javascript" src="epydoc.js"></script>
9</head>
10
11<body bgcolor="white" text="black" link="blue" vlink="#204080"
12 alink="#204080">
13<!-- ==================== NAVIGATION BAR ==================== -->
14<table class="navbar" border="0" width="100%" cellpadding="0"
15 bgcolor="#a0c0ff" cellspacing="0">
16 <tr valign="middle">
17
18 <!-- Tree link -->
19 <th>&nbsp;&nbsp;&nbsp;<a
20 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
21
22 <!-- Index link -->
23 <th>&nbsp;&nbsp;&nbsp;<a
24 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
25
26 <!-- Help link -->
27 <th>&nbsp;&nbsp;&nbsp;<a
28 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
29
30 <th class="navbar" width="100%"></th>
31 </tr>
32</table>
33<table width="100%" cellpadding="0" cellspacing="0">
34 <tr valign="top">
35 <td width="100%">
36 <span class="breadcrumbs">
37 <a href="oauth2client-module.html">Package&nbsp;oauth2client</a> ::
38 <a href="oauth2client.client-module.html">Module&nbsp;client</a> ::
39 Class&nbsp;OAuth2WebServerFlow
40 </span>
41 </td>
42 <td>
43 <table cellpadding="0" cellspacing="0">
44 <!-- hide/show private -->
45 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
46 onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
47 <tr><td align="right"><span class="options"
48 >[<a href="frames.html" target="_top">frames</a
49 >]&nbsp;|&nbsp;<a href="oauth2client.client.OAuth2WebServerFlow-class.html"
50 target="_top">no&nbsp;frames</a>]</span></td></tr>
51 </table>
52 </td>
53 </tr>
54</table>
55<!-- ==================== CLASS DESCRIPTION ==================== -->
56<h1 class="epydoc">Class OAuth2WebServerFlow</h1><p class="nomargin-top"><span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow">source&nbsp;code</a></span></p>
57<center>
Joe Gregorio746096f2012-06-15 10:53:36 -040058<center> <map id="class_hierarchy_for_oauth2webs" name="class_hierarchy_for_oauth2webs">
59<area shape="rect" href="oauth2client.client.Flow-class.html" title="Flow" alt="" coords="59,5,107,32"/>
60<area shape="rect" href="oauth2client.client.OAuth2WebServerFlow-class.html" title="OAuth2WebServerFlow" alt="" coords="5,61,160,88"/>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040061</map>
Joe Gregorio746096f2012-06-15 10:53:36 -040062 <img src="class_hierarchy_for_oauth2webs.gif" alt='' usemap="#class_hierarchy_for_oauth2webs" ismap="ismap" class="graph-without-title" />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040063</center>
64</center>
65<hr />
66<pre class="literalblock">
67Does the Web Server Flow for OAuth 2.0.
68
Joe Gregorio1b425aa2012-08-24 12:04:34 -040069OAuth2WebServerFlow objects may be safely pickled and unpickled.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040070
71</pre>
72
73<!-- ==================== INSTANCE METHODS ==================== -->
74<a name="section-InstanceMethods"></a>
75<table class="summary" border="1" cellpadding="3"
76 cellspacing="0" width="100%" bgcolor="white">
77<tr bgcolor="#70b0f0" class="table-header">
78 <td colspan="2" class="table-header">
79 <table border="0" cellpadding="0" cellspacing="0" width="100%">
80 <tr valign="top">
81 <td align="left"><span class="table-header">Instance Methods</span></td>
82 <td align="right" valign="top"
83 ><span class="options">[<a href="#section-InstanceMethods"
84 class="privatelink" onclick="toggle_private();"
85 >hide private</a>]</span></td>
86 </tr>
87 </table>
88 </td>
89</tr>
90<tr>
91 <td width="15%" align="right" valign="top" class="summary">
92 <span class="summary-type">&nbsp;</span>
93 </td><td class="summary">
94 <table width="100%" cellpadding="0" cellspacing="0" border="0">
95 <tr>
Joe Gregorio1b425aa2012-08-24 12:04:34 -040096 <td><span class="summary-sig"><a href="oauth2client.client.OAuth2WebServerFlow-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">*args</span>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040097 <span class="summary-sig-arg">**kwargs</span>)</span><br />
98 Constructor for OAuth2WebServerFlow.</td>
99 <td align="right" valign="top">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400100 <span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400101
102 </td>
103 </tr>
104 </table>
105
106 </td>
107 </tr>
108<tr>
109 <td width="15%" align="right" valign="top" class="summary">
110 <span class="summary-type">&nbsp;</span>
111 </td><td class="summary">
112 <table width="100%" cellpadding="0" cellspacing="0" border="0">
113 <tr>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400114 <td><span class="summary-sig"><a href="oauth2client.client.OAuth2WebServerFlow-class.html#step1_get_authorize_url" class="summary-sig-name">step1_get_authorize_url</a>(<span class="summary-sig-arg">*args</span>,
115 <span class="summary-sig-arg">**kwargs</span>)</span><br />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400116 Returns a URI to redirect to the provider.</td>
117 <td align="right" valign="top">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400118 <span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400119
120 </td>
121 </tr>
122 </table>
123
124 </td>
125 </tr>
126<tr>
127 <td width="15%" align="right" valign="top" class="summary">
128 <span class="summary-type">&nbsp;</span>
129 </td><td class="summary">
130 <table width="100%" cellpadding="0" cellspacing="0" border="0">
131 <tr>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400132 <td><span class="summary-sig"><a href="oauth2client.client.OAuth2WebServerFlow-class.html#step2_exchange" class="summary-sig-name">step2_exchange</a>(<span class="summary-sig-arg">*args</span>,
133 <span class="summary-sig-arg">**kwargs</span>)</span><br />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400134 Exhanges a code for OAuth2Credentials.</td>
135 <td align="right" valign="top">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400136 <span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400137
138 </td>
139 </tr>
140 </table>
141
142 </td>
143 </tr>
144 <tr>
145 <td colspan="2" class="summary">
146 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
147 <code>__delattr__</code>,
148 <code>__format__</code>,
149 <code>__getattribute__</code>,
150 <code>__hash__</code>,
151 <code>__new__</code>,
152 <code>__reduce__</code>,
153 <code>__reduce_ex__</code>,
154 <code>__repr__</code>,
155 <code>__setattr__</code>,
156 <code>__sizeof__</code>,
157 <code>__str__</code>,
158 <code>__subclasshook__</code>
159 </p>
160 </td>
161 </tr>
162</table>
163<!-- ==================== PROPERTIES ==================== -->
164<a name="section-Properties"></a>
165<table class="summary" border="1" cellpadding="3"
166 cellspacing="0" width="100%" bgcolor="white">
167<tr bgcolor="#70b0f0" class="table-header">
168 <td colspan="2" class="table-header">
169 <table border="0" cellpadding="0" cellspacing="0" width="100%">
170 <tr valign="top">
171 <td align="left"><span class="table-header">Properties</span></td>
172 <td align="right" valign="top"
173 ><span class="options">[<a href="#section-Properties"
174 class="privatelink" onclick="toggle_private();"
175 >hide private</a>]</span></td>
176 </tr>
177 </table>
178 </td>
179</tr>
180 <tr>
181 <td colspan="2" class="summary">
182 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
183 <code>__class__</code>
184 </p>
185 </td>
186 </tr>
187</table>
188<!-- ==================== METHOD DETAILS ==================== -->
189<a name="section-MethodDetails"></a>
190<table class="details" border="1" cellpadding="3"
191 cellspacing="0" width="100%" bgcolor="white">
192<tr bgcolor="#70b0f0" class="table-header">
193 <td colspan="2" class="table-header">
194 <table border="0" cellpadding="0" cellspacing="0" width="100%">
195 <tr valign="top">
196 <td align="left"><span class="table-header">Method Details</span></td>
197 <td align="right" valign="top"
198 ><span class="options">[<a href="#section-MethodDetails"
199 class="privatelink" onclick="toggle_private();"
200 >hide private</a>]</span></td>
201 </tr>
202 </table>
203 </td>
204</tr>
205</table>
206<a name="__init__"></a>
207<div>
208<table class="details" border="1" cellpadding="3"
209 cellspacing="0" width="100%" bgcolor="white">
210<tr><td>
211 <table width="100%" cellpadding="0" cellspacing="0" border="0">
212 <tr valign="top"><td>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400213 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">*args</span>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400214 <span class="sig-arg">**kwargs</span>)</span>
215 <br /><em class="fname">(Constructor)</em>
216 </h3>
217 </td><td align="right" valign="top"
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400218 ><span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400219 </td>
220 </tr></table>
221
222 <pre class="literalblock">
223Constructor for OAuth2WebServerFlow.
224
225Args:
226 client_id: string, client identifier.
227 client_secret: string client secret.
228 scope: string or list of strings, scope(s) of the credentials being
229 requested.
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400230 redirect_uri: string, Either the string 'urn:ietf:wg:oauth:2.0:oob' for
231 a non-web-based application, or a URI that handles the callback from
232 the authorization server.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400233 user_agent: string, HTTP User-Agent to provide for this application.
234 auth_uri: string, URI for authorization endpoint. For convenience
235 defaults to Google's endpoints but any OAuth 2.0 provider can be used.
236 token_uri: string, URI for token endpoint. For convenience
237 defaults to Google's endpoints but any OAuth 2.0 provider can be used.
238 **kwargs: dict, The keyword arguments are all optional and required
239 parameters for the OAuth calls.
240
241</pre>
242 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400243 <dt>Decorators:</dt>
244 <dd><ul class="nomargin-top">
245 <li><code>@util.positional(4)</code></li>
246 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400247 <dt>Overrides:
248 object.__init__
249 </dt>
250 </dl>
251</td></tr></table>
252</div>
253<a name="step1_get_authorize_url"></a>
254<div>
255<table class="details" border="1" cellpadding="3"
256 cellspacing="0" width="100%" bgcolor="white">
257<tr><td>
258 <table width="100%" cellpadding="0" cellspacing="0" border="0">
259 <tr valign="top"><td>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400260 <h3 class="epydoc"><span class="sig"><span class="sig-name">step1_get_authorize_url</span>(<span class="sig-arg">*args</span>,
261 <span class="sig-arg">**kwargs</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400262 </h3>
263 </td><td align="right" valign="top"
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400264 ><span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400265 </td>
266 </tr></table>
267
268 <pre class="literalblock">
269Returns a URI to redirect to the provider.
270
271Args:
272 redirect_uri: string, Either the string 'urn:ietf:wg:oauth:2.0:oob' for
273 a non-web-based application, or a URI that handles the callback from
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400274 the authorization server. This parameter is deprecated, please move to
275 passing the redirect_uri in via the constructor.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400276
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400277Returns:
278 A URI as a string to redirect the user to begin the authorization flow.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400279
280</pre>
281 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400282 <dt>Decorators:</dt>
283 <dd><ul class="nomargin-top">
284 <li><code>@util.positional(1)</code></li>
285 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400286 </dl>
287</td></tr></table>
288</div>
289<a name="step2_exchange"></a>
290<div>
291<table class="details" border="1" cellpadding="3"
292 cellspacing="0" width="100%" bgcolor="white">
293<tr><td>
294 <table width="100%" cellpadding="0" cellspacing="0" border="0">
295 <tr valign="top"><td>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400296 <h3 class="epydoc"><span class="sig"><span class="sig-name">step2_exchange</span>(<span class="sig-arg">*args</span>,
297 <span class="sig-arg">**kwargs</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400298 </h3>
299 </td><td align="right" valign="top"
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400300 ><span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400301 </td>
302 </tr></table>
303
304 <pre class="literalblock">
305Exhanges a code for OAuth2Credentials.
306
307Args:
308 code: string or dict, either the code as a string, or a dictionary
309 of the query parameters to the redirect_uri, which contains
310 the code.
311 http: httplib2.Http, optional http instance to use to do the fetch
312
Joe Gregorio746096f2012-06-15 10:53:36 -0400313Returns:
314 An OAuth2Credentials object that can be used to authorize requests.
315
316Raises:
317 FlowExchangeError if a problem occured exchanging the code for a
318 refresh_token.
319
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400320</pre>
321 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400322 <dt>Decorators:</dt>
323 <dd><ul class="nomargin-top">
324 <li><code>@util.positional(2)</code></li>
325 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400326 </dl>
327</td></tr></table>
328</div>
329<br />
330<!-- ==================== NAVIGATION BAR ==================== -->
331<table class="navbar" border="0" width="100%" cellpadding="0"
332 bgcolor="#a0c0ff" cellspacing="0">
333 <tr valign="middle">
334
335 <!-- Tree link -->
336 <th>&nbsp;&nbsp;&nbsp;<a
337 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
338
339 <!-- Index link -->
340 <th>&nbsp;&nbsp;&nbsp;<a
341 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
342
343 <!-- Help link -->
344 <th>&nbsp;&nbsp;&nbsp;<a
345 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
346
347 <th class="navbar" width="100%"></th>
348 </tr>
349</table>
350<table border="0" cellpadding="0" cellspacing="0" width="100%%">
351 <tr>
352 <td align="left" class="footer">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400353 Generated by Epydoc 3.0.1 on Fri Aug 24 11:02:07 2012
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400354 </td>
355 <td align="right" class="footer">
356 <a target="mainFrame" href="http://epydoc.sourceforge.net"
357 >http://epydoc.sourceforge.net</a>
358 </td>
359 </tr>
360</table>
361
362<script type="text/javascript">
363 <!--
364 // Private objects are initially displayed (because if
365 // javascript is turned off then we want them to be
366 // visible); but by default, we want to hide them. So hide
367 // them unless we have a cookie that says to show them.
368 checkCookie();
369 // -->
370</script>
371</body>
372</html>