usergrid-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From timangl...@apache.org
Subject svn commit: r1542910 [26/36] - in /incubator/usergrid/site/publish: ./ bootstrap/ bootstrap/bootstrap/ community/ css/ css/bootflat-extensions/ css/bootflat-square/ css/bootflat/ css/font-awesome/ css/usergrid-site/ docs/ docs/access-token/ docs/activi...
Date Mon, 18 Nov 2013 06:09:27 GMT
Added: incubator/usergrid/site/publish/docs/securing-your-app/index.html
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/publish/docs/securing-your-app/index.html?rev=1542910&view=auto
==============================================================================
--- incubator/usergrid/site/publish/docs/securing-your-app/index.html (added)
+++ incubator/usergrid/site/publish/docs/securing-your-app/index.html Mon Nov 18 06:09:23 2013
@@ -0,0 +1,262 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>Apache Usergrid (incubating) — Securing your app</title>
+    <meta http-equiv="x-ua-compatible" content="ie=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />
+    <meta name="keywords" content="Apache Usergrid, Usergrid, BaaS, Backend-as-a-Service">
+    <meta name="description" content="An open-source Backend-as-a-Service stack for web & mobile applications, based on RESTful APIs." />
+    <meta property="og:title" content="Apache Usergrid" />
+    <meta property="og:description" content="An open-source Backend-as-a-Service stack for web & mobile applications, based on RESTful APIs." />
+    <!-- Loading Typekit -->
+    <script type="text/javascript" src="//use.typekit.net/ddl7izx.js"></script>
+    <script type="text/javascript">try{Typekit.load();}catch(e){}</script>
+    <!-- Loading Bootstrap -->
+    <link href="/bootstrap/bootstrap.min.css" rel="stylesheet" type='text/css'>
+    <link href="/css/bootflat.css" rel="stylesheet" type='text/css'>
+    <link href="/css/usergrid-site.css" rel="stylesheet" type='text/css'>
+    <link href="http://fonts.googleapis.com/css?family=Open+Sans:200,400,500,300,600,800,700,400italic,600italic,700italic,800italic,300italic" rel="stylesheet" type="text/css">
+    <link href="/css/font-awesome.min.css" rel="stylesheet" type='text/css'>
+
+    
+
+    <!-- HTML5 shim, for IE6-8 support of HTML5 elements. All other JS at the end of file. -->
+    <!--[if lt IE 9]>
+      <script src="js/html5shiv.js"></script>
+      <script src="js/respond.min.js"></script>
+    <![endif]-->
+</head>
+<body>
+
+    <header class="navbar navbar-inverse navbar-fixed-top bf-docs-nav secondary" role="banner">
+    <div class="container">
+        <div class="navbar-header">
+            <button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bf-navbar-collapse">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+            <a href="/" class="navbar-brand">
+                <img id="home-logo" src="/img/apache_usergrid_logo_white_small.png" />
+            </a>
+        </div>
+        <nav class="collapse navbar-collapse bf-navbar-collapse" role="navigation">
+            <ul class="nav navbar-nav navbar-right">
+                <!--<li class="active"><a href="/docs/"><span class="icns icon-book"></span></a></li>-->
+                <li class=""><a href="/community/"><span class="icns icon-group"></span></a></li>
+                <li><a href="http://github.com/usergrid/usergrid" target="_blank"><span class="icns icon-github-sign"></span></a></li>
+                <!--<li><a href="https://trello.com/b/exQmJIOn/usergrid" target="_blank"><span class="icns icon-trello"></span></a></li>-->
+                <li><a href="https://issues.apache.org/jira/browse/USERGRID" target="_blank"><span class="icns icon-bug"></span></a></li>
+                <li><a href="http://stackoverflow.com/search?q=usergrid" target="_blank"><span class="icns icon-stackexchange"></span></a></li>
+                <li><a href="http://webchat.freenode.net/?channels=%23usergrid&uio=d4" target="_blank"><span class="icns icon-comments"></span></a></li>
+                <!--<li><a href="https://groups.google.com/forum/#!forum/usergrid" target="_blank"><span class="icns icon-envelope"></span></a></li>-->
+                <li><a href="https://twitter.com/usergrid" target="_blank"><span class="icns icon-twitter"></span></a></li>
+            </ul>
+        </nav>
+    </div>
+    </header>
+
+
+<div class="container bf-docs-container">    
+    <div class="row">
+        <div class="col-md-3">
+            <div class="bf-sidebar hidden-print" role="complementary">
+                <ul class="nav nav-list">
+                    <li><a href="#">Getting Up & Running Locally</a></li>
+                    <li><a href="#"><code>ugc</code> — the Command-line Client</a></li>
+
+                    <li class="nav-header"><span>Concepts</span></li>
+                    <li>
+                        <a href="/docs/organizations-admins/">Organizations & Admins</a>
+                        <ul>
+                            <li>
+                                <a href="/docs/applications">Applications</a>
+                                <ul>
+                                    <li><a href="#">Roles & Permissions</a></li>
+                                    <li><a href="#">Queues</a></li>
+                                    <li><a href="#">Events & Counters</a></li>
+                                    <li>
+                                        <a href="#">Collections</a>
+                                        <ul>
+                                            <li><a href="#">Query Language</a></li>
+                                            <li><a href="#">Users & Devices</a></li>
+                                            <li><a href="#">Groups</a></li>
+                                            <li><a href="#">Activities</a></li>
+                                            <li><a href="#">Assets</a></li>
+                                        </ul>
+                                    </li>
+                                </ul>
+                            </li>
+                        </ul>
+                    </li>
+
+
+                    <li class="nav-header"><span>Usage</span></li>
+                    <li><a href="/docs/rest-api">REST API</a></li>
+                    <li><a class="icns-apple" href="#">iOS SDK</a></li>
+                    <li><a class="icns-android" href="#">Android SDK</a></li>
+                    <li><a class="icns-html5" href="/docs/html5-javascript-sdk">HTML5 / JavaScript SDK</a></li>
+                    <li><a class="icns-windows" href="#">Windows 8 / Windows Phone / .net SDK</a></li>
+                    <li><a href="/docs/nodejs-module">Node.js module</a></li>
+                    <li><a href="/docs/ruby-gem">Ruby gem</a></li>
+                    <li><a href="#">Ruby on Rails gem</a></li>
+                    <li><a href="#">PHP library</a></li>
+
+                    <li class="nav-header"><span>Internals</span></li>
+                    <li><a href="#">Design & Goals</a></li>
+                    <li><a href="#">Java Architecture</a></li>
+                    <li><a href="#">Cassandra Schema</a></li>
+                    <li><a href="#">Contributing</a></li>
+
+                    <li class="nav-header"><span>Operations</span></li>
+                    <li><a href="#">Deploying</a></li>
+                    <li><a href="#">Monitoring</a></li>
+                    <li><a href="#">Upgrading</a></li>
+                    <li><a href="#">Security</a></li>
+                </ul>
+            </div>
+        </div>
+
+        <div class="col-md-9 main-article" role="main">
+            <div class="page-article">
+                <div class="page-header">
+                    <h1>Securing your app</h1>
+                  <small><a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/securing-your-app/">contribute to this article on github</a></small>
+                </div>
+                <div class="toc">
+	<ul>
+<li>
+<a href="#securing-your-app">Securing your app</a><ul>
+<li><a href="#review-permissions-in-your-apps">Review permissions in your apps</a></li>
+<li><a href="#review-test-accounts">Review test accounts</a></li>
+<li><a href="#use-https">Use https</a></li>
+<li><a href="#acquire-access-tokens-in-a-secure-way">Acquire access tokens in a secure way</a></li>
+</ul>
+</li>
+</ul>
+</div>
+<h1 id="securing-your-app"><a href="#securing-your-app">Securing your app</a></h1>
+<p>There a number of actions you should take to ensure that your app is secure before you put it into production.</p>
+<h2 id="review-permissions-in-your-apps"><a href="#review-permissions-in-your-apps">Review permissions in your apps</a></h2>
+<p>Prior to launching your app into a production environment, it is advisable to review all the roles and permissions you have set up. During development, you may find that you added various permissions which may or may not still be required once the app is complete. Review all permissions and delete any that are no longer required.</p>
+<p>Also make sure that you review the roles and permissions that are set up for the sandbox app. By default, every new Apache Usergrid account has an app named “sandbox” that is already created under your new organization. This app is no different than any other app that you might create, except that the Guest role has been given full permissions (that is, /** for GET, POST, PUT, and DELETE). This eliminates the need for a token when making application level calls, and can make it much easier to get your app up and running.</p>
+<p>Prior to taking your app live, you should secure it by removing any Guest permissions for /**. (See <a href="/managing-access-defining-permission-rules">Managing access by defining permission rules</a> for further information about setting permissions.) After you secure your the app, any calls to the API will need to include an OAuth token. Oauth tokens (also called access tokens) are obtained by the API in response to successful authentication calls. Your app saves the token and uses it for all future calls during that session. Learn more about access tokens in <a href="/authenticating-users-and-application-clients">Authenticating users and application clients</a>.</p>
+<h2 id="review-test-accounts"><a href="#review-test-accounts">Review test accounts</a></h2>
+<p>If you created any test user or test administrator accounts during development, these should also be reviewed for relevancy and security. Delete any test accounts that are no longer needed. If these accounts are still needed, make sure that passwords have been secured to the standards required by your app.</p>
+<h2 id="use-https"><a href="#use-https">Use https</a></h2>
+<p>Make sure that any calls you make to the API are done using the secure https protocol, and not the insecure http protocol. The proper application endpoint is: https://api.usergrid.com</p>
+<p>If your app is a web app, that is, an app served by a web server, make sure that the app is served using https.</p>
+<h2 id="acquire-access-tokens-in-a-secure-way"><a href="#acquire-access-tokens-in-a-secure-way">Acquire access tokens in a secure way</a></h2>
+<p>There are various methods for acquiring an access token (see <a href="/authenticating-users-and-application-clients">Authenticating users and application clients</a>). One method is to use the application or organization level client secret-client id combination. This method should not be used in client applications (this is, apps that are deployed to a device, and which authenticate and make calls against the API).</p>
+<p>That’s because a hacker could analyze your app (even a compiled, binary distribution of your app), and retrieve the secret-id combination. Armed with this information, an attacker could gain full access to the data in your account.</p>
+<p>Instead, use application user credentials. This means that your app’s users should provide a username and password. Your app would use these to authenticate against the API and retrieve an access token.</p>
+<p>The client secret-client id combination should be used only in secure, server-side applications where there is no possibility of a hacker gaining control of the credentials.</p>
+            </div>
+        </div>
+    </div>
+    <div class="row">
+        <div class="col-md-3"></div>
+        <div class="col-md-9">
+            <div class="github-callout">
+                <strong>Questions?</strong> Please do <a href="https://groups.google.com/forum/#!forum/usergrid">ask on the mailing-list</a>!<br/>
+                <strong>Found an error?</strong> We’d greatly appreciate a pull request about <a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/securing-your-app/">this article on github</a>.</div>
+        </div>
+    </div>
+</div>
+
+
+<footer class="bf-footer" role="contentinfo">
+    <div class="container">
+        <div class="row">
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header"><a href="/">Home</a></li>
+                    <li class="nav-header"><a href="/community/">Community</a></li>
+                        <!-- <li><a href="/community#events">Events</a></li> -->
+                        <li><a href="/community/#mailing-lists">Mailing Lists</a></li>
+                        <li><a href="/community/#deployments">Deployments</a></li>
+                        <li><a href="/community/#committers">Commiters</a></li>
+                    <!-- <li class="nav-header"><a href="#">Docs</a></li> -->
+                </ul>
+            </div>
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header"><a href="https://github.com/usergrid/usergrid/" target="_blank">Code</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/stack" target="_blank">Server Stack</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/portal" target="_blank">Admin Portal</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/ugc" target="_blank">ugc command line</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ios" target="_blank">iOS SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/android" target="_blank">Android SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/html5-javascript" target="_blank">HTML5/JS SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/nodejs" target="_blank">node.js module</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ruby-on-rails" target="_blank">Ruby on Rails gem</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ruby" target="_blank">Ruby gem</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/php" target="_blank">PHP SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/java" target="_blank">Java SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/dotnet" target="_blank">.NET / Windows SDK</a></li>
+                </ul>
+            </div>
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header">Resources</li>
+                        <li><a href="http://github.com/usergrid/usergrid" target="_blank">GitHub Code</a></li>
+                        <li><a href="https://issues.apache.org/jira/browse/USERGRID" target="_blank">JIRA Bug Tracker</a></li>
+                        <li><a href="http://stackoverflow.com/search?q=usergrid" target="_blank">StackOverflow</a></li>
+                        <li><a href="http://webchat.freenode.net/?channels=%23usergrid&uio=d4">IRC</a></li>
+                        <li><a href="https://twitter.com/usergrid" target="_blank">Twitter</a></li>
+                        <li><a href="http://incubator.apache.org/projects/usergrid.html" target="_blank">Podling Listing</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/LICENSE" target="_blank">License</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/stack#requirements" target="_blank">Getting Started</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/stack#contributing" target="_blank">Contribution Guidelines</a></li>
+                </ul>
+            </div>
+            <div class="col-md-2"></div>
+            <div class="col-md-4">
+                <a class="twitter-timeline" href="https://twitter.com/search?q=%23usergrid" data-widget-id="401499136807038976"  data-related="usergrid" height="400px" style="overflow:hidden">Tweets about "usergrid"</a>
+                <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
+            </div> 
+        <!--
+            <div class="col-md-4">
+                <div class="input-group form-search">
+                    <input type="text" class="form-control search-query">
+                    <span class="input-group-btn">
+                        <button type="submit" class="btn btn-primary" data-type="last">Search</button>
+                    </span>
+                </div>
+            </div> -->
+        </div> 
+        <div class="row">
+            <div id="copyright">
+                <img src="/img/egg-logo.png" /><br/><br/>
+                <p>Apache Usergrid is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the name of Apache TLP sponsor. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p>
+                <p>Copyright © 2013 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.<br>
+                Apache and the Apache feather logos are trademarks of The Apache Software Foundation.</p>
+                <p class="credits">Site designed & assembled with love by <a href="https://github.com/ryuneeee">@ryuneeee</a> + <a href="https://github.com/realbeast">@realbeast</a> + <a href="https://twitter.com/timanglade">@timanglade</a>.</p>
+            </div>
+        </div>
+    </div>
+</footer>
+
+<script type="text/javascript" src="/js/head.js"></script>
+<script type="text/javascript">
+    head.js("/js/jquery-1.10.1.min.js", "/js/bootstrap.min.js", "/js/usergrid-site.js");
+</script>
+<script type="text/javascript">
+    //IE outdate friendly warning if you don't want remove it
+    var $buoop = {vs:{i:8,f:3.6,o:10.6,s:3.2,n:9}}
+    $buoop.ol = window.onload;
+    window.onload=function(){
+        try {if ($buoop.ol) $buoop.ol();}catch (e) {}
+        var e = document.createElement("script");
+        e.setAttribute("type", "text/javascript");
+        e.setAttribute("src", "http://browser-update.org/update.js");
+        document.body.appendChild(e);
+    }
+</script>
+
+
+</body>
+</html>
\ No newline at end of file

Added: incubator/usergrid/site/publish/docs/security-model/index.html
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/publish/docs/security-model/index.html?rev=1542910&view=auto
==============================================================================
--- incubator/usergrid/site/publish/docs/security-model/index.html (added)
+++ incubator/usergrid/site/publish/docs/security-model/index.html Mon Nov 18 06:09:23 2013
@@ -0,0 +1,266 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>Apache Usergrid (incubating) — App services security model</title>
+    <meta http-equiv="x-ua-compatible" content="ie=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />
+    <meta name="keywords" content="Apache Usergrid, Usergrid, BaaS, Backend-as-a-Service">
+    <meta name="description" content="An open-source Backend-as-a-Service stack for web & mobile applications, based on RESTful APIs." />
+    <meta property="og:title" content="Apache Usergrid" />
+    <meta property="og:description" content="An open-source Backend-as-a-Service stack for web & mobile applications, based on RESTful APIs." />
+    <!-- Loading Typekit -->
+    <script type="text/javascript" src="//use.typekit.net/ddl7izx.js"></script>
+    <script type="text/javascript">try{Typekit.load();}catch(e){}</script>
+    <!-- Loading Bootstrap -->
+    <link href="/bootstrap/bootstrap.min.css" rel="stylesheet" type='text/css'>
+    <link href="/css/bootflat.css" rel="stylesheet" type='text/css'>
+    <link href="/css/usergrid-site.css" rel="stylesheet" type='text/css'>
+    <link href="http://fonts.googleapis.com/css?family=Open+Sans:200,400,500,300,600,800,700,400italic,600italic,700italic,800italic,300italic" rel="stylesheet" type="text/css">
+    <link href="/css/font-awesome.min.css" rel="stylesheet" type='text/css'>
+
+    
+
+    <!-- HTML5 shim, for IE6-8 support of HTML5 elements. All other JS at the end of file. -->
+    <!--[if lt IE 9]>
+      <script src="js/html5shiv.js"></script>
+      <script src="js/respond.min.js"></script>
+    <![endif]-->
+</head>
+<body>
+
+    <header class="navbar navbar-inverse navbar-fixed-top bf-docs-nav secondary" role="banner">
+    <div class="container">
+        <div class="navbar-header">
+            <button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bf-navbar-collapse">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+            <a href="/" class="navbar-brand">
+                <img id="home-logo" src="/img/apache_usergrid_logo_white_small.png" />
+            </a>
+        </div>
+        <nav class="collapse navbar-collapse bf-navbar-collapse" role="navigation">
+            <ul class="nav navbar-nav navbar-right">
+                <!--<li class="active"><a href="/docs/"><span class="icns icon-book"></span></a></li>-->
+                <li class=""><a href="/community/"><span class="icns icon-group"></span></a></li>
+                <li><a href="http://github.com/usergrid/usergrid" target="_blank"><span class="icns icon-github-sign"></span></a></li>
+                <!--<li><a href="https://trello.com/b/exQmJIOn/usergrid" target="_blank"><span class="icns icon-trello"></span></a></li>-->
+                <li><a href="https://issues.apache.org/jira/browse/USERGRID" target="_blank"><span class="icns icon-bug"></span></a></li>
+                <li><a href="http://stackoverflow.com/search?q=usergrid" target="_blank"><span class="icns icon-stackexchange"></span></a></li>
+                <li><a href="http://webchat.freenode.net/?channels=%23usergrid&uio=d4" target="_blank"><span class="icns icon-comments"></span></a></li>
+                <!--<li><a href="https://groups.google.com/forum/#!forum/usergrid" target="_blank"><span class="icns icon-envelope"></span></a></li>-->
+                <li><a href="https://twitter.com/usergrid" target="_blank"><span class="icns icon-twitter"></span></a></li>
+            </ul>
+        </nav>
+    </div>
+    </header>
+
+
+<div class="container bf-docs-container">    
+    <div class="row">
+        <div class="col-md-3">
+            <div class="bf-sidebar hidden-print" role="complementary">
+                <ul class="nav nav-list">
+                    <li><a href="#">Getting Up & Running Locally</a></li>
+                    <li><a href="#"><code>ugc</code> — the Command-line Client</a></li>
+
+                    <li class="nav-header"><span>Concepts</span></li>
+                    <li>
+                        <a href="/docs/organizations-admins/">Organizations & Admins</a>
+                        <ul>
+                            <li>
+                                <a href="/docs/applications">Applications</a>
+                                <ul>
+                                    <li><a href="#">Roles & Permissions</a></li>
+                                    <li><a href="#">Queues</a></li>
+                                    <li><a href="#">Events & Counters</a></li>
+                                    <li>
+                                        <a href="#">Collections</a>
+                                        <ul>
+                                            <li><a href="#">Query Language</a></li>
+                                            <li><a href="#">Users & Devices</a></li>
+                                            <li><a href="#">Groups</a></li>
+                                            <li><a href="#">Activities</a></li>
+                                            <li><a href="#">Assets</a></li>
+                                        </ul>
+                                    </li>
+                                </ul>
+                            </li>
+                        </ul>
+                    </li>
+
+
+                    <li class="nav-header"><span>Usage</span></li>
+                    <li><a href="/docs/rest-api">REST API</a></li>
+                    <li><a class="icns-apple" href="#">iOS SDK</a></li>
+                    <li><a class="icns-android" href="#">Android SDK</a></li>
+                    <li><a class="icns-html5" href="/docs/html5-javascript-sdk">HTML5 / JavaScript SDK</a></li>
+                    <li><a class="icns-windows" href="#">Windows 8 / Windows Phone / .net SDK</a></li>
+                    <li><a href="/docs/nodejs-module">Node.js module</a></li>
+                    <li><a href="/docs/ruby-gem">Ruby gem</a></li>
+                    <li><a href="#">Ruby on Rails gem</a></li>
+                    <li><a href="#">PHP library</a></li>
+
+                    <li class="nav-header"><span>Internals</span></li>
+                    <li><a href="#">Design & Goals</a></li>
+                    <li><a href="#">Java Architecture</a></li>
+                    <li><a href="#">Cassandra Schema</a></li>
+                    <li><a href="#">Contributing</a></li>
+
+                    <li class="nav-header"><span>Operations</span></li>
+                    <li><a href="#">Deploying</a></li>
+                    <li><a href="#">Monitoring</a></li>
+                    <li><a href="#">Upgrading</a></li>
+                    <li><a href="#">Security</a></li>
+                </ul>
+            </div>
+        </div>
+
+        <div class="col-md-9 main-article" role="main">
+            <div class="page-article">
+                <div class="page-header">
+                    <h1>App services security model</h1>
+                  <small><a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/security-model/">contribute to this article on github</a></small>
+                </div>
+                <div class="toc">
+	<ul>
+<li><a href="#app-services-security-model">App services security model</a></li>
+</ul>
+</div>
+<h1 id="app-services-security-model"><a href="#app-services-security-model">App services security model</a></h1>
+<p>This section contains information about the security model in App services. It describes how App services performs authentication and mediates access to resources.</p>
+<p>As described in these pages, App services rely on OAuth 2.0 for authentication, basing data access decisions on tokens supplied with each API request. Appropriate credentials are necessary to generate these tokens. Access to App services entities is further restricted by assigned roles and permissions.</p>
+<ul>
+<li>
+<a href="/authentication-and-access-app-services-0">Authentication and access in App services</a>
+<ul>
+<li><a href="/usergrid/content/authentication-and-access-usergrid#access_types">Access types</a></li>
+<li><a href="/usergrid/content/authentication-and-access-usergrid#applications">Applications</a></li>
+<li><a href="/usergrid/content/authentication-and-access-usergrid#application_users">Application users</a></li>
+<li><a href="/usergrid/content/authentication-and-access-usergrid#access_token">Using an access token</a></li>
+<li><a href="/usergrid/content/authentication-and-access-usergrid#safe_mobile">Safe mobile access</a></li>
+</ul>
+</li>
+<li>
+<a href="/managing-access-defining-permission-rules">Managing access by defining permission rules</a>
+<ul>
+<li><a href="/usergrid/content/roles-and-permissions-usergrid#roles">Roles</a></li>
+<li><a href="/usergrid/content/roles-and-permissions-usergrid#permissions">Permissions</a></li>
+</ul>
+</li>
+<li>Nonexistent node nid: 302.
+<ul>
+<li><a href="/usergrid/content/facebook-sign">authentication</a></li>
+</ul>
+</li>
+</ul>
+            </div>
+        </div>
+    </div>
+    <div class="row">
+        <div class="col-md-3"></div>
+        <div class="col-md-9">
+            <div class="github-callout">
+                <strong>Questions?</strong> Please do <a href="https://groups.google.com/forum/#!forum/usergrid">ask on the mailing-list</a>!<br/>
+                <strong>Found an error?</strong> We’d greatly appreciate a pull request about <a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/security-model/">this article on github</a>.</div>
+        </div>
+    </div>
+</div>
+
+
+<footer class="bf-footer" role="contentinfo">
+    <div class="container">
+        <div class="row">
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header"><a href="/">Home</a></li>
+                    <li class="nav-header"><a href="/community/">Community</a></li>
+                        <!-- <li><a href="/community#events">Events</a></li> -->
+                        <li><a href="/community/#mailing-lists">Mailing Lists</a></li>
+                        <li><a href="/community/#deployments">Deployments</a></li>
+                        <li><a href="/community/#committers">Commiters</a></li>
+                    <!-- <li class="nav-header"><a href="#">Docs</a></li> -->
+                </ul>
+            </div>
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header"><a href="https://github.com/usergrid/usergrid/" target="_blank">Code</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/stack" target="_blank">Server Stack</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/portal" target="_blank">Admin Portal</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/ugc" target="_blank">ugc command line</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ios" target="_blank">iOS SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/android" target="_blank">Android SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/html5-javascript" target="_blank">HTML5/JS SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/nodejs" target="_blank">node.js module</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ruby-on-rails" target="_blank">Ruby on Rails gem</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ruby" target="_blank">Ruby gem</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/php" target="_blank">PHP SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/java" target="_blank">Java SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/dotnet" target="_blank">.NET / Windows SDK</a></li>
+                </ul>
+            </div>
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header">Resources</li>
+                        <li><a href="http://github.com/usergrid/usergrid" target="_blank">GitHub Code</a></li>
+                        <li><a href="https://issues.apache.org/jira/browse/USERGRID" target="_blank">JIRA Bug Tracker</a></li>
+                        <li><a href="http://stackoverflow.com/search?q=usergrid" target="_blank">StackOverflow</a></li>
+                        <li><a href="http://webchat.freenode.net/?channels=%23usergrid&uio=d4">IRC</a></li>
+                        <li><a href="https://twitter.com/usergrid" target="_blank">Twitter</a></li>
+                        <li><a href="http://incubator.apache.org/projects/usergrid.html" target="_blank">Podling Listing</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/LICENSE" target="_blank">License</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/stack#requirements" target="_blank">Getting Started</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/stack#contributing" target="_blank">Contribution Guidelines</a></li>
+                </ul>
+            </div>
+            <div class="col-md-2"></div>
+            <div class="col-md-4">
+                <a class="twitter-timeline" href="https://twitter.com/search?q=%23usergrid" data-widget-id="401499136807038976"  data-related="usergrid" height="400px" style="overflow:hidden">Tweets about "usergrid"</a>
+                <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
+            </div> 
+        <!--
+            <div class="col-md-4">
+                <div class="input-group form-search">
+                    <input type="text" class="form-control search-query">
+                    <span class="input-group-btn">
+                        <button type="submit" class="btn btn-primary" data-type="last">Search</button>
+                    </span>
+                </div>
+            </div> -->
+        </div> 
+        <div class="row">
+            <div id="copyright">
+                <img src="/img/egg-logo.png" /><br/><br/>
+                <p>Apache Usergrid is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the name of Apache TLP sponsor. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p>
+                <p>Copyright © 2013 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.<br>
+                Apache and the Apache feather logos are trademarks of The Apache Software Foundation.</p>
+                <p class="credits">Site designed & assembled with love by <a href="https://github.com/ryuneeee">@ryuneeee</a> + <a href="https://github.com/realbeast">@realbeast</a> + <a href="https://twitter.com/timanglade">@timanglade</a>.</p>
+            </div>
+        </div>
+    </div>
+</footer>
+
+<script type="text/javascript" src="/js/head.js"></script>
+<script type="text/javascript">
+    head.js("/js/jquery-1.10.1.min.js", "/js/bootstrap.min.js", "/js/usergrid-site.js");
+</script>
+<script type="text/javascript">
+    //IE outdate friendly warning if you don't want remove it
+    var $buoop = {vs:{i:8,f:3.6,o:10.6,s:3.2,n:9}}
+    $buoop.ol = window.onload;
+    window.onload=function(){
+        try {if ($buoop.ol) $buoop.ol();}catch (e) {}
+        var e = document.createElement("script");
+        e.setAttribute("type", "text/javascript");
+        e.setAttribute("src", "http://browser-update.org/update.js");
+        document.body.appendChild(e);
+    }
+</script>
+
+
+</body>
+</html>
\ No newline at end of file

Added: incubator/usergrid/site/publish/docs/updating-collections/index.html
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/publish/docs/updating-collections/index.html?rev=1542910&view=auto
==============================================================================
--- incubator/usergrid/site/publish/docs/updating-collections/index.html (added)
+++ incubator/usergrid/site/publish/docs/updating-collections/index.html Mon Nov 18 06:09:23 2013
@@ -0,0 +1,663 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>Apache Usergrid (incubating) — Updating Collections</title>
+    <meta http-equiv="x-ua-compatible" content="ie=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />
+    <meta name="keywords" content="Apache Usergrid, Usergrid, BaaS, Backend-as-a-Service">
+    <meta name="description" content="An open-source Backend-as-a-Service stack for web & mobile applications, based on RESTful APIs." />
+    <meta property="og:title" content="Apache Usergrid" />
+    <meta property="og:description" content="An open-source Backend-as-a-Service stack for web & mobile applications, based on RESTful APIs." />
+    <!-- Loading Typekit -->
+    <script type="text/javascript" src="//use.typekit.net/ddl7izx.js"></script>
+    <script type="text/javascript">try{Typekit.load();}catch(e){}</script>
+    <!-- Loading Bootstrap -->
+    <link href="/bootstrap/bootstrap.min.css" rel="stylesheet" type='text/css'>
+    <link href="/css/bootflat.css" rel="stylesheet" type='text/css'>
+    <link href="/css/usergrid-site.css" rel="stylesheet" type='text/css'>
+    <link href="http://fonts.googleapis.com/css?family=Open+Sans:200,400,500,300,600,800,700,400italic,600italic,700italic,800italic,300italic" rel="stylesheet" type="text/css">
+    <link href="/css/font-awesome.min.css" rel="stylesheet" type='text/css'>
+
+    
+
+    <!-- HTML5 shim, for IE6-8 support of HTML5 elements. All other JS at the end of file. -->
+    <!--[if lt IE 9]>
+      <script src="js/html5shiv.js"></script>
+      <script src="js/respond.min.js"></script>
+    <![endif]-->
+</head>
+<body>
+
+    <header class="navbar navbar-inverse navbar-fixed-top bf-docs-nav secondary" role="banner">
+    <div class="container">
+        <div class="navbar-header">
+            <button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bf-navbar-collapse">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+            <a href="/" class="navbar-brand">
+                <img id="home-logo" src="/img/apache_usergrid_logo_white_small.png" />
+            </a>
+        </div>
+        <nav class="collapse navbar-collapse bf-navbar-collapse" role="navigation">
+            <ul class="nav navbar-nav navbar-right">
+                <!--<li class="active"><a href="/docs/"><span class="icns icon-book"></span></a></li>-->
+                <li class=""><a href="/community/"><span class="icns icon-group"></span></a></li>
+                <li><a href="http://github.com/usergrid/usergrid" target="_blank"><span class="icns icon-github-sign"></span></a></li>
+                <!--<li><a href="https://trello.com/b/exQmJIOn/usergrid" target="_blank"><span class="icns icon-trello"></span></a></li>-->
+                <li><a href="https://issues.apache.org/jira/browse/USERGRID" target="_blank"><span class="icns icon-bug"></span></a></li>
+                <li><a href="http://stackoverflow.com/search?q=usergrid" target="_blank"><span class="icns icon-stackexchange"></span></a></li>
+                <li><a href="http://webchat.freenode.net/?channels=%23usergrid&uio=d4" target="_blank"><span class="icns icon-comments"></span></a></li>
+                <!--<li><a href="https://groups.google.com/forum/#!forum/usergrid" target="_blank"><span class="icns icon-envelope"></span></a></li>-->
+                <li><a href="https://twitter.com/usergrid" target="_blank"><span class="icns icon-twitter"></span></a></li>
+            </ul>
+        </nav>
+    </div>
+    </header>
+
+
+<div class="container bf-docs-container">    
+    <div class="row">
+        <div class="col-md-3">
+            <div class="bf-sidebar hidden-print" role="complementary">
+                <ul class="nav nav-list">
+                    <li><a href="#">Getting Up & Running Locally</a></li>
+                    <li><a href="#"><code>ugc</code> — the Command-line Client</a></li>
+
+                    <li class="nav-header"><span>Concepts</span></li>
+                    <li>
+                        <a href="/docs/organizations-admins/">Organizations & Admins</a>
+                        <ul>
+                            <li>
+                                <a href="/docs/applications">Applications</a>
+                                <ul>
+                                    <li><a href="#">Roles & Permissions</a></li>
+                                    <li><a href="#">Queues</a></li>
+                                    <li><a href="#">Events & Counters</a></li>
+                                    <li>
+                                        <a href="#">Collections</a>
+                                        <ul>
+                                            <li><a href="#">Query Language</a></li>
+                                            <li><a href="#">Users & Devices</a></li>
+                                            <li><a href="#">Groups</a></li>
+                                            <li><a href="#">Activities</a></li>
+                                            <li><a href="#">Assets</a></li>
+                                        </ul>
+                                    </li>
+                                </ul>
+                            </li>
+                        </ul>
+                    </li>
+
+
+                    <li class="nav-header"><span>Usage</span></li>
+                    <li><a href="/docs/rest-api">REST API</a></li>
+                    <li><a class="icns-apple" href="#">iOS SDK</a></li>
+                    <li><a class="icns-android" href="#">Android SDK</a></li>
+                    <li><a class="icns-html5" href="/docs/html5-javascript-sdk">HTML5 / JavaScript SDK</a></li>
+                    <li><a class="icns-windows" href="#">Windows 8 / Windows Phone / .net SDK</a></li>
+                    <li><a href="/docs/nodejs-module">Node.js module</a></li>
+                    <li><a href="/docs/ruby-gem">Ruby gem</a></li>
+                    <li><a href="#">Ruby on Rails gem</a></li>
+                    <li><a href="#">PHP library</a></li>
+
+                    <li class="nav-header"><span>Internals</span></li>
+                    <li><a href="#">Design & Goals</a></li>
+                    <li><a href="#">Java Architecture</a></li>
+                    <li><a href="#">Cassandra Schema</a></li>
+                    <li><a href="#">Contributing</a></li>
+
+                    <li class="nav-header"><span>Operations</span></li>
+                    <li><a href="#">Deploying</a></li>
+                    <li><a href="#">Monitoring</a></li>
+                    <li><a href="#">Upgrading</a></li>
+                    <li><a href="#">Security</a></li>
+                </ul>
+            </div>
+        </div>
+
+        <div class="col-md-9 main-article" role="main">
+            <div class="page-article">
+                <div class="page-header">
+                    <h1>Updating Collections</h1>
+                  <small><a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/updating-collections/">contribute to this article on github</a></small>
+                </div>
+                <div class="toc">
+	<ul>
+<li>
+<a href="#updating-collections">Updating Collections</a><ul>
+<li>
+<a href="#batch-updating-entities-in-a-collection">Batch updating entities in a collection</a><ul>
+<li><a href="#example-requestresponse">Example Request/Response</a></li>
+<li><a href="#request-syntax">Request Syntax</a></li>
+<li><a href="#parameters">Parameters</a></li>
+<li><a href="#example-requestresponse-1">Example Request/Response</a></li>
+<li><a href="#sdk-method">SDK Method</a></li>
+<li><a href="#properties">Properties</a></li>
+<li><a href="#example-requestresponse-2">Example Request/Response</a></li>
+<li><a href="#sdk-method-1">SDK Method</a></li>
+<li><a href="#parameters-1">Parameters</a></li>
+<li><a href="#example-requestresponse-3">Example Request/Response</a></li>
+<li><a href="#sdk-method-2">SDK Method</a></li>
+<li><a href="#properties-1">Properties</a></li>
+<li><a href="#example-requestresponse-4">Example Request/Response</a></li>
+<li><a href="#sdk-method-3">SDK Method</a></li>
+<li><a href="#parameters-2">Parameters</a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<h1 id="updating-collections"><a href="#updating-collections">Updating Collections</a></h1>
+<p>This article describes how to perform batch updates on all entities in a collection. Batch updates require the use of a query string in the request, which can either specify all entities in the collection or a subset of entities for the update to be performed on. For more information on queries, see <a href="/basic-query-syntax">Basic query syntax</a>.</p>
+<p><strong>Note:</strong> Although not shown in the API examples below, you need to provide a valid access token with each API call. See <a href="/authenticating-users-and-application-clients">Authenticating users and application clients</a> for details.</p>
+<h2 id="batch-updating-entities-in-a-collection"><a href="#batch-updating-entities-in-a-collection">Batch updating entities in a collection</a></h2>
+<ul>
+<li><a href="#curl_update_collection">cURL</a></li>
+<li><a href="#ios_update_collection">iOS</a></li>
+<li><a href="#android_update_collection">Android</a></li>
+<li><a href="#javascript_update_collection">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_update_collection">Ruby</a></li>
+<li><a href="#nodejs_update_collection">Node.js</a></li>
+</ul><h3 id="example-requestresponse"><a href="#example-requestresponse">Example Request/Response</a></h3>
+<h4 id="request"><a href="#request">Request:</a></h4>
+<pre><code>curl -X PUT https://api.usergrid.com/your-org/your-app/items/?ql= -d '{"availability":"in-stock"}'</code></pre>
+<p>Note the empty <code>?ql=</code> query string.</p>
+<h4 id="response"><a href="#response">Response:</a></h4>
+<pre><code>{
+  "action" : "put",
+  "application" : "f34f4222-a166-11e2-a7f7-02e81adcf3d0",
+  "params" : {
+    "ql" : [ "" ]
+  },
+  "path" : "/items",
+  "uri" : "http://api.usergrid.com/your-org/your-app/items",
+  "entities" : [ {
+    "uuid" : "31847b9a-1a62-11e3-be04-8d05e96f700d",
+    "type" : "item",
+    "name" : "milk",
+    "price" : "3.25",
+    "availability" : "in-stock"
+    "created" : 1378849479113,
+    "modified" : 1378849567301,
+    "name" : "milk",
+  }, {
+    "uuid" : "3192ac6a-1a62-11e3-a24f-496ca1d42ce7",
+    "type" : "item",
+    "name" : "bread",
+    "price" : "4.00",
+    "availability" : "in-stock"
+    "created" : 1378849479206,
+    "modified" : 1378849567351,
+    "name" : "bread",
+  } ],
+  "timestamp" : 1378849567280,
+  "duration" : 207,
+  "organization" : "your-org",
+  "applicationName" : "your-app"
+}</code></pre>
+<h3 id="request-syntax"><a href="#request-syntax">Request Syntax</a></h3>
+<pre><code>curl -X PUT https://api.usergrid.com/&lt;org&gt;/&lt;app&gt;/&lt;collection&gt;/?ql= -d {&lt;property&gt;}</code></pre>
+<p>Note the empty query string (ql=) appended to the URL.</p>
+<h3 id="parameters"><a href="#parameters">Parameters</a></h3>
+<table>
+<col width="50%">
+<col width="50%">
+<thead><tr class="header">
+<th align="left">Parameter</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody>
+<tr class="odd">
+<td align="left"><p>org</p></td>
+<td align="left"><p>Organization UUID or organization name</p></td>
+</tr>
+<tr class="even">
+<td align="left"><p>app</p></td>
+<td align="left"><p>Application UUID or application name</p></td>
+</tr>
+<tr class="odd">
+<td align="left"><p>collection</p></td>
+<td align="left"><p>Collection UUID or collection name</p></td>
+</tr>
+<tr class="even">
+<td align="left"><p>property</p></td>
+<td align="left">
+<p>An entity property to be updated, formatted as a key-value pair. For example:</p>
+<pre><code>{"property_1":"value_1", "proper</code></pre>
+<p>ty_2“:”value_2“,…}</p>
+</td>
+</tr>
+</tbody>
+</table><p>This example uses the <a href="/app-services-sdks#ios">Apache Usergrid iOS SDK</a>.</p>
+<h3 id="example-requestresponse-1"><a href="#example-requestresponse-1">Example Request/Response</a></h3>
+<h4 id="request-1"><a href="#request-1">Request:</a></h4>
+<pre><code>-(NSString*)updateCollection {
+
+    NSString *url = @"https://api.usergrid.com/your-org/your-app/items/?ql";
+    NSString *op = @"PUT";
+    NSString *opData = @"{\"availability\":\"in-stock\"}"; //we escape the quotes
+    
+    //we recommend you call ApigeeClient from your AppDelegate. 
+    //for more information see the iOS SDK install guide: http://apigee.com/docs/app-services/content/installing-apigee-sdk-ios
+    //create an instance of AppDelegate
+    AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
+    
+    //call createEntity to initiate the API call
+    ApigeeClientResponse *response = [appDelegate.dataClient apiRequest: url operation: op data: opData];
+    
+    @try {
+        //success
+    }
+    @catch (NSException * e) {
+        //fail
+    }
+
+}
+                </code></pre>
+<h4 id="response-1"><a href="#response-1">Response:</a></h4>
+<pre><code>{
+  "action" : "put",
+  "application" : "f34f4222-a166-11e2-a7f7-02e81adcf3d0",
+  "params" : {
+    "ql" : [ "" ]
+  },
+  "path" : "/items",
+  "uri" : "http://api.usergrid.com/your-org/your-app/items",
+  "entities" : [ {
+    "uuid" : "31847b9a-1a62-11e3-be04-8d05e96f700d",
+    "type" : "item",
+    "name" : "milk",
+    "price" : "3.25",
+    "availability" : "in-stock"
+    "created" : 1378849479113,
+    "modified" : 1378849567301,
+    "name" : "milk",
+  }, {
+    "uuid" : "3192ac6a-1a62-11e3-a24f-496ca1d42ce7",
+    "type" : "item",
+    "name" : "bread",
+    "price" : "4.00",
+    "availability" : "in-stock"
+    "created" : 1378849479206,
+    "modified" : 1378849567351,
+    "name" : "bread",
+  } ],
+  "timestamp" : 1378849567280,
+  "duration" : 207,
+  "organization" : "your-org",
+  "applicationName" : "your-app"
+}</code></pre>
+<h3 id="sdk-method"><a href="#sdk-method">SDK Method</a></h3>
+<pre><code>(ApigeeClientResponse *)apiRequest: (NSString *)url operation:(NSString *)op data:(NSString *)opData</code></pre>
+<h3 id="properties"><a href="#properties">Properties</a></h3>
+<table>
+<col width="50%">
+<col width="50%">
+<thead><tr class="header">
+<th align="left">Parameter</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody>
+<tr class="odd">
+<td align="left"><p>url</p></td>
+<td align="left">
+<p>A fully-formed request url in the following format: https://api.usergrid.com/<org>/&lt; app&gt;/<collection>/?ql=</collection></org></p>
+<p>Note that you must include an empty ‘?ql=’ query string at the end of the URL</p>
+</td>
+</tr>
+<tr class="even">
+<td align="left"><p>op</p></td>
+<td align="left"><p>The HTTP method - in this case, ‘PUT’</p></td>
+</tr>
+<tr class="odd">
+<td align="left"><p>opData</p></td>
+<td align="left"><p>A JSON-formatted string that contains the entity properties to be updated</p></td>
+</tr>
+</tbody>
+</table><p>Updating all entities in a collection is not currently supported by the <a href="/app-services-sdks#android">Apache Usergrid Android SDK</a>.</p>
+<p>This example uses the <a href="/app-services-sdks#javascript">Apache Usergrid JavaScript (HTML5) SDK</a>.</p>
+<h3 id="example-requestresponse-2"><a href="#example-requestresponse-2">Example Request/Response</a></h3>
+<h4 id="request-2"><a href="#request-2">Request:</a></h4>
+<pre><code>//create the basic client object
+var dataClient = new Usergrid.Client({
+    orgName:'your-org',
+    appName:'your-app'
+});
+
+//options for the request
+var options = {
+    endpoint:"items/?ql=", //don't forget to append '/?ql='
+    method:"PUT",
+    body: {"availability":"in-stock"}
+}
+
+dataClient.request(options,function (error,response) {
+
+    if (error) { 
+        // Error
+    } else { 
+        // Success
+    }
+
+});    
+                </code></pre>
+<h4 id="response-2"><a href="#response-2">Response:</a></h4>
+<pre><code>Object {action: "put", application: "f34f4222-a166-11e2-a7f7-02e81adcf3d0", params: Object, path: "/items", uri: "http://api.usergrid.com/your-org/your-app/items"…}
+action: "put"
+application: "f34f4222-a166-11e2-a7f7-02e81adcf3d0"
+applicationName: "your-app"
+duration: 92
+entities: Array[2]
+    0: Object
+        availability: "in-stock"
+        created: 1378852309294
+        modified: 1378853303215
+        name: "milk"
+        price: "3.25"
+        type: "item"
+        uuid: "c86ffbf0-1a68-11e3-ab22-3713e5fcf9d2"
+        __proto__: Object
+    1: Object
+        availability: "in-stock"
+        created: 1378852309373
+        modified: 1378853303256
+        name: "bread"
+        price: "4.00"
+        type: "item"
+        uuid: "c87be2da-1a68-11e3-80f4-975f1f8b1f86"
+        __proto__: Object
+    length: 2
+    __proto__: Array[0]
+organization: "your-org"
+params: Object
+path: "/items"
+timestamp: 1378853303201
+uri: "http://api.usergrid.com/your-org/your-app/items"
+__proto__: Object
+                </code></pre>
+<h3 id="sdk-method-1"><a href="#sdk-method-1">SDK Method</a></h3>
+<pre><code>request(options, callback)</code></pre>
+<h3 id="parameters-1"><a href="#parameters-1">Parameters</a></h3>
+<table>
+<col width="50%">
+<col width="50%">
+<thead><tr class="header">
+<th align="left">Parameter</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody>
+<tr class="odd">
+<td align="left"><p>options</p></td>
+<td align="left">
+<p>A JSON-formatted object containing the following properties:</p>
+<ul>
+<li>endpoint: the UUID or name of the collection to be updated, appended by an empty query string in the format: &lt;collection&gt;/?ql=</li>
+<li>method: the HTTP method for the request – in this case <code>PUT</code>
+</li>
+<li>body: the body of the request that specifies the properties to be updated in JSON format</li>
+</ul>
+</td>
+</tr>
+<tr class="even">
+<td align="left"><p>callback</p></td>
+<td align="left"><p>Callback function to handle the API response</p></td>
+</tr>
+</tbody>
+</table><p>This example uses the <a href="/app-services-sdks#ruby">Apache Usergrid RubyGem</a>.</p>
+<h3 id="example-requestresponse-3"><a href="#example-requestresponse-3">Example Request/Response</a></h3>
+<h4 id="request-3"><a href="#request-3">Request:</a></h4>
+<pre><code>#Create a client object
+usergrid_api = 'https://api.usergrid.com'
+organization = 'your-org'
+application = 'your-app'
+
+client = Usergrid::Application.new "#{usergrid_api}/#{organization}/#{application}"
+
+begin
+    collection = client['items'].collection
+    collection.update_query({availability: 'in-stock'},"")
+rescue
+    #fail
+end
+                </code></pre>
+<h4 id="response-3"><a href="#response-3">Response:</a></h4>
+<pre><code>{
+  "action" : "put",
+  "application" : "f34f4222-a166-11e2-a7f7-02e81adcf3d0",
+  "params" : {
+    "ql" : [ "" ]
+  },
+  "path" : "/items",
+  "uri" : "http://api.usergrid.com/your-org/your-app/items",
+  "entities" : [ {
+    "uuid" : "31847b9a-1a62-11e3-be04-8d05e96f700d",
+    "type" : "item",
+    "name" : "milk",
+    "price" : "3.25",
+    "availability" : "in-stock"
+    "created" : 1378849479113,
+    "modified" : 1378849567301,
+    "name" : "milk",
+  }, {
+    "uuid" : "3192ac6a-1a62-11e3-a24f-496ca1d42ce7",
+    "type" : "item",
+    "name" : "bread",
+    "price" : "4.00",
+    "availability" : "in-stock"
+    "created" : 1378849479206,
+    "modified" : 1378849567351,
+    "name" : "bread",
+  } ],
+  "timestamp" : 1378849567280,
+  "duration" : 207,
+  "organization" : "your-org",
+  "applicationName" : "your-app"
+}</code></pre>
+<h3 id="sdk-method-2"><a href="#sdk-method-2">SDK Method</a></h3>
+<pre><code>collection.update_query(properties, query_string)</code></pre>
+<h3 id="properties-1"><a href="#properties-1">Properties</a></h3>
+<table>
+<thead><tr class="header">
+<th align="left">Parameter</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody>
+<tr class="odd">
+<td align="left">properties</td>
+<td align="left">JSON-formatted string that contains the entity properties to be updated</td>
+</tr>
+<tr class="even">
+<td align="left">query_string</td>
+<td align="left">A query string that specifies the entities to be updated. Use an empty string (<code>""</code>) to update all entities.</td>
+</tr>
+</tbody>
+</table><p>The example assumes use of the <a href="/app-services-sdks#nodejs">Apache Usergrid Node.js module</a>.</p>
+<h3 id="example-requestresponse-4"><a href="#example-requestresponse-4">Example Request/Response</a></h3>
+<h4 id="request-4"><a href="#request-4">Request:</a></h4>
+<pre><code>//Create the Apache Usergrid client object
+var dataClient = new Usergrid.client({
+    orgName:'your-org',
+    appName:'your-app'
+});
+
+//Specify the options for the request
+var options = {
+    endpoint:"items/?ql=", //don't forget to append '/?ql='
+    method:"PUT",
+    body: {"availability":"in-stock"}
+}
+
+dataClient.request(options,function (error,response) {
+
+    if (error) { 
+        //error
+    } else { 
+        //success
+    }
+
+});             
+                </code></pre>
+<h4 id="response-4"><a href="#response-4">Response:</a></h4>
+<pre><code>{ action: 'put',
+  application: 'f34f4222-a166-11e2-a7f7-02e81adcf3d0',
+  params: { ql: [ '' ] },
+  path: '/items',
+  uri: 'http://api.usergrid.com/your-org/your-app/items',
+  entities: 
+   [ { uuid: 'c86ffbf0-1a68-11e3-ab22-3713e5fcf9d2',
+       type: 'item',
+       name: 'milk',
+       created: 1378852309294,
+       modified: 1378855073613,
+       availability: 'in-stock' },
+     { uuid: 'c87be2da-1a68-11e3-80f4-975f1f8b1f86',
+       type: 'item',
+       name: 'bread',
+       created: 1378852309373,
+       modified: 1378855073655,
+       availability: 'in-stock' } ],
+  timestamp: 1378855073595,
+  duration: 106,
+  organization: 'your-org',
+  applicationName: 'your-app' }
+                </code></pre>
+<h3 id="sdk-method-3"><a href="#sdk-method-3">SDK Method</a></h3>
+<pre><code>request(options,callback);</code></pre>
+<h3 id="parameters-2"><a href="#parameters-2">Parameters</a></h3>
+<table>
+<col width="50%">
+<col width="50%">
+<thead><tr class="header">
+<th align="left">Parameter</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody>
+<tr class="odd">
+<td align="left"><p>options</p></td>
+<td align="left">
+<p>A JSON-formatted object containing the following properties:</p>
+<ul>
+<li>endpoint: the UUID or name of the collection to be updated, appended by an empty query string in the format: &lt;collection&gt;/?ql=</li>
+<li>method: the HTTP method for the request, in this case <em>PUT</em>
+</li>
+</ul>
+</td>
+</tr>
+<tr class="even">
+<td align="left"><p>callback</p></td>
+<td align="left"><p>Callback function to handle the API response</p></td>
+</tr>
+</tbody>
+</table><p> </p>
+            </div>
+        </div>
+    </div>
+    <div class="row">
+        <div class="col-md-3"></div>
+        <div class="col-md-9">
+            <div class="github-callout">
+                <strong>Questions?</strong> Please do <a href="https://groups.google.com/forum/#!forum/usergrid">ask on the mailing-list</a>!<br/>
+                <strong>Found an error?</strong> We’d greatly appreciate a pull request about <a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/updating-collections/">this article on github</a>.</div>
+        </div>
+    </div>
+</div>
+
+
+<footer class="bf-footer" role="contentinfo">
+    <div class="container">
+        <div class="row">
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header"><a href="/">Home</a></li>
+                    <li class="nav-header"><a href="/community/">Community</a></li>
+                        <!-- <li><a href="/community#events">Events</a></li> -->
+                        <li><a href="/community/#mailing-lists">Mailing Lists</a></li>
+                        <li><a href="/community/#deployments">Deployments</a></li>
+                        <li><a href="/community/#committers">Commiters</a></li>
+                    <!-- <li class="nav-header"><a href="#">Docs</a></li> -->
+                </ul>
+            </div>
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header"><a href="https://github.com/usergrid/usergrid/" target="_blank">Code</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/stack" target="_blank">Server Stack</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/portal" target="_blank">Admin Portal</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/ugc" target="_blank">ugc command line</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ios" target="_blank">iOS SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/android" target="_blank">Android SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/html5-javascript" target="_blank">HTML5/JS SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/nodejs" target="_blank">node.js module</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ruby-on-rails" target="_blank">Ruby on Rails gem</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/ruby" target="_blank">Ruby gem</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/php" target="_blank">PHP SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/java" target="_blank">Java SDK</a></li>
+                    <li><a href="https://github.com/usergrid/usergrid/blob/master/sdks/dotnet" target="_blank">.NET / Windows SDK</a></li>
+                </ul>
+            </div>
+            <div class="col-md-2">
+                <ul class="nav nav-list">
+                    <li class="nav-header">Resources</li>
+                        <li><a href="http://github.com/usergrid/usergrid" target="_blank">GitHub Code</a></li>
+                        <li><a href="https://issues.apache.org/jira/browse/USERGRID" target="_blank">JIRA Bug Tracker</a></li>
+                        <li><a href="http://stackoverflow.com/search?q=usergrid" target="_blank">StackOverflow</a></li>
+                        <li><a href="http://webchat.freenode.net/?channels=%23usergrid&uio=d4">IRC</a></li>
+                        <li><a href="https://twitter.com/usergrid" target="_blank">Twitter</a></li>
+                        <li><a href="http://incubator.apache.org/projects/usergrid.html" target="_blank">Podling Listing</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/LICENSE" target="_blank">License</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/stack#requirements" target="_blank">Getting Started</a></li>
+                        <li><a href="https://github.com/usergrid/usergrid/blob/master/stack#contributing" target="_blank">Contribution Guidelines</a></li>
+                </ul>
+            </div>
+            <div class="col-md-2"></div>
+            <div class="col-md-4">
+                <a class="twitter-timeline" href="https://twitter.com/search?q=%23usergrid" data-widget-id="401499136807038976"  data-related="usergrid" height="400px" style="overflow:hidden">Tweets about "usergrid"</a>
+                <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
+            </div> 
+        <!--
+            <div class="col-md-4">
+                <div class="input-group form-search">
+                    <input type="text" class="form-control search-query">
+                    <span class="input-group-btn">
+                        <button type="submit" class="btn btn-primary" data-type="last">Search</button>
+                    </span>
+                </div>
+            </div> -->
+        </div> 
+        <div class="row">
+            <div id="copyright">
+                <img src="/img/egg-logo.png" /><br/><br/>
+                <p>Apache Usergrid is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the name of Apache TLP sponsor. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p>
+                <p>Copyright © 2013 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.<br>
+                Apache and the Apache feather logos are trademarks of The Apache Software Foundation.</p>
+                <p class="credits">Site designed & assembled with love by <a href="https://github.com/ryuneeee">@ryuneeee</a> + <a href="https://github.com/realbeast">@realbeast</a> + <a href="https://twitter.com/timanglade">@timanglade</a>.</p>
+            </div>
+        </div>
+    </div>
+</footer>
+
+<script type="text/javascript" src="/js/head.js"></script>
+<script type="text/javascript">
+    head.js("/js/jquery-1.10.1.min.js", "/js/bootstrap.min.js", "/js/usergrid-site.js");
+</script>
+<script type="text/javascript">
+    //IE outdate friendly warning if you don't want remove it
+    var $buoop = {vs:{i:8,f:3.6,o:10.6,s:3.2,n:9}}
+    $buoop.ol = window.onload;
+    window.onload=function(){
+        try {if ($buoop.ol) $buoop.ol();}catch (e) {}
+        var e = document.createElement("script");
+        e.setAttribute("type", "text/javascript");
+        e.setAttribute("src", "http://browser-update.org/update.js");
+        document.body.appendChild(e);
+    }
+</script>
+
+
+</body>
+</html>
\ No newline at end of file



Mime
View raw message