• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE html><!-- This page is a placeholder for generated extensions api doc. Note:
2    1) The <head> information in this page is significant, should be uniform
3       across api docs and should be edited only with knowledge of the
4       templating mechanism.
5    3) All <body>.innerHTML is genereated as an rendering step. If viewed in a
6       browser, it will be re-generated from the template, json schema and
7       authored overview content.
8    4) The <body>.innerHTML is also generated by an offline step so that this
9       page may easily be indexed by search engines.
10--><html xmlns="http://www.w3.org/1999/xhtml"><head>
11    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
12    <link href="css/ApiRefStyles.css" rel="stylesheet" type="text/css">
13    <link href="css/print.css" rel="stylesheet" type="text/css" media="print">
14    <script type="text/javascript" src="../../../third_party/jstemplate/jstemplate_compiled.js">
15    </script>
16    <script type="text/javascript" src="js/api_page_generator.js"></script>
17    <script type="text/javascript" src="js/bootstrap.js"></script>
18    <script type="text/javascript" src="js/sidebar.js"></script>
19  <title>Proxy Settings - Google Chrome Extensions - Google Code</title></head>
20  <body>  <div id="gc-container" class="labs">
21      <div id="devModeWarning">
22        You are viewing extension docs in chrome via the 'file:' scheme: are you expecting to see local changes when you refresh? You'll need run chrome with --allow-file-access-from-files.
23      </div>
24      <!-- SUBTEMPLATES: DO NOT MOVE FROM THIS LOCATION -->
25      <!-- In particular, sub-templates that recurse, must be used by allowing
26           jstemplate to make a copy of the template in this section which
27           are not operated on by way of the jsskip="true" -->
28      <div style="display:none">
29
30        <!-- VALUE -->
31        <div id="valueTemplate">
32          <dt>
33            <var>paramName</var>
34              <em>
35
36                <!-- TYPE -->
37                <div style="display:inline">
38                  (
39                    <span class="optional">optional</span>
40                    <span class="enum">enumerated</span>
41                    <span id="typeTemplate">
42                      <span>
43                        <a> Type</a>
44                      </span>
45                      <span>
46                        <span>
47                          array of <span><span></span></span>
48                        </span>
49                        <span>paramType</span>
50                        <span></span>
51                      </span>
52                    </span>
53                  )
54                </div>
55
56              </em>
57          </dt>
58          <dd class="todo">
59            Undocumented.
60          </dd>
61          <dd>
62            Description of this parameter from the json schema.
63          </dd>
64          <dd>
65            This parameter was added in version
66            <b><span></span></b>.
67            You must omit this parameter in earlier versions,
68            and you may omit it in any version.  If you require this
69            parameter, the manifest key
70            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
71            can ensure that your extension won't be run in an earlier browser version.
72          </dd>
73
74          <!-- OBJECT PROPERTIES -->
75          <dd>
76            <dl>
77              <div>
78                <div>
79                </div>
80              </div>
81            </dl>
82          </dd>
83
84          <!-- OBJECT METHODS -->
85          <dd>
86            <div></div>
87          </dd>
88
89          <!-- OBJECT EVENT FIELDS -->
90          <dd>
91            <div></div>
92          </dd>
93
94          <!-- FUNCTION PARAMETERS -->
95          <dd>
96            <div></div>
97          </dd>
98
99        </div> <!-- /VALUE -->
100
101        <div id="functionParametersTemplate">
102          <h5>Parameters</h5>
103          <dl>
104            <div>
105              <div>
106              </div>
107            </div>
108          </dl>
109        </div>
110      </div> <!-- /SUBTEMPLATES -->
111
112  <a id="top"></a>
113    <div id="skipto">
114      <a href="#gc-pagecontent">Skip to page content</a>
115      <a href="#gc-toc">Skip to main navigation</a>
116    </div>
117    <!-- API HEADER -->
118    <table id="header" width="100%" cellspacing="0" border="0">
119      <tbody><tr>
120        <td valign="middle"><a href="http://code.google.com/"><img src="images/code_labs_logo.gif" height="43" width="161" alt="Google Code Labs" style="border:0; margin:0;"></a></td>
121        <td valign="middle" width="100%" style="padding-left:0.6em;">
122          <form action="http://www.google.com/cse" id="cse" style="margin-top:0.5em">
123            <div id="gsc-search-box">
124              <input type="hidden" name="cx" value="002967670403910741006:61_cvzfqtno">
125              <input type="hidden" name="ie" value="UTF-8">
126              <input type="text" name="q" value="" size="55">
127              <input class="gsc-search-button" type="submit" name="sa" value="Search">
128              <br>
129              <span class="greytext">e.g. "page action" or "tabs"</span>
130            </div>
131          </form>
132
133          <script type="text/javascript" src="http://www.google.com/jsapi"></script>
134          <script type="text/javascript">google.load("elements", "1", {packages: "transliteration"});</script>
135          <script type="text/javascript" src="http://www.google.com/coop/cse/t13n?form=cse&amp;t13n_langs=en"></script>
136          <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse&amp;lang=en"></script>
137        </td>
138      </tr>
139    </tbody></table>
140
141    <div id="codesiteContent" class="">
142
143      <a id="gc-topnav-anchor"></a>
144      <div id="gc-topnav">
145        <h1>Google Chrome Extensions (<a href="http://code.google.com/labs/">Labs</a>)</h1>
146        <ul id="home" class="gc-topnav-tabs">
147          <li id="home_link">
148            <a href="index.html" title="Google Chrome Extensions home page">Home</a>
149          </li>
150          <li id="docs_link">
151            <a href="docs.html" title="Official Google Chrome Extensions documentation">Docs</a>
152          </li>
153          <li id="faq_link">
154            <a href="faq.html" title="Answers to frequently asked questions about Google Chrome Extensions">FAQ</a>
155          </li>
156          <li id="samples_link">
157            <a href="samples.html" title="Sample extensions (with source code)">Samples</a>
158          </li>
159          <li id="group_link">
160            <a href="http://groups.google.com/a/chromium.org/group/chromium-extensions" title="Google Chrome Extensions developer forum">Group</a>
161          </li>
162        </ul>
163      </div> <!-- end gc-topnav -->
164
165    <div class="g-section g-tpl-170">
166      <!-- SIDENAV -->
167      <div class="g-unit g-first" id="gc-toc">
168        <ul>
169          <li><a href="getstarted.html">Getting Started</a></li>
170          <li><a href="overview.html">Overview</a></li>
171          <li><a href="whats_new.html">What's New?</a></li>
172          <li><h2><a href="devguide.html">Developer's Guide</a></h2>
173            <ul>
174              <li>Browser UI
175                <ul>
176                  <li><a href="browserAction.html">Browser Actions</a></li>
177                  <li><a href="contextMenus.html">Context Menus</a></li>
178                  <li><a href="notifications.html">Desktop Notifications</a></li>
179                  <li><a href="omnibox.html">Omnibox</a></li>
180                  <li><a href="options.html">Options Pages</a></li>
181                  <li><a href="override.html">Override Pages</a></li>
182                  <li><a href="pageAction.html">Page Actions</a></li>
183                </ul>
184              </li>
185              <li>Browser Interaction
186                <ul>
187                  <li><a href="bookmarks.html">Bookmarks</a></li>
188                  <li><a href="cookies.html">Cookies</a></li>
189                  <li><a href="events.html">Events</a></li>
190                  <li><a href="history.html">History</a></li>
191                  <li><a href="management.html">Management</a></li>
192                  <li><a href="tabs.html">Tabs</a></li>
193                  <li><a href="windows.html">Windows</a></li>
194                </ul>
195              </li>
196              <li>Implementation
197                <ul>
198                  <li><a href="a11y.html">Accessibility</a></li>
199                  <li><a href="background_pages.html">Background Pages</a></li>
200                  <li><a href="content_scripts.html">Content Scripts</a></li>
201                  <li><a href="xhr.html">Cross-Origin XHR</a></li>
202                  <li><a href="idle.html">Idle</a></li>
203                  <li><a href="i18n.html">Internationalization</a></li>
204                  <li><a href="messaging.html">Message Passing</a></li>
205                  <li><a href="npapi.html">NPAPI Plugins</a></li>
206                </ul>
207              </li>
208              <li>Finishing
209                <ul>
210                  <li><a href="hosting.html">Hosting</a></li>
211                  <li><a href="external_extensions.html">Other Deployment Options</a></li>
212                </ul>
213              </li>
214            </ul>
215          </li>
216          <li><h2><a href="apps.html">Packaged Apps</a></h2></li>
217          <li><h2><a href="tutorials.html">Tutorials</a></h2>
218            <ul>
219              <li><a href="tut_debugging.html">Debugging</a></li>
220              <li><a href="tut_analytics.html">Google Analytics</a></li>
221              <li><a href="tut_oauth.html">OAuth</a></li>
222            </ul>
223          </li>
224          <li><h2>Reference</h2>
225            <ul>
226              <li>Formats
227                <ul>
228                  <li><a href="manifest.html">Manifest Files</a></li>
229                  <li><a href="match_patterns.html">Match Patterns</a></li>
230                </ul>
231              </li>
232              <li><a href="permission_warnings.html">Permission Warnings</a></li>
233              <li><a href="api_index.html">chrome.* APIs</a></li>
234              <li><a href="api_other.html">Other APIs</a></li>
235            </ul>
236          </li>
237          <li><h2><a href="samples.html">Samples</a></h2></li>
238          <div class="line"> </div>
239          <li><h2>More</h2>
240            <ul>
241              <li><a href="http://code.google.com/chrome/webstore/docs/index.html">Chrome Web Store</a></li>
242              <li><a href="http://code.google.com/chrome/apps/docs/developers_guide.html">Hosted Apps</a></li>
243              <li><a href="themes.html">Themes</a></li>
244            </ul>
245          </li>
246        </ul>
247      </div>
248      <script>
249        initToggles();
250      </script>
251
252    <div class="g-unit" id="gc-pagecontent">
253      <div id="pageTitle">
254        <h1 class="page_title">Proxy Settings</h1>
255      </div>
256        <!-- TABLE OF CONTENTS -->
257        <div id="toc">
258          <h2>Contents</h2>
259          <ol>
260            <li>
261              <a href="#manifest">Manifest</a>
262              <ol>
263                <li style="display: none; ">
264                  <a>h3Name</a>
265                </li>
266              </ol>
267            </li><li>
268              <a href="#description">Objects and properties</a>
269              <ol>
270                <li>
271                  <a href="#proxy_modes">Proxy modes</a>
272                </li><li>
273                  <a href="#proxy_rules">Proxy rules</a>
274                </li><li>
275                  <a href="#proxy_server_objects">Proxy server objects</a>
276                </li><li>
277                  <a href="#bypass_list">Bypass list</a>
278                </li>
279              </ol>
280            </li><li>
281              <a href="#precedence">Precedence</a>
282              <ol>
283                <li style="display: none; ">
284                  <a>h3Name</a>
285                </li>
286              </ol>
287            </li><li>
288              <a href="#overview-examples">Examples</a>
289              <ol>
290                <li style="display: none; ">
291                  <a>h3Name</a>
292                </li>
293              </ol>
294            </li>
295              <li>
296                <a href="#apiReference">API reference: chrome.experimental.proxy</a>
297                <ol>
298                  <li>
299                    <a href="#properties">Properties</a>
300                    <ol>
301                      <li>
302                        <a href="#property-settings">settings</a>
303                      </li>
304                    </ol>
305                  </li>
306                  <li style="display: none; ">
307                    <a>Methods</a>
308                    <ol>
309                      <li>
310                        <a href="#method-anchor">methodName</a>
311                      </li>
312                    </ol>
313                  </li>
314                  <li>
315                    <a href="#global-events">Events</a>
316                    <ol>
317                      <li>
318                        <a href="#event-onProxyError">onProxyError</a>
319                      </li>
320                    </ol>
321                  </li>
322                  <li>
323                    <a href="#types">Types</a>
324                    <ol>
325                      <li>
326                        <a href="#type-ProxyServer">ProxyServer</a>
327                      </li><li>
328                        <a href="#type-ProxyRules">ProxyRules</a>
329                      </li><li>
330                        <a href="#type-PacScript">PacScript</a>
331                      </li><li>
332                        <a href="#type-ProxyConfig">ProxyConfig</a>
333                      </li>
334                    </ol>
335                  </li>
336                </ol>
337              </li>
338          </ol>
339        </div>
340        <!-- /TABLE OF CONTENTS -->
341
342        <!-- Standard content lead-in for experimental API pages -->
343        <p id="classSummary" style="display: none; ">
344          For information on how to use experimental APIs, see the <a href="experimental.html">chrome.experimental.* APIs</a> page.
345        </p>
346
347        <!-- STATIC CONTENT PLACEHOLDER -->
348        <div id="static"><div id="pageData-name" class="pageData">Proxy Settings</div>
349
350<!-- BEGIN AUTHORED CONTENT -->
351<p id="classSummary">
352Use the <code>chrome.experimental.proxysettings</code> module to manage Chrome's
353proxy settings. This module is still experimental. For information on how to use
354experimental APIs, see the <a href="experimental.html">chrome.experimental.*
355  APIs</a> page.
356</p>
357
358<h2 id="manifest">Manifest</h2>
359<p>You must declare the "proxy" permission
360in the <a href="manifest.html">extension manifest</a>
361to use the proxy settings API.
362For example:</p>
363<pre>{
364  "name": "My extension",
365  ...
366  <b>"permissions": [
367    "experimental", "proxy"
368  ]</b>,
369  ...
370}</pre>
371
372<h2 id="description">Objects and properties</h2>
373
374<p>
375Proxy settings are defined in a
376<a href="#type-ProxyConfig"><code>ProxyConfig</code></a> object. Depending on
377Chrome's proxy settings, the settings may contain
378<a href="#type-ProxyRules"><code>ProxyRules</code></a> or a <a href="#type-PacScript"><code>PacScript</code></a>.
379</p>
380
381<h3 id="proxy_modes">Proxy modes</h3>
382
383<p>
384A ProxyConfig object's <code>mode</code> attribute determines the overall
385behavior of Chrome with regards to proxy usage. It can take the following
386values:
387</p><dl>
388  <dt><code>direct</code></dt>
389  <dd>In <code>direct</code> mode all connections are created directly, without
390  any proxy involved. This mode allows no further parameters in the
391  <code>ProxyConfig</code> object.</dd>
392
393  <dt><code>auto_detect</code></dt>
394  <dd>In <code>auto_detect</code> mode the proxy configuration is determined by
395  a PAC script that can be downloaded at
396  <a href="http://wpad/wpad.dat">http://wpad/wpad.dat</a>.
397  This mode allows no further parameters in the <code>ProxyConfig</code>
398  object.</dd>
399
400  <dt><code>pac_script</code></dt>
401  <dd>In <code>pac_script</code> mode the proxy configuration is determined by
402  a PAC script that is either retrieved from the URL specified in the
403  <a href="#type-PacScript"><code>PacScript</code></a> object or
404  taken literally from the <code>data</code> element specified in the
405  <a href="#type-PacScript"><code>PacScript</code></a> object.
406  Besides this, this mode allows no further parameters in the
407  <code>ProxyConfig</code> object.</dd>
408
409  <dt><code>fixed_servers</code></dt>
410  <dd>In <code>fixed_servers</code> mode the proxy configuration is codified in
411  a <a href="#type-ProxyRules&gt;&lt;code&gt;ProxyRules"><code>ProxyRules</code></a>
412  object. Its structure is described in <a href="#proxy_rules">Proxy rules</a>.
413  Besides this, the <code>fixed_servers</code> mode allows no further parameters
414  in the <code>ProxyConfig</code> object.</dd>
415
416  <dt><code>system</code></dt>
417  <dd>In <code>system</code> mode the proxy configuration is taken from the
418  operating system. This mode allows no further parameters in the
419  <code>ProxyConfig</code> object. Note that the <code>system</code> mode is
420  different from setting no proxy configuration. In the latter case, Chrome
421  falls back to the system settings only if no command-line options influence
422  the proxy configuration.</dd>
423</dl>
424<p></p>
425
426<h3 id="proxy_rules">Proxy rules</h3>
427
428<p>
429The <a href="#type-ProxyRules"><code>ProxyRules</code></a> object can contain
430either a <code>singleProxy</code> attribute or a subset of
431<code>proxyForHttp</code>, <code>proxyForHttps</code>, <code>proxyForFtp</code>,
432and <code>fallbackProxy</code>.
433</p>
434
435<p>
436In the first case, HTTP, HTTPS and FTP traffic is proxied through the specified
437proxy server. Other traffic is sent directly. In the latter case the behavior is
438slightly more subtle: If a proxy server is configured for the HTTP, HTTPS or FTP
439protocol, the respective traffic is proxied through the specified server. If no
440such proxy server is specified or traffic uses a different protocol than HTTP,
441HTTPS or FTP, the <code>fallbackProxy</code> is used. If no
442<code>fallbackProxy</code> is specified, traffic is sent directly without a
443proxy server.
444</p>
445
446<h3 id="proxy_server_objects">Proxy server objects</h3>
447
448<p>
449A proxy server is configured in a
450<a href="#type-ProxyServer"><code>ProxyServer</code></a> object. The connection
451to the proxy server (defined by the <code>host</code> attribute) uses the
452protocol defined in the <code>scheme</code> attribute. If no <code>scheme</code>
453is specified, the proxy connection defaults to <code>http</code>.
454</p>
455
456<p>
457If no <code>port</code> is defined in a
458<a href="#type-ProxyServer"><code>ProxyServer</code></a> object, the port is
459derived from the scheme. The default ports are:
460</p><table>
461  <tbody><tr><th>Scheme</th><th>Port</th></tr>
462  <tr><td>http</td><td>80</td></tr>
463  <tr><td>https</td><td>443</td></tr>
464  <tr><td>socks4</td><td>1080</td></tr>
465  <tr><td>socks5</td><td>1080</td></tr>
466</tbody></table>
467<p></p>
468
469<h3 id="bypass_list">Bypass list</h3>
470
471<p>
472Individual servers may be excluded from being proxied with the
473<code>bypassList</code>. This list may contain the following entries:
474</p><dl>
475  <dt><code>[<em>&lt;scheme&gt;</em>://]<em>&lt;host-pattern&gt;</em>[:<em>&lt;port&gt;</em>]</code></dt>
476  <dd>Match all hostnames that match the pattern <em>&lt;host-pattern&gt;</em>.<br>
477  Examples: <code>"foobar.com", "*foobar.com", "*.foobar.com", "*foobar.com:99",
478    "https://x.*.y.com:99"</code></dd>
479
480  <dt><code>[<em>&lt;scheme&gt;</em>://]<em>&lt;ip-literal&gt;</em>[:<em>&lt;port&gt;</em>]</code></dt>
481  <dd>Match URLs that are IP address literals.<br>
482  Conceptually this is the similar to the first case, but with special cases
483  to handle IP literal canonicalization. For example, matching
484  on "[0:0:0::1]" is the same as matching on "[::1]" because
485  the IPv6 canonicalization is done internally.<br>
486  Examples: <code>"127.0.1", "[0:0::1]", "[::1]", "http://[::1]:99"</code></dd>
487
488  <dt><code><em>&lt;ip-literal&gt;</em>/<em>&lt;prefix-length-in-bits&gt;</em></code></dt>
489  <dd>Match any URL containing an IP literal within the given range. The IP
490  range is specified using CIDR notation.<br>
491  Examples: <code>"192.168.1.1/16", "fefe:13::abc/33"</code></dd>
492
493  <dt><code>&lt;local&gt;</code></dt>
494  <dd>Match local addresses. An address is local if the host is "127.0.0.1",
495  "::1", or "localhost".<br>
496  Example: <code>"&lt;local&gt;"</code></dd>
497</dl>
498
499
500<h2 id="precedence">Precedence</h2>
501
502<p>
503Chrome manages settings on different layers. The following list describes the
504layers that may influence the effective proxy settings, in increasing order of
505precedence.
506</p><ol>
507  <li>System settings provided by the operating system</li>
508  <li>Command line parameters</li>
509  <li>Preferences set by extensions</li>
510  <li>Policies</li>
511</ol>
512<p></p>
513
514<p>
515As the list implies, policies might overrule any changes that you specify with
516the proxy settings API.
517</p>
518
519<p>
520Chrome allows using different proxy settings for regular windows and incognito
521windows. The following example illustrates the behavior. Assume that no policy
522overrides the proxy settings and that an extension can set proxy settings for
523regular windows <b>(R)</b> and proxy settings for incognito windows <b>(I)</b>.
524</p>
525
526<p>
527</p><ul>
528  <li>If only <b>(R)</b> is set, these settings are effective for both regular
529  and incognito windows.</li>
530  <li>If only <b>(I)</b> is set, these settings are effective for only incognito
531  windows. Regular windows use the proxy settings determined by the lower layers
532  (command-line options and system settings).</li>
533  <li>If both <b>(R)</b> and <b>(I)</b> are set, the respective settings are
534  used for regular and incognito windows.</li>
535</ul>
536<p></p>
537
538<p>
539If two extensions want to set proxy settings, the extension installed last takes
540precedence over the other extensions. If the extension installed last sets only
541<b>(I)</b>, the settings of regular windows can be defined by more recently
542installed extensions.
543</p>
544
545
546
547<h2 id="overview-examples">Examples</h2>
548
549<p>
550The following code sets a SOCKS 5 proxy for HTTP connections to all servers but
551foobar.com and uses direct connections for all other protocols. The settings
552apply to regular and incognito windows.
553</p>
554
555<pre>var config = {
556  mode: "fixed_servers",
557  rules: {
558    httpProxy: {
559      scheme: "socks5",
560      host: "1.2.3.4"
561    },
562    bypassList: ["foobar.com"]
563  }
564};
565chrome.experimental.proxy.settings.set(
566    {'value': config, 'incognito': false},
567    function() {});
568</pre>
569
570<p>
571The following code sets a custom pac script.
572</p>
573
574<pre>var config = {
575  mode: "pac_script",
576  pacScript: {
577    data: "function FindProxyForURL(url, host) {\n" +
578          "  if (host == 'foobar.com')\n" +
579          "    return 'PROXY blackhole:80';\n" +
580          "  return 'DIRECT';\n" +
581          "}"
582  }
583};
584chrome.experimental.proxy.settings.set(
585    {'value': config, 'incognito': false},
586    function() {});
587</pre>
588
589<p>
590The next snippet queries the current proxy settings.
591</p>
592
593<pre>chrome.experimental.proxy.settings.get(
594    {'incognito': false},
595    function(config) {console.log(JSON.stringify(config));});
596</pre>
597
598<p>
599Note that the <code>value</code> object passed to <code>set()</code> is not
600identical to the <code>value</code> object passed to callback function of
601<code>get()</code>. The latter will contain a <code>rules.httpProxy.port</code>
602element.
603</p>
604
605<!-- END AUTHORED CONTENT -->
606</div>
607
608        <!-- API PAGE -->
609        <div class="apiPage">
610        <a name="apiReference"></a>
611        <h2>API reference: chrome.experimental.proxy</h2>
612
613          <!-- PROPERTIES -->
614          <div class="apiGroup">
615            <a name="properties"></a>
616            <h3 id="properties">Properties</h3>
617
618            <div>
619              <a name="property-settings"></a>
620              <h4>settings</h4>
621              <div class="summary">
622                <!-- Note: intentionally longer 80 columns -->
623                <span>chrome.experimental.proxy.</span><span>settings</span>
624              </div>
625              <div>
626          <dt>
627            <var>settings</var>
628              <em>
629
630                <!-- TYPE -->
631                <div style="display:inline">
632                  (
633                    <span class="optional" style="display: none; ">optional</span>
634                    <span class="enum" style="display: none; ">enumerated</span>
635                    <span id="typeTemplate">
636                      <span>
637                        <a href="experimental.extension.html#type-Preference">Preference</a>
638                      </span>
639                      <span style="display: none; ">
640                        <span>
641                          array of <span><span></span></span>
642                        </span>
643                        <span>paramType</span>
644                        <span></span>
645                      </span>
646                    </span>
647                  )
648                </div>
649
650              </em>
651          </dt>
652          <dd class="todo" style="display: none; ">
653            Undocumented.
654          </dd>
655          <dd>Proxy settings to be used. The value of this preference is a ProxyConfig object.</dd>
656          <dd style="display: none; ">
657            This parameter was added in version
658            <b><span></span></b>.
659            You must omit this parameter in earlier versions,
660            and you may omit it in any version.  If you require this
661            parameter, the manifest key
662            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
663            can ensure that your extension won't be run in an earlier browser version.
664          </dd>
665
666          <!-- OBJECT PROPERTIES -->
667          <dd style="display: none; ">
668            <dl>
669              <div>
670                <div>
671                </div>
672              </div>
673            </dl>
674          </dd>
675
676          <!-- OBJECT METHODS -->
677          <dd style="display: none; ">
678            <div></div>
679          </dd>
680
681          <!-- OBJECT EVENT FIELDS -->
682          <dd style="display: none; ">
683            <div></div>
684          </dd>
685
686          <!-- FUNCTION PARAMETERS -->
687          <dd style="display: none; ">
688            <div></div>
689          </dd>
690
691        </div>
692            </div>
693
694          </div> <!-- /apiGroup -->
695
696          <!-- METHODS -->
697          <div id="methodsTemplate" class="apiGroup" style="display: none; ">
698            <a></a>
699            <h3>Methods</h3>
700
701            <!-- iterates over all functions -->
702            <div class="apiItem">
703              <a></a> <!-- method-anchor -->
704              <h4>method name</h4>
705
706              <div class="summary"><span>void</span>
707                  <!-- Note: intentionally longer 80 columns -->
708                  <span>chrome.module.methodName</span>(<span><span>, </span><span></span>
709                      <var><span></span></var></span>)</div>
710
711              <div class="description">
712                <p class="todo">Undocumented.</p>
713                <p>
714                  A description from the json schema def of the function goes here.
715                </p>
716
717                <!-- PARAMETERS -->
718                <h4>Parameters</h4>
719                <dl>
720                  <div>
721                    <div>
722                    </div>
723                  </div>
724                </dl>
725
726                <!-- RETURNS -->
727                <h4>Returns</h4>
728                <dl>
729                  <div>
730                    <div>
731                    </div>
732                  </div>
733                </dl>
734
735                <!-- CALLBACK -->
736                <div>
737                  <div>
738                  <h4>Callback function</h4>
739                  <p>
740                    The callback <em>parameter</em> should specify a function
741                    that looks like this:
742                  </p>
743                  <p>
744                    If you specify the <em>callback</em> parameter, it should
745                    specify a function that looks like this:
746                  </p>
747
748                  <!-- Note: intentionally longer 80 columns -->
749                  <pre>function(<span>Type param1, Type param2</span>) <span class="subdued">{...}</span>;</pre>
750                  <dl>
751                    <div>
752                      <div>
753                      </div>
754                    </div>
755                  </dl>
756                  </div>
757                </div>
758
759                <!-- MIN_VERSION -->
760                <p>
761                  This function was added in version <b><span></span></b>.
762                  If you require this function, the manifest key
763                  <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
764                  can ensure that your extension won't be run in an earlier browser version.
765                </p>
766              </div> <!-- /description -->
767
768            </div>  <!-- /apiItem -->
769
770          </div>  <!-- /apiGroup -->
771
772          <!-- EVENTS -->
773          <div id="eventsTemplate" class="apiGroup">
774            <a name="global-events"></a>
775            <h3>Events</h3>
776            <!-- iterates over all events -->
777            <div class="apiItem">
778              <a name="event-onProxyError"></a>
779              <h4>onProxyError</h4>
780
781              <div class="summary">
782                <!-- Note: intentionally longer 80 columns -->
783                <span class="subdued">chrome.experimental.proxy.</span><span>onProxyError</span><span class="subdued">.addListener</span>(function(<span>object details</span>) <span class="subdued">{...}</span>);
784              </div>
785
786              <div class="description">
787                <p class="todo" style="display: none; ">Undocumented.</p>
788                <p>Notifies about proxy errors.</p>
789
790                <!-- PARAMETERS -->
791                <div>
792                  <h4>Parameters</h4>
793                  <dl>
794                    <div>
795                      <div>
796          <dt>
797            <var>details</var>
798              <em>
799
800                <!-- TYPE -->
801                <div style="display:inline">
802                  (
803                    <span class="optional" style="display: none; ">optional</span>
804                    <span class="enum" style="display: none; ">enumerated</span>
805                    <span id="typeTemplate">
806                      <span style="display: none; ">
807                        <a> Type</a>
808                      </span>
809                      <span>
810                        <span style="display: none; ">
811                          array of <span><span></span></span>
812                        </span>
813                        <span>object</span>
814                        <span style="display: none; "></span>
815                      </span>
816                    </span>
817                  )
818                </div>
819
820              </em>
821          </dt>
822          <dd class="todo">
823            Undocumented.
824          </dd>
825          <dd style="display: none; ">
826            Description of this parameter from the json schema.
827          </dd>
828          <dd style="display: none; ">
829            This parameter was added in version
830            <b><span></span></b>.
831            You must omit this parameter in earlier versions,
832            and you may omit it in any version.  If you require this
833            parameter, the manifest key
834            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
835            can ensure that your extension won't be run in an earlier browser version.
836          </dd>
837
838          <!-- OBJECT PROPERTIES -->
839          <dd>
840            <dl>
841              <div>
842                <div>
843          <dt>
844            <var>fatal</var>
845              <em>
846
847                <!-- TYPE -->
848                <div style="display:inline">
849                  (
850                    <span class="optional" style="display: none; ">optional</span>
851                    <span class="enum" style="display: none; ">enumerated</span>
852                    <span id="typeTemplate">
853                      <span style="display: none; ">
854                        <a> Type</a>
855                      </span>
856                      <span>
857                        <span style="display: none; ">
858                          array of <span><span></span></span>
859                        </span>
860                        <span>boolean</span>
861                        <span style="display: none; "></span>
862                      </span>
863                    </span>
864                  )
865                </div>
866
867              </em>
868          </dt>
869          <dd class="todo" style="display: none; ">
870            Undocumented.
871          </dd>
872          <dd>If true, the error was fatal and the network transaction was aborted. Otherwise, a direct connection is used instead.</dd>
873          <dd style="display: none; ">
874            This parameter was added in version
875            <b><span></span></b>.
876            You must omit this parameter in earlier versions,
877            and you may omit it in any version.  If you require this
878            parameter, the manifest key
879            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
880            can ensure that your extension won't be run in an earlier browser version.
881          </dd>
882
883          <!-- OBJECT PROPERTIES -->
884          <dd style="display: none; ">
885            <dl>
886              <div>
887                <div>
888                </div>
889              </div>
890            </dl>
891          </dd>
892
893          <!-- OBJECT METHODS -->
894          <dd style="display: none; ">
895            <div></div>
896          </dd>
897
898          <!-- OBJECT EVENT FIELDS -->
899          <dd style="display: none; ">
900            <div></div>
901          </dd>
902
903          <!-- FUNCTION PARAMETERS -->
904          <dd style="display: none; ">
905            <div></div>
906          </dd>
907
908        </div>
909              </div><div>
910                <div>
911          <dt>
912            <var>error</var>
913              <em>
914
915                <!-- TYPE -->
916                <div style="display:inline">
917                  (
918                    <span class="optional" style="display: none; ">optional</span>
919                    <span class="enum" style="display: none; ">enumerated</span>
920                    <span id="typeTemplate">
921                      <span style="display: none; ">
922                        <a> Type</a>
923                      </span>
924                      <span>
925                        <span style="display: none; ">
926                          array of <span><span></span></span>
927                        </span>
928                        <span>string</span>
929                        <span style="display: none; "></span>
930                      </span>
931                    </span>
932                  )
933                </div>
934
935              </em>
936          </dt>
937          <dd class="todo" style="display: none; ">
938            Undocumented.
939          </dd>
940          <dd>The error description.</dd>
941          <dd style="display: none; ">
942            This parameter was added in version
943            <b><span></span></b>.
944            You must omit this parameter in earlier versions,
945            and you may omit it in any version.  If you require this
946            parameter, the manifest key
947            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
948            can ensure that your extension won't be run in an earlier browser version.
949          </dd>
950
951          <!-- OBJECT PROPERTIES -->
952          <dd style="display: none; ">
953            <dl>
954              <div>
955                <div>
956                </div>
957              </div>
958            </dl>
959          </dd>
960
961          <!-- OBJECT METHODS -->
962          <dd style="display: none; ">
963            <div></div>
964          </dd>
965
966          <!-- OBJECT EVENT FIELDS -->
967          <dd style="display: none; ">
968            <div></div>
969          </dd>
970
971          <!-- FUNCTION PARAMETERS -->
972          <dd style="display: none; ">
973            <div></div>
974          </dd>
975
976        </div>
977              </div><div>
978                <div>
979          <dt>
980            <var>details</var>
981              <em>
982
983                <!-- TYPE -->
984                <div style="display:inline">
985                  (
986                    <span class="optional" style="display: none; ">optional</span>
987                    <span class="enum" style="display: none; ">enumerated</span>
988                    <span id="typeTemplate">
989                      <span style="display: none; ">
990                        <a> Type</a>
991                      </span>
992                      <span>
993                        <span style="display: none; ">
994                          array of <span><span></span></span>
995                        </span>
996                        <span>string</span>
997                        <span style="display: none; "></span>
998                      </span>
999                    </span>
1000                  )
1001                </div>
1002
1003              </em>
1004          </dt>
1005          <dd class="todo" style="display: none; ">
1006            Undocumented.
1007          </dd>
1008          <dd>Additional details about the error such as a JavaScript runtime error.</dd>
1009          <dd style="display: none; ">
1010            This parameter was added in version
1011            <b><span></span></b>.
1012            You must omit this parameter in earlier versions,
1013            and you may omit it in any version.  If you require this
1014            parameter, the manifest key
1015            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1016            can ensure that your extension won't be run in an earlier browser version.
1017          </dd>
1018
1019          <!-- OBJECT PROPERTIES -->
1020          <dd style="display: none; ">
1021            <dl>
1022              <div>
1023                <div>
1024                </div>
1025              </div>
1026            </dl>
1027          </dd>
1028
1029          <!-- OBJECT METHODS -->
1030          <dd style="display: none; ">
1031            <div></div>
1032          </dd>
1033
1034          <!-- OBJECT EVENT FIELDS -->
1035          <dd style="display: none; ">
1036            <div></div>
1037          </dd>
1038
1039          <!-- FUNCTION PARAMETERS -->
1040          <dd style="display: none; ">
1041            <div></div>
1042          </dd>
1043
1044        </div>
1045              </div>
1046            </dl>
1047          </dd>
1048
1049          <!-- OBJECT METHODS -->
1050          <dd style="display: none; ">
1051            <div></div>
1052          </dd>
1053
1054          <!-- OBJECT EVENT FIELDS -->
1055          <dd style="display: none; ">
1056            <div></div>
1057          </dd>
1058
1059          <!-- FUNCTION PARAMETERS -->
1060          <dd style="display: none; ">
1061            <div></div>
1062          </dd>
1063
1064        </div>
1065                    </div>
1066                  </dl>
1067                </div>
1068              </div> <!-- /decription -->
1069
1070            </div> <!-- /apiItem -->
1071
1072          </div> <!-- /apiGroup -->
1073
1074          <!-- TYPES -->
1075          <div class="apiGroup">
1076            <a name="types"></a>
1077            <h3 id="types">Types</h3>
1078
1079            <!-- iterates over all types -->
1080            <div class="apiItem">
1081              <a name="type-ProxyServer"></a>
1082              <h4>ProxyServer</h4>
1083
1084              <div>
1085          <dt>
1086            <var style="display: none; ">paramName</var>
1087              <em>
1088
1089                <!-- TYPE -->
1090                <div style="display:inline">
1091                  (
1092                    <span class="optional" style="display: none; ">optional</span>
1093                    <span class="enum" style="display: none; ">enumerated</span>
1094                    <span id="typeTemplate">
1095                      <span style="display: none; ">
1096                        <a> Type</a>
1097                      </span>
1098                      <span>
1099                        <span style="display: none; ">
1100                          array of <span><span></span></span>
1101                        </span>
1102                        <span>object</span>
1103                        <span style="display: none; "></span>
1104                      </span>
1105                    </span>
1106                  )
1107                </div>
1108
1109              </em>
1110          </dt>
1111          <dd class="todo" style="display: none; ">
1112            Undocumented.
1113          </dd>
1114          <dd>An object encapsulating a single proxy server's specification.</dd>
1115          <dd style="display: none; ">
1116            This parameter was added in version
1117            <b><span></span></b>.
1118            You must omit this parameter in earlier versions,
1119            and you may omit it in any version.  If you require this
1120            parameter, the manifest key
1121            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1122            can ensure that your extension won't be run in an earlier browser version.
1123          </dd>
1124
1125          <!-- OBJECT PROPERTIES -->
1126          <dd>
1127            <dl>
1128              <div>
1129                <div>
1130          <dt>
1131            <var>scheme</var>
1132              <em>
1133
1134                <!-- TYPE -->
1135                <div style="display:inline">
1136                  (
1137                    <span class="optional">optional</span>
1138                    <span class="enum">enumerated</span>
1139                    <span id="typeTemplate">
1140                      <span style="display: none; ">
1141                        <a> Type</a>
1142                      </span>
1143                      <span>
1144                        <span style="display: none; ">
1145                          array of <span><span></span></span>
1146                        </span>
1147                        <span>string</span>
1148                        <span>["http", "https", "socks4", "socks5"]</span>
1149                      </span>
1150                    </span>
1151                  )
1152                </div>
1153
1154              </em>
1155          </dt>
1156          <dd class="todo" style="display: none; ">
1157            Undocumented.
1158          </dd>
1159          <dd>The scheme (protocol) of the proxy server itself. Defaults to 'http'.</dd>
1160          <dd style="display: none; ">
1161            This parameter was added in version
1162            <b><span></span></b>.
1163            You must omit this parameter in earlier versions,
1164            and you may omit it in any version.  If you require this
1165            parameter, the manifest key
1166            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1167            can ensure that your extension won't be run in an earlier browser version.
1168          </dd>
1169
1170          <!-- OBJECT PROPERTIES -->
1171          <dd style="display: none; ">
1172            <dl>
1173              <div>
1174                <div>
1175                </div>
1176              </div>
1177            </dl>
1178          </dd>
1179
1180          <!-- OBJECT METHODS -->
1181          <dd style="display: none; ">
1182            <div></div>
1183          </dd>
1184
1185          <!-- OBJECT EVENT FIELDS -->
1186          <dd style="display: none; ">
1187            <div></div>
1188          </dd>
1189
1190          <!-- FUNCTION PARAMETERS -->
1191          <dd style="display: none; ">
1192            <div></div>
1193          </dd>
1194
1195        </div>
1196              </div><div>
1197                <div>
1198          <dt>
1199            <var>host</var>
1200              <em>
1201
1202                <!-- TYPE -->
1203                <div style="display:inline">
1204                  (
1205                    <span class="optional" style="display: none; ">optional</span>
1206                    <span class="enum" style="display: none; ">enumerated</span>
1207                    <span id="typeTemplate">
1208                      <span style="display: none; ">
1209                        <a> Type</a>
1210                      </span>
1211                      <span>
1212                        <span style="display: none; ">
1213                          array of <span><span></span></span>
1214                        </span>
1215                        <span>string</span>
1216                        <span style="display: none; "></span>
1217                      </span>
1218                    </span>
1219                  )
1220                </div>
1221
1222              </em>
1223          </dt>
1224          <dd class="todo" style="display: none; ">
1225            Undocumented.
1226          </dd>
1227          <dd>The URI of the proxy server. This must be an ASCII hostname (in Punycode format). IDNA is not supported, yet.</dd>
1228          <dd style="display: none; ">
1229            This parameter was added in version
1230            <b><span></span></b>.
1231            You must omit this parameter in earlier versions,
1232            and you may omit it in any version.  If you require this
1233            parameter, the manifest key
1234            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1235            can ensure that your extension won't be run in an earlier browser version.
1236          </dd>
1237
1238          <!-- OBJECT PROPERTIES -->
1239          <dd style="display: none; ">
1240            <dl>
1241              <div>
1242                <div>
1243                </div>
1244              </div>
1245            </dl>
1246          </dd>
1247
1248          <!-- OBJECT METHODS -->
1249          <dd style="display: none; ">
1250            <div></div>
1251          </dd>
1252
1253          <!-- OBJECT EVENT FIELDS -->
1254          <dd style="display: none; ">
1255            <div></div>
1256          </dd>
1257
1258          <!-- FUNCTION PARAMETERS -->
1259          <dd style="display: none; ">
1260            <div></div>
1261          </dd>
1262
1263        </div>
1264              </div><div>
1265                <div>
1266          <dt>
1267            <var>port</var>
1268              <em>
1269
1270                <!-- TYPE -->
1271                <div style="display:inline">
1272                  (
1273                    <span class="optional">optional</span>
1274                    <span class="enum" style="display: none; ">enumerated</span>
1275                    <span id="typeTemplate">
1276                      <span style="display: none; ">
1277                        <a> Type</a>
1278                      </span>
1279                      <span>
1280                        <span style="display: none; ">
1281                          array of <span><span></span></span>
1282                        </span>
1283                        <span>integer</span>
1284                        <span style="display: none; "></span>
1285                      </span>
1286                    </span>
1287                  )
1288                </div>
1289
1290              </em>
1291          </dt>
1292          <dd class="todo" style="display: none; ">
1293            Undocumented.
1294          </dd>
1295          <dd>The port of the proxy server. Defaults to a port that depends on the scheme.</dd>
1296          <dd style="display: none; ">
1297            This parameter was added in version
1298            <b><span></span></b>.
1299            You must omit this parameter in earlier versions,
1300            and you may omit it in any version.  If you require this
1301            parameter, the manifest key
1302            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1303            can ensure that your extension won't be run in an earlier browser version.
1304          </dd>
1305
1306          <!-- OBJECT PROPERTIES -->
1307          <dd style="display: none; ">
1308            <dl>
1309              <div>
1310                <div>
1311                </div>
1312              </div>
1313            </dl>
1314          </dd>
1315
1316          <!-- OBJECT METHODS -->
1317          <dd style="display: none; ">
1318            <div></div>
1319          </dd>
1320
1321          <!-- OBJECT EVENT FIELDS -->
1322          <dd style="display: none; ">
1323            <div></div>
1324          </dd>
1325
1326          <!-- FUNCTION PARAMETERS -->
1327          <dd style="display: none; ">
1328            <div></div>
1329          </dd>
1330
1331        </div>
1332              </div>
1333            </dl>
1334          </dd>
1335
1336          <!-- OBJECT METHODS -->
1337          <dd style="display: none; ">
1338            <div></div>
1339          </dd>
1340
1341          <!-- OBJECT EVENT FIELDS -->
1342          <dd style="display: none; ">
1343            <div></div>
1344          </dd>
1345
1346          <!-- FUNCTION PARAMETERS -->
1347          <dd style="display: none; ">
1348            <div></div>
1349          </dd>
1350
1351        </div>
1352
1353            </div><div class="apiItem">
1354              <a name="type-ProxyRules"></a>
1355              <h4>ProxyRules</h4>
1356
1357              <div>
1358          <dt>
1359            <var style="display: none; ">paramName</var>
1360              <em>
1361
1362                <!-- TYPE -->
1363                <div style="display:inline">
1364                  (
1365                    <span class="optional" style="display: none; ">optional</span>
1366                    <span class="enum" style="display: none; ">enumerated</span>
1367                    <span id="typeTemplate">
1368                      <span style="display: none; ">
1369                        <a> Type</a>
1370                      </span>
1371                      <span>
1372                        <span style="display: none; ">
1373                          array of <span><span></span></span>
1374                        </span>
1375                        <span>object</span>
1376                        <span style="display: none; "></span>
1377                      </span>
1378                    </span>
1379                  )
1380                </div>
1381
1382              </em>
1383          </dt>
1384          <dd class="todo" style="display: none; ">
1385            Undocumented.
1386          </dd>
1387          <dd>An object encapsulating the set of proxy rules for all protocols. Use either 'singleProxy' or (a subset of) 'proxyForHttp', 'proxyForHttps', 'proxyForFtp' and 'fallbackProxy'.</dd>
1388          <dd style="display: none; ">
1389            This parameter was added in version
1390            <b><span></span></b>.
1391            You must omit this parameter in earlier versions,
1392            and you may omit it in any version.  If you require this
1393            parameter, the manifest key
1394            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1395            can ensure that your extension won't be run in an earlier browser version.
1396          </dd>
1397
1398          <!-- OBJECT PROPERTIES -->
1399          <dd>
1400            <dl>
1401              <div>
1402                <div>
1403          <dt>
1404            <var>singleProxy</var>
1405              <em>
1406
1407                <!-- TYPE -->
1408                <div style="display:inline">
1409                  (
1410                    <span class="optional">optional</span>
1411                    <span class="enum" style="display: none; ">enumerated</span>
1412                    <span id="typeTemplate">
1413                      <span>
1414                        <a href="experimental.proxy.html#type-ProxyServer">ProxyServer</a>
1415                      </span>
1416                      <span style="display: none; ">
1417                        <span>
1418                          array of <span><span></span></span>
1419                        </span>
1420                        <span>paramType</span>
1421                        <span></span>
1422                      </span>
1423                    </span>
1424                  )
1425                </div>
1426
1427              </em>
1428          </dt>
1429          <dd class="todo" style="display: none; ">
1430            Undocumented.
1431          </dd>
1432          <dd>The proxy server to be used for all per-URL requests (that is http, https, and ftp).</dd>
1433          <dd style="display: none; ">
1434            This parameter was added in version
1435            <b><span></span></b>.
1436            You must omit this parameter in earlier versions,
1437            and you may omit it in any version.  If you require this
1438            parameter, the manifest key
1439            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1440            can ensure that your extension won't be run in an earlier browser version.
1441          </dd>
1442
1443          <!-- OBJECT PROPERTIES -->
1444          <dd style="display: none; ">
1445            <dl>
1446              <div>
1447                <div>
1448                </div>
1449              </div>
1450            </dl>
1451          </dd>
1452
1453          <!-- OBJECT METHODS -->
1454          <dd style="display: none; ">
1455            <div></div>
1456          </dd>
1457
1458          <!-- OBJECT EVENT FIELDS -->
1459          <dd style="display: none; ">
1460            <div></div>
1461          </dd>
1462
1463          <!-- FUNCTION PARAMETERS -->
1464          <dd style="display: none; ">
1465            <div></div>
1466          </dd>
1467
1468        </div>
1469              </div><div>
1470                <div>
1471          <dt>
1472            <var>proxyForHttp</var>
1473              <em>
1474
1475                <!-- TYPE -->
1476                <div style="display:inline">
1477                  (
1478                    <span class="optional">optional</span>
1479                    <span class="enum" style="display: none; ">enumerated</span>
1480                    <span id="typeTemplate">
1481                      <span>
1482                        <a href="experimental.proxy.html#type-ProxyServer">ProxyServer</a>
1483                      </span>
1484                      <span style="display: none; ">
1485                        <span>
1486                          array of <span><span></span></span>
1487                        </span>
1488                        <span>paramType</span>
1489                        <span></span>
1490                      </span>
1491                    </span>
1492                  )
1493                </div>
1494
1495              </em>
1496          </dt>
1497          <dd class="todo" style="display: none; ">
1498            Undocumented.
1499          </dd>
1500          <dd>The proxy server to be used for HTTP requests.</dd>
1501          <dd style="display: none; ">
1502            This parameter was added in version
1503            <b><span></span></b>.
1504            You must omit this parameter in earlier versions,
1505            and you may omit it in any version.  If you require this
1506            parameter, the manifest key
1507            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1508            can ensure that your extension won't be run in an earlier browser version.
1509          </dd>
1510
1511          <!-- OBJECT PROPERTIES -->
1512          <dd style="display: none; ">
1513            <dl>
1514              <div>
1515                <div>
1516                </div>
1517              </div>
1518            </dl>
1519          </dd>
1520
1521          <!-- OBJECT METHODS -->
1522          <dd style="display: none; ">
1523            <div></div>
1524          </dd>
1525
1526          <!-- OBJECT EVENT FIELDS -->
1527          <dd style="display: none; ">
1528            <div></div>
1529          </dd>
1530
1531          <!-- FUNCTION PARAMETERS -->
1532          <dd style="display: none; ">
1533            <div></div>
1534          </dd>
1535
1536        </div>
1537              </div><div>
1538                <div>
1539          <dt>
1540            <var>proxyForHttps</var>
1541              <em>
1542
1543                <!-- TYPE -->
1544                <div style="display:inline">
1545                  (
1546                    <span class="optional">optional</span>
1547                    <span class="enum" style="display: none; ">enumerated</span>
1548                    <span id="typeTemplate">
1549                      <span>
1550                        <a href="experimental.proxy.html#type-ProxyServer">ProxyServer</a>
1551                      </span>
1552                      <span style="display: none; ">
1553                        <span>
1554                          array of <span><span></span></span>
1555                        </span>
1556                        <span>paramType</span>
1557                        <span></span>
1558                      </span>
1559                    </span>
1560                  )
1561                </div>
1562
1563              </em>
1564          </dt>
1565          <dd class="todo" style="display: none; ">
1566            Undocumented.
1567          </dd>
1568          <dd>The proxy server to be used for HTTPS requests.</dd>
1569          <dd style="display: none; ">
1570            This parameter was added in version
1571            <b><span></span></b>.
1572            You must omit this parameter in earlier versions,
1573            and you may omit it in any version.  If you require this
1574            parameter, the manifest key
1575            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1576            can ensure that your extension won't be run in an earlier browser version.
1577          </dd>
1578
1579          <!-- OBJECT PROPERTIES -->
1580          <dd style="display: none; ">
1581            <dl>
1582              <div>
1583                <div>
1584                </div>
1585              </div>
1586            </dl>
1587          </dd>
1588
1589          <!-- OBJECT METHODS -->
1590          <dd style="display: none; ">
1591            <div></div>
1592          </dd>
1593
1594          <!-- OBJECT EVENT FIELDS -->
1595          <dd style="display: none; ">
1596            <div></div>
1597          </dd>
1598
1599          <!-- FUNCTION PARAMETERS -->
1600          <dd style="display: none; ">
1601            <div></div>
1602          </dd>
1603
1604        </div>
1605              </div><div>
1606                <div>
1607          <dt>
1608            <var>proxyForFtp</var>
1609              <em>
1610
1611                <!-- TYPE -->
1612                <div style="display:inline">
1613                  (
1614                    <span class="optional">optional</span>
1615                    <span class="enum" style="display: none; ">enumerated</span>
1616                    <span id="typeTemplate">
1617                      <span>
1618                        <a href="experimental.proxy.html#type-ProxyServer">ProxyServer</a>
1619                      </span>
1620                      <span style="display: none; ">
1621                        <span>
1622                          array of <span><span></span></span>
1623                        </span>
1624                        <span>paramType</span>
1625                        <span></span>
1626                      </span>
1627                    </span>
1628                  )
1629                </div>
1630
1631              </em>
1632          </dt>
1633          <dd class="todo" style="display: none; ">
1634            Undocumented.
1635          </dd>
1636          <dd>The proxy server to be used for FTP requests.</dd>
1637          <dd style="display: none; ">
1638            This parameter was added in version
1639            <b><span></span></b>.
1640            You must omit this parameter in earlier versions,
1641            and you may omit it in any version.  If you require this
1642            parameter, the manifest key
1643            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1644            can ensure that your extension won't be run in an earlier browser version.
1645          </dd>
1646
1647          <!-- OBJECT PROPERTIES -->
1648          <dd style="display: none; ">
1649            <dl>
1650              <div>
1651                <div>
1652                </div>
1653              </div>
1654            </dl>
1655          </dd>
1656
1657          <!-- OBJECT METHODS -->
1658          <dd style="display: none; ">
1659            <div></div>
1660          </dd>
1661
1662          <!-- OBJECT EVENT FIELDS -->
1663          <dd style="display: none; ">
1664            <div></div>
1665          </dd>
1666
1667          <!-- FUNCTION PARAMETERS -->
1668          <dd style="display: none; ">
1669            <div></div>
1670          </dd>
1671
1672        </div>
1673              </div><div>
1674                <div>
1675          <dt>
1676            <var>fallbackProxy</var>
1677              <em>
1678
1679                <!-- TYPE -->
1680                <div style="display:inline">
1681                  (
1682                    <span class="optional">optional</span>
1683                    <span class="enum" style="display: none; ">enumerated</span>
1684                    <span id="typeTemplate">
1685                      <span>
1686                        <a href="experimental.proxy.html#type-ProxyServer">ProxyServer</a>
1687                      </span>
1688                      <span style="display: none; ">
1689                        <span>
1690                          array of <span><span></span></span>
1691                        </span>
1692                        <span>paramType</span>
1693                        <span></span>
1694                      </span>
1695                    </span>
1696                  )
1697                </div>
1698
1699              </em>
1700          </dt>
1701          <dd class="todo" style="display: none; ">
1702            Undocumented.
1703          </dd>
1704          <dd>The proxy server to be used for everthing else or if any of the specific proxyFor... is not specified.</dd>
1705          <dd style="display: none; ">
1706            This parameter was added in version
1707            <b><span></span></b>.
1708            You must omit this parameter in earlier versions,
1709            and you may omit it in any version.  If you require this
1710            parameter, the manifest key
1711            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1712            can ensure that your extension won't be run in an earlier browser version.
1713          </dd>
1714
1715          <!-- OBJECT PROPERTIES -->
1716          <dd style="display: none; ">
1717            <dl>
1718              <div>
1719                <div>
1720                </div>
1721              </div>
1722            </dl>
1723          </dd>
1724
1725          <!-- OBJECT METHODS -->
1726          <dd style="display: none; ">
1727            <div></div>
1728          </dd>
1729
1730          <!-- OBJECT EVENT FIELDS -->
1731          <dd style="display: none; ">
1732            <div></div>
1733          </dd>
1734
1735          <!-- FUNCTION PARAMETERS -->
1736          <dd style="display: none; ">
1737            <div></div>
1738          </dd>
1739
1740        </div>
1741              </div><div>
1742                <div>
1743          <dt>
1744            <var>bypassList</var>
1745              <em>
1746
1747                <!-- TYPE -->
1748                <div style="display:inline">
1749                  (
1750                    <span class="optional">optional</span>
1751                    <span class="enum" style="display: none; ">enumerated</span>
1752                    <span id="typeTemplate">
1753                      <span style="display: none; ">
1754                        <a> Type</a>
1755                      </span>
1756                      <span>
1757                        <span>
1758                          array of <span><span>
1759                      <span style="display: none; ">
1760                        <a> Type</a>
1761                      </span>
1762                      <span>
1763                        <span style="display: none; ">
1764                          array of <span><span></span></span>
1765                        </span>
1766                        <span>string</span>
1767                        <span style="display: none; "></span>
1768                      </span>
1769                    </span></span>
1770                        </span>
1771                        <span style="display: none; ">paramType</span>
1772                        <span style="display: none; "></span>
1773                      </span>
1774                    </span>
1775                  )
1776                </div>
1777
1778              </em>
1779          </dt>
1780          <dd class="todo" style="display: none; ">
1781            Undocumented.
1782          </dd>
1783          <dd>List of servers to connect to without a proxy server.</dd>
1784          <dd style="display: none; ">
1785            This parameter was added in version
1786            <b><span></span></b>.
1787            You must omit this parameter in earlier versions,
1788            and you may omit it in any version.  If you require this
1789            parameter, the manifest key
1790            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1791            can ensure that your extension won't be run in an earlier browser version.
1792          </dd>
1793
1794          <!-- OBJECT PROPERTIES -->
1795          <dd style="display: none; ">
1796            <dl>
1797              <div>
1798                <div>
1799                </div>
1800              </div>
1801            </dl>
1802          </dd>
1803
1804          <!-- OBJECT METHODS -->
1805          <dd style="display: none; ">
1806            <div></div>
1807          </dd>
1808
1809          <!-- OBJECT EVENT FIELDS -->
1810          <dd style="display: none; ">
1811            <div></div>
1812          </dd>
1813
1814          <!-- FUNCTION PARAMETERS -->
1815          <dd style="display: none; ">
1816            <div></div>
1817          </dd>
1818
1819        </div>
1820              </div>
1821            </dl>
1822          </dd>
1823
1824          <!-- OBJECT METHODS -->
1825          <dd style="display: none; ">
1826            <div></div>
1827          </dd>
1828
1829          <!-- OBJECT EVENT FIELDS -->
1830          <dd style="display: none; ">
1831            <div></div>
1832          </dd>
1833
1834          <!-- FUNCTION PARAMETERS -->
1835          <dd style="display: none; ">
1836            <div></div>
1837          </dd>
1838
1839        </div>
1840
1841            </div><div class="apiItem">
1842              <a name="type-PacScript"></a>
1843              <h4>PacScript</h4>
1844
1845              <div>
1846          <dt>
1847            <var style="display: none; ">paramName</var>
1848              <em>
1849
1850                <!-- TYPE -->
1851                <div style="display:inline">
1852                  (
1853                    <span class="optional" style="display: none; ">optional</span>
1854                    <span class="enum" style="display: none; ">enumerated</span>
1855                    <span id="typeTemplate">
1856                      <span style="display: none; ">
1857                        <a> Type</a>
1858                      </span>
1859                      <span>
1860                        <span style="display: none; ">
1861                          array of <span><span></span></span>
1862                        </span>
1863                        <span>object</span>
1864                        <span style="display: none; "></span>
1865                      </span>
1866                    </span>
1867                  )
1868                </div>
1869
1870              </em>
1871          </dt>
1872          <dd class="todo" style="display: none; ">
1873            Undocumented.
1874          </dd>
1875          <dd>An object holding proxy auto-config information. Exactly one of the fields should be non-empty.</dd>
1876          <dd style="display: none; ">
1877            This parameter was added in version
1878            <b><span></span></b>.
1879            You must omit this parameter in earlier versions,
1880            and you may omit it in any version.  If you require this
1881            parameter, the manifest key
1882            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1883            can ensure that your extension won't be run in an earlier browser version.
1884          </dd>
1885
1886          <!-- OBJECT PROPERTIES -->
1887          <dd>
1888            <dl>
1889              <div>
1890                <div>
1891          <dt>
1892            <var>url</var>
1893              <em>
1894
1895                <!-- TYPE -->
1896                <div style="display:inline">
1897                  (
1898                    <span class="optional">optional</span>
1899                    <span class="enum" style="display: none; ">enumerated</span>
1900                    <span id="typeTemplate">
1901                      <span style="display: none; ">
1902                        <a> Type</a>
1903                      </span>
1904                      <span>
1905                        <span style="display: none; ">
1906                          array of <span><span></span></span>
1907                        </span>
1908                        <span>string</span>
1909                        <span style="display: none; "></span>
1910                      </span>
1911                    </span>
1912                  )
1913                </div>
1914
1915              </em>
1916          </dt>
1917          <dd class="todo" style="display: none; ">
1918            Undocumented.
1919          </dd>
1920          <dd>URL of the PAC file to be used.</dd>
1921          <dd style="display: none; ">
1922            This parameter was added in version
1923            <b><span></span></b>.
1924            You must omit this parameter in earlier versions,
1925            and you may omit it in any version.  If you require this
1926            parameter, the manifest key
1927            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1928            can ensure that your extension won't be run in an earlier browser version.
1929          </dd>
1930
1931          <!-- OBJECT PROPERTIES -->
1932          <dd style="display: none; ">
1933            <dl>
1934              <div>
1935                <div>
1936                </div>
1937              </div>
1938            </dl>
1939          </dd>
1940
1941          <!-- OBJECT METHODS -->
1942          <dd style="display: none; ">
1943            <div></div>
1944          </dd>
1945
1946          <!-- OBJECT EVENT FIELDS -->
1947          <dd style="display: none; ">
1948            <div></div>
1949          </dd>
1950
1951          <!-- FUNCTION PARAMETERS -->
1952          <dd style="display: none; ">
1953            <div></div>
1954          </dd>
1955
1956        </div>
1957              </div><div>
1958                <div>
1959          <dt>
1960            <var>data</var>
1961              <em>
1962
1963                <!-- TYPE -->
1964                <div style="display:inline">
1965                  (
1966                    <span class="optional">optional</span>
1967                    <span class="enum" style="display: none; ">enumerated</span>
1968                    <span id="typeTemplate">
1969                      <span style="display: none; ">
1970                        <a> Type</a>
1971                      </span>
1972                      <span>
1973                        <span style="display: none; ">
1974                          array of <span><span></span></span>
1975                        </span>
1976                        <span>string</span>
1977                        <span style="display: none; "></span>
1978                      </span>
1979                    </span>
1980                  )
1981                </div>
1982
1983              </em>
1984          </dt>
1985          <dd class="todo" style="display: none; ">
1986            Undocumented.
1987          </dd>
1988          <dd>A PAC script.</dd>
1989          <dd style="display: none; ">
1990            This parameter was added in version
1991            <b><span></span></b>.
1992            You must omit this parameter in earlier versions,
1993            and you may omit it in any version.  If you require this
1994            parameter, the manifest key
1995            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
1996            can ensure that your extension won't be run in an earlier browser version.
1997          </dd>
1998
1999          <!-- OBJECT PROPERTIES -->
2000          <dd style="display: none; ">
2001            <dl>
2002              <div>
2003                <div>
2004                </div>
2005              </div>
2006            </dl>
2007          </dd>
2008
2009          <!-- OBJECT METHODS -->
2010          <dd style="display: none; ">
2011            <div></div>
2012          </dd>
2013
2014          <!-- OBJECT EVENT FIELDS -->
2015          <dd style="display: none; ">
2016            <div></div>
2017          </dd>
2018
2019          <!-- FUNCTION PARAMETERS -->
2020          <dd style="display: none; ">
2021            <div></div>
2022          </dd>
2023
2024        </div>
2025              </div>
2026            </dl>
2027          </dd>
2028
2029          <!-- OBJECT METHODS -->
2030          <dd style="display: none; ">
2031            <div></div>
2032          </dd>
2033
2034          <!-- OBJECT EVENT FIELDS -->
2035          <dd style="display: none; ">
2036            <div></div>
2037          </dd>
2038
2039          <!-- FUNCTION PARAMETERS -->
2040          <dd style="display: none; ">
2041            <div></div>
2042          </dd>
2043
2044        </div>
2045
2046            </div><div class="apiItem">
2047              <a name="type-ProxyConfig"></a>
2048              <h4>ProxyConfig</h4>
2049
2050              <div>
2051          <dt>
2052            <var style="display: none; ">paramName</var>
2053              <em>
2054
2055                <!-- TYPE -->
2056                <div style="display:inline">
2057                  (
2058                    <span class="optional" style="display: none; ">optional</span>
2059                    <span class="enum" style="display: none; ">enumerated</span>
2060                    <span id="typeTemplate">
2061                      <span style="display: none; ">
2062                        <a> Type</a>
2063                      </span>
2064                      <span>
2065                        <span style="display: none; ">
2066                          array of <span><span></span></span>
2067                        </span>
2068                        <span>object</span>
2069                        <span style="display: none; "></span>
2070                      </span>
2071                    </span>
2072                  )
2073                </div>
2074
2075              </em>
2076          </dt>
2077          <dd class="todo" style="display: none; ">
2078            Undocumented.
2079          </dd>
2080          <dd>An object encapsulating a complete proxy configuration.</dd>
2081          <dd style="display: none; ">
2082            This parameter was added in version
2083            <b><span></span></b>.
2084            You must omit this parameter in earlier versions,
2085            and you may omit it in any version.  If you require this
2086            parameter, the manifest key
2087            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
2088            can ensure that your extension won't be run in an earlier browser version.
2089          </dd>
2090
2091          <!-- OBJECT PROPERTIES -->
2092          <dd>
2093            <dl>
2094              <div>
2095                <div>
2096          <dt>
2097            <var>rules</var>
2098              <em>
2099
2100                <!-- TYPE -->
2101                <div style="display:inline">
2102                  (
2103                    <span class="optional">optional</span>
2104                    <span class="enum" style="display: none; ">enumerated</span>
2105                    <span id="typeTemplate">
2106                      <span>
2107                        <a href="experimental.proxy.html#type-ProxyRules">ProxyRules</a>
2108                      </span>
2109                      <span style="display: none; ">
2110                        <span>
2111                          array of <span><span></span></span>
2112                        </span>
2113                        <span>paramType</span>
2114                        <span></span>
2115                      </span>
2116                    </span>
2117                  )
2118                </div>
2119
2120              </em>
2121          </dt>
2122          <dd class="todo" style="display: none; ">
2123            Undocumented.
2124          </dd>
2125          <dd>The proxy rules describing this configuration. Use this for 'fixed_servers' mode.</dd>
2126          <dd style="display: none; ">
2127            This parameter was added in version
2128            <b><span></span></b>.
2129            You must omit this parameter in earlier versions,
2130            and you may omit it in any version.  If you require this
2131            parameter, the manifest key
2132            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
2133            can ensure that your extension won't be run in an earlier browser version.
2134          </dd>
2135
2136          <!-- OBJECT PROPERTIES -->
2137          <dd style="display: none; ">
2138            <dl>
2139              <div>
2140                <div>
2141                </div>
2142              </div>
2143            </dl>
2144          </dd>
2145
2146          <!-- OBJECT METHODS -->
2147          <dd style="display: none; ">
2148            <div></div>
2149          </dd>
2150
2151          <!-- OBJECT EVENT FIELDS -->
2152          <dd style="display: none; ">
2153            <div></div>
2154          </dd>
2155
2156          <!-- FUNCTION PARAMETERS -->
2157          <dd style="display: none; ">
2158            <div></div>
2159          </dd>
2160
2161        </div>
2162              </div><div>
2163                <div>
2164          <dt>
2165            <var>pacScript</var>
2166              <em>
2167
2168                <!-- TYPE -->
2169                <div style="display:inline">
2170                  (
2171                    <span class="optional">optional</span>
2172                    <span class="enum" style="display: none; ">enumerated</span>
2173                    <span id="typeTemplate">
2174                      <span>
2175                        <a href="experimental.proxy.html#type-PacScript">PacScript</a>
2176                      </span>
2177                      <span style="display: none; ">
2178                        <span>
2179                          array of <span><span></span></span>
2180                        </span>
2181                        <span>paramType</span>
2182                        <span></span>
2183                      </span>
2184                    </span>
2185                  )
2186                </div>
2187
2188              </em>
2189          </dt>
2190          <dd class="todo" style="display: none; ">
2191            Undocumented.
2192          </dd>
2193          <dd>The proxy auto-config (PAC) script for this configuration. Use this for 'pac_script' mode.</dd>
2194          <dd style="display: none; ">
2195            This parameter was added in version
2196            <b><span></span></b>.
2197            You must omit this parameter in earlier versions,
2198            and you may omit it in any version.  If you require this
2199            parameter, the manifest key
2200            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
2201            can ensure that your extension won't be run in an earlier browser version.
2202          </dd>
2203
2204          <!-- OBJECT PROPERTIES -->
2205          <dd style="display: none; ">
2206            <dl>
2207              <div>
2208                <div>
2209                </div>
2210              </div>
2211            </dl>
2212          </dd>
2213
2214          <!-- OBJECT METHODS -->
2215          <dd style="display: none; ">
2216            <div></div>
2217          </dd>
2218
2219          <!-- OBJECT EVENT FIELDS -->
2220          <dd style="display: none; ">
2221            <div></div>
2222          </dd>
2223
2224          <!-- FUNCTION PARAMETERS -->
2225          <dd style="display: none; ">
2226            <div></div>
2227          </dd>
2228
2229        </div>
2230              </div><div>
2231                <div>
2232          <dt>
2233            <var>mode</var>
2234              <em>
2235
2236                <!-- TYPE -->
2237                <div style="display:inline">
2238                  (
2239                    <span class="optional" style="display: none; ">optional</span>
2240                    <span class="enum">enumerated</span>
2241                    <span id="typeTemplate">
2242                      <span style="display: none; ">
2243                        <a> Type</a>
2244                      </span>
2245                      <span>
2246                        <span style="display: none; ">
2247                          array of <span><span></span></span>
2248                        </span>
2249                        <span>string</span>
2250                        <span>["direct", "auto_detect", "pac_script", "fixed_servers", "system"]</span>
2251                      </span>
2252                    </span>
2253                  )
2254                </div>
2255
2256              </em>
2257          </dt>
2258          <dd class="todo" style="display: none; ">
2259            Undocumented.
2260          </dd>
2261          <dd>'direct' = Never use a proxy<br>'auto_detect' = Auto detect proxy settings<br>'pac_script' = Use specified PAC script<br>'fixed_servers' = Manually specify proxy servers<br>'system' = Use system proxy settings</dd>
2262          <dd style="display: none; ">
2263            This parameter was added in version
2264            <b><span></span></b>.
2265            You must omit this parameter in earlier versions,
2266            and you may omit it in any version.  If you require this
2267            parameter, the manifest key
2268            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
2269            can ensure that your extension won't be run in an earlier browser version.
2270          </dd>
2271
2272          <!-- OBJECT PROPERTIES -->
2273          <dd style="display: none; ">
2274            <dl>
2275              <div>
2276                <div>
2277                </div>
2278              </div>
2279            </dl>
2280          </dd>
2281
2282          <!-- OBJECT METHODS -->
2283          <dd style="display: none; ">
2284            <div></div>
2285          </dd>
2286
2287          <!-- OBJECT EVENT FIELDS -->
2288          <dd style="display: none; ">
2289            <div></div>
2290          </dd>
2291
2292          <!-- FUNCTION PARAMETERS -->
2293          <dd style="display: none; ">
2294            <div></div>
2295          </dd>
2296
2297        </div>
2298              </div>
2299            </dl>
2300          </dd>
2301
2302          <!-- OBJECT METHODS -->
2303          <dd style="display: none; ">
2304            <div></div>
2305          </dd>
2306
2307          <!-- OBJECT EVENT FIELDS -->
2308          <dd style="display: none; ">
2309            <div></div>
2310          </dd>
2311
2312          <!-- FUNCTION PARAMETERS -->
2313          <dd style="display: none; ">
2314            <div></div>
2315          </dd>
2316
2317        </div>
2318
2319            </div> <!-- /apiItem -->
2320
2321          </div> <!-- /apiGroup -->
2322
2323        </div> <!-- /apiPage -->
2324      </div> <!-- /gc-pagecontent -->
2325    </div> <!-- /g-section -->
2326  </div> <!-- /codesiteContent -->
2327    <div id="gc-footer" --="">
2328      <div class="text">
2329  <p>
2330  Except as otherwise <a href="http://code.google.com/policies.html#restrictions">noted</a>,
2331  the content of this page is licensed under the <a rel="license" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons
2332  Attribution 3.0 License</a>, and code samples are licensed under the
2333  <a rel="license" href="http://code.google.com/google_bsd_license.html">BSD License</a>.
2334  </p>
2335  <p>
2336  ©2011 Google
2337  </p>
2338
2339<!-- begin analytics -->
2340<script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
2341<script src="http://www.google-analytics.com/ga.js" type="text/javascript"></script>
2342
2343<script type="text/javascript">
2344  // chrome doc tracking
2345  try {
2346    var engdocs = _gat._getTracker("YT-10763712-2");
2347    engdocs._trackPageview();
2348  } catch(err) {}
2349
2350  // code.google.com site-wide tracking
2351  try {
2352    _uacct="UA-18071-1";
2353    _uanchor=1;
2354    _uff=0;
2355    urchinTracker();
2356  }
2357  catch(e) {/* urchinTracker not available. */}
2358</script>
2359<!-- end analytics -->
2360      </div>
2361    </div> <!-- /gc-footer -->
2362  </div> <!-- /gc-container -->
2363</body></html>
2364