You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by ti...@apache.org on 2013/11/18 07:09:27 UTC
svn commit: r1542910 [25/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...
Added: incubator/usergrid/site/publish/docs/role/index.html
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/publish/docs/role/index.html?rev=1542910&view=auto
==============================================================================
--- incubator/usergrid/site/publish/docs/role/index.html (added)
+++ incubator/usergrid/site/publish/docs/role/index.html Mon Nov 18 06:09:23 2013
@@ -0,0 +1,1222 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <title>Apache Usergrid (incubating) â Role</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>Role</h1>
+ <small><a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/role/">contribute to this article on github</a></small>
+ </div>
+ <div class="toc">
+ <ul>
+<li>
+<a href="#role">Role</a><ul>
+<li>
+<a href="#creating-a-new-role">Creating a new role</a><ul>
+<li><a href="#request-uri">Request URI</a></li>
+<li><a href="#parameters">Parameters</a></li>
+<li><a href="#example---request">Example - Request</a></li>
+<li><a href="#example---response">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#getting-the-roles-in-an-application">Getting the roles in an application</a><ul>
+<li><a href="#request-uri-1">Request URI</a></li>
+<li><a href="#parameters-1">Parameters</a></li>
+<li><a href="#example---request-1">Example - Request</a></li>
+<li><a href="#example---response-1">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#deleting-a-role">Deleting a role</a><ul>
+<li><a href="#request-uri-2">Request URI</a></li>
+<li><a href="#parameters-2">Parameters</a></li>
+<li><a href="#example---request-2">Example - Request</a></li>
+<li><a href="#example---response-2">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#getting-permissions-for-an-application-role">Getting permissions for an application role</a><ul>
+<li><a href="#request-uri-3">Request URI</a></li>
+<li><a href="#parameters-3">Parameters</a></li>
+<li><a href="#example---request-3">Example - Request</a></li>
+<li><a href="#example---response-3">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#adding-permissions-to-an-application-role">Adding permissions to an application role</a><ul>
+<li><a href="#request-uri-4">Request URI</a></li>
+<li><a href="#parameters-4">Parameters</a></li>
+<li><a href="#example---request-4">Example - Request</a></li>
+<li><a href="#example---response-4">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#deleting-permissions-from-an-application-role">Deleting permissions from an application role</a><ul>
+<li><a href="#request-uri-5">Request URI</a></li>
+<li><a href="#parameters-5">Parameters</a></li>
+<li><a href="#example---request-5">Example - Request</a></li>
+<li><a href="#example---response-5">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#adding-a-user-to-a-role">Adding a user to a role</a><ul>
+<li><a href="#request-uri-6">Request URI</a></li>
+<li><a href="#parameters-6">Parameters</a></li>
+<li><a href="#example---request-6">Example - Request</a></li>
+<li><a href="#example---response-6">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#getting-the-users-in-a-role">Getting the users in a role</a><ul>
+<li><a href="#request-uri-7">Request URI</a></li>
+<li><a href="#parameters-7">Parameters</a></li>
+<li><a href="#example---request-7">Example - Request</a></li>
+<li><a href="#example---response-7">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#deleting-a-user-from-a-role">Deleting a user from a role</a><ul>
+<li><a href="#request-uri-8">Request URI</a></li>
+<li><a href="#parameters-8">Parameters</a></li>
+<li><a href="#example---request-8">Example - Request</a></li>
+<li><a href="#example---response-8">Example - Response</a></li>
+</ul>
+</li>
+<li>
+<a href="#role-properties">Role properties</a><ul>
+<li><a href="#general-properties">General properties</a></li>
+<li><a href="#set-properties">Set properties</a></li>
+<li><a href="#collection-properties">Collection properties</a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<h1 id="role"><a href="#role">Role</a></h1>
+<p><a href="/docs/usergrid/content/application-entities">See all application entities</a><a href="/docs/usergrid/content/application-entities"></a></p>
+<p>A role represents a set of permissions that enable certain operations to be performed on a specific endpoint. You can assign a user to a role, and in this way give the user the permissions associated with that role. For further information about roles and their use, see <a href="/managing-access-defining-permission-rules">Managing access by defining permission rules</a>.</p>
+<p>Using App services APIs you can create, retrieve, update, delete, and query roles. See <a href="#role_prop">Role properties</a> for a list of the system-defined properties for roles. In addition, you can create role properties specific to your application.</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>
+<p>Also, the /rolenames endpoint is no longer valid. If your code currently makes calls to /rolenames, you need to change the calls to use /roles.</p>
+<h2 id="creating-a-new-role"><a href="#creating-a-new-role">Creating a new role</a></h2>
+<p>Use the POST method to create a new application role.</p>
+<h3 id="request-uri"><a href="#request-uri">Request URI</a></h3>
+<p>POST /{org_id}/{app_id}/roles {request body}</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>arg uuid|string org_id</p></td>
+<td align="left"><p>Organization UUID or organization name</p></td>
+</tr>
+<tr class="even">
+<td align="left"><p>arg uuid|string app_id</p></td>
+<td align="left"><p>Application UUID or application name</p></td>
+</tr>
+<tr class="odd">
+<td align="left"><p>request body</p></td>
+<td align="left">
+<p>Role name and title:</p>
+<pre><code>{ "name" : "manager", "title" :</code></pre>
+<p>âManagerâ }</p>
+</td>
+</tr>
+</tbody>
+</table><h3 id="example---request"><a href="#example---request">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_create_role">cURL</a></li>
+<li><a href="#javascript_create_role">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_create_role">Ruby</a></li>
+<li><a href="#nodejs_create_role">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X POST "https://api.usergrid.com/my-org/my-app/roles/ -d '{"name":"manager","title":"Manager"}'</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+result = app.create_role name: 'manager', title: 'Manager'</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'POST',
+ endpoint:'roles',
+ body:{ name:'manager', title:'Manager' }
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â POST failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response"><a href="#example---response">Example - Response</a></h3>
+<pre><code>{
+ "action" : "post",
+ "application" : "7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "params" : {},
+ "uri" : "https://api.usergrid.com/22000a1c4e22-7fb8d891-477d-11e1-b2bd/7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "entities" : [
+ {
+ "uuid": "98e772a3-327a-11e2-aef7-02e81adcf3d0",
+ "type": "role",
+ "name": "manager",
+ "created": 1353351290724,
+ "modified": 1353351290724,
+ "inactivity": 0,
+ "metadata": {
+ "path": "/roles/98e772a3-327a-11e2-aef7-02e81adcf3d0",
+ "sets": {
+ "permissions": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/permissions"
+ },
+ "collections": {
+ "groups": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/groups",
+ "users": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users"
+ }
+ },
+ "roleName": "manager",
+ "title": "Manager"
+ }
+ ],
+ "timestamp": 1353358474917,
+ "duration": 46,
+ "duration": 45,
+ "organization": "my-org",
+ "applicationName": "my-app"
+}</code></pre>
+<h2 id="getting-the-roles-in-an-application"><a href="#getting-the-roles-in-an-application">Getting the roles in an application</a></h2>
+<p>Use the GET method to get the roles for a specific application.</p>
+<h3 id="request-uri-1"><a href="#request-uri-1">Request URI</a></h3>
+<p>GET /{org_id}/{app_id}/roles</p>
+<h3 id="parameters-1"><a href="#parameters-1">Parameters</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">arg uuid|string org_id</td>
+<td align="left">Organization UUID or organization name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string app_id</td>
+<td align="left">Application UUID or application name</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-1"><a href="#example---request-1">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_get_roles">cURL</a></li>
+<li><a href="#javascript_get_roles">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_get_roles">Ruby</a></li>
+<li><a href="#nodejs_get_roles">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X GET "https://api.usergrid.com/my-org/my-app/roles"</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+roles = app['roles'].collection</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'GET',
+ endpoint:'roles'
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â GET failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-1"><a href="#example---response-1">Example - Response</a></h3>
+<pre><code>{
+ "action" : "get",
+ "application" : "7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "params" : {
+ "_" : [ "1328058070002" ]
+ },
+ "uri" : "https://api.usergrid.com/22000a1c4e22-7fb8d891-477d-11e1-b2bd/7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "entities" : [
+{
+ "uuid": "70f39f36-1825-379d-8385-7a7fbe9ec74a",
+ "type": "role",
+ "name": "admin",
+ "created": 1342198809382,
+ "modified": 1350688633265,
+ "inactivity": 0,
+ "metadata": {
+ "path": "/roles/70f39f36-1825-379d-8385-7a7fbe9ec74a",
+ "sets": {
+ "permissions": "/roles/70f39f36-1825-379d-8385-7a7fbe9ec74a/permissions"
+ },
+ "collections": {
+ "groups": "/roles/70f39f36-1825-379d-8385-7a7fbe9ec74a/groups",
+ "users": "/roles/70f39f36-1825-379d-8385-7a7fbe9ec74a/users"
+ }
+ },
+ "roleName": "admin",
+ "title": "Administrator"
+ },
+ {
+ "uuid": "b8f8f336-30c9-3553-b447-6891f3e1e6bf",
+ "type": "role",
+ "name": "default",
+ "created": 1342198809472,
+ "modified": 1350688633282,
+ "inactivity": 0,
+ "metadata": {
+ "path": "/roles/b8f8f336-30c9-3553-b447-6891f3e1e6bf",
+ "sets": {
+ "permissions": "/roles/b8f8f336-30c9-3553-b447-6891f3e1e6bf/permissions"
+ },
+ "collections": {
+ "groups": "/roles/b8f8f336-30c9-3553-b447-6891f3e1e6bf/groups",
+ "users": "/roles/b8f8f336-30c9-3553-b447-6891f3e1e6bf/users"
+ }
+ },
+ "roleName": "default",
+ "title": "Default"
+ },
+ {
+ "uuid": "bd397ea1-a71c-3249-8a4c-62fd53c78ce7",
+ "type": "role",
+ "name": "guest",
+ "created": 1342198809551,
+ "modified": 1350688633299,
+ "inactivity": 0,
+ "metadata": {
+ "path": "/roles/bd397ea1-a71c-3249-8a4c-62fd53c78ce7",
+ "sets": {
+ "permissions": "/roles/bd397ea1-a71c-3249-8a4c-62fd53c78ce7/permissions"
+ },
+ "collections": {
+ "groups": "/roles/bd397ea1-a71c-3249-8a4c-62fd53c78ce7/groups",
+ "users": "/roles/bd397ea1-a71c-3249-8a4c-62fd53c78ce7/users"
+ }
+ },
+ "roleName": "guest",
+ "title": "Guest"
+ }
+ ],
+ "timestamp": 1353351684225,
+ "duration": 35,
+ "organization": "my-org",
+ "applicationName": "my-app"
+}</code></pre>
+<h2 id="deleting-a-role"><a href="#deleting-a-role">Deleting a role</a></h2>
+<p>Use the DELETE method to delete the specified role and return the revised set of application roles.</p>
+<h3 id="request-uri-2"><a href="#request-uri-2">Request URI</a></h3>
+<p>DELETE /{org_id}/{app_id}/roles/{rolename}</p>
+<h3 id="parameters-2"><a href="#parameters-2">Parameters</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">arg uuid|string org_id</td>
+<td align="left">Organization UUID or organization name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string app_id</td>
+<td align="left">Application UUID or application name</td>
+</tr>
+<tr class="odd">
+<td align="left">arg string rolename</td>
+<td align="left">Role name</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-2"><a href="#example---request-2">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_delete_role">cURL</a></li>
+<li><a href="#javascript_delete_role">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_delete_role">Ruby</a></li>
+<li><a href="#nodejs_delete_role">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X DELETE "https://api.usergrid.com/my-org/my-app/roles/manager"</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+app['roles/manager'].delete</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'DELETE',
+ endpoint:'roles'
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â DELETE failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-2"><a href="#example---response-2">Example - Response</a></h3>
+<pre><code>{
+ "action" : "delete",
+ "application" : "7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "params" : {
+ "_" : [ "1328058070002" ]
+ },
+ "path": "/roles",
+ "uri" : "https://api.usergrid.com/22000a1c4e22-7fb8d891-477d-11e1-b2bd/7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "entities": [
+ {
+ "uuid": "382d0991-74bb-3548-8166-6b07e44495ef",
+ "type": "role",
+ "name": "manager",
+ "created": 1353358474924,
+ "modified": 1353358474924,
+ "inactivity": 0,
+ "metadata": {
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef",
+ "sets": {
+ "permissions": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/permissions"
+ },
+ "collections": {
+ "groups": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/groups",
+ "users": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users"
+ }
+ },
+ "roleName": "manager",
+ "title": "Manager"
+ }
+ ],
+ "timestamp": 1353359131580,
+ "duration": 218,
+ "organization": "my-org",
+ "applicationName": "my-app"
+}</code></pre>
+<h2 id="getting-permissions-for-an-application-role"><a href="#getting-permissions-for-an-application-role">Getting permissions for an application role</a></h2>
+<p>Use the GET method to get permissions for the specific app role.</p>
+<h3 id="request-uri-3"><a href="#request-uri-3">Request URI</a></h3>
+<p>GET /{org_id}/{app_id}/roles/{rolename|role_id}/permissions</p>
+<h3 id="parameters-3"><a href="#parameters-3">Parameters</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">arg uuid|string org_id</td>
+<td align="left">Organization UUID or organization name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string app_id</td>
+<td align="left">Application UUID or application name</td>
+</tr>
+<tr class="odd">
+<td align="left">arg  uuid|string rolename</td>
+<td align="left">Role UUID or role name</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-3"><a href="#example---request-3">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_get_role_permissions">cURL</a></li>
+<li><a href="#javascript_get_role_permissions">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_get_role_permissions">Ruby</a></li>
+<li><a href="#nodejs_get_role_permissions">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X GET "https://api.usergrid.com/my-org/my-app/roles/manager/permissions"</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+response = app['roles']['guest']['permissions'].entity</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'GET',
+ endpoint:'roles/manager/permissions'
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â GET failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-3"><a href="#example---response-3">Example - Response</a></h3>
+<pre><code>{
+ "action" : "get",
+ "application" : "f34f4222-a166-11e2-a7f7-02e81adcf3d0",
+ "params" : { },
+ "uri" : "http://api.usergrid.com/your-org/your-app",
+ "entities" : [ ],
+ "data" : [ "get,post,put,delete:/**", "post:/devices", "post:/users", "put:/devices/*" ],
+ "timestamp" : 1376589421592,
+ "duration" : 89,
+ "organization" : "your-org",
+ "applicationName" : "your-app"
+}</code></pre>
+<h2 id="adding-permissions-to-an-application-role"><a href="#adding-permissions-to-an-application-role">Adding permissions to an application role</a></h2>
+<p>Use the POST method to add permissions for the specified application role.</p>
+<h3 id="request-uri-4"><a href="#request-uri-4">Request URI</a></h3>
+<p>POST /{org_id}/{app_id}/roles/{rolename|role_id}/permissions {request body}</p>
+<h3 id="parameters-4"><a href="#parameters-4">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>arg uuid|string org_id</p></td>
+<td align="left"><p>Organization UUID or organization name</p></td>
+</tr>
+<tr class="even">
+<td align="left"><p>arg uuid|string app_id</p></td>
+<td align="left"><p>Application UUID or application name</p></td>
+</tr>
+<tr class="odd">
+<td align="left"><p>arg uuid|string rolename</p></td>
+<td align="left"><p>Role UUID or role name</p></td>
+</tr>
+<tr class="even">
+<td align="left"><p>request body</p></td>
+<td align="left">
+<p>JSON object with a single permissions property. The value of that property is a string containing a permissions specification. The spec is a comma-separated list of verbs, followed by a colon, followed by a URL pattern:</p>
+<pre><code>{ "permission" : "get,put,post,d</code></pre>
+<p>elete:/users/me/groups" }</p>
+</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-4"><a href="#example---request-4">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_add_role_permissions">cURL</a></li>
+<li><a href="#javascript_add_role_permissions">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_add_role_permissions">Ruby</a></li>
+<li><a href="#nodejs_add_role_permissions">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X POST "https://api.usergrid.com/my-org/my-app/roles/manager/permissions" -d '{"permission":"get,put,post,delete:/users/me/groups" }'</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+app['roles/manager/permissions'].post permission:'get,put,post,delete:/users/me/groups'</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js</a>.</p>
+<pre><code>var options = {
+ method:'POST',
+ endpoint:'roles/manager/permissions',
+ body:{ permission:'get,put,post,delete:/users/me/groups' }
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â POST failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-4"><a href="#example---response-4">Example - Response</a></h3>
+<pre><code>{
+ "action" : "post",
+ "application" : "f34f4222-a166-11e2-a7f7-02e815df8rd0",
+ "params" : { },
+ "uri" : "http://api.usergrid.com/your-org/your-app",
+ "entities" : [ ],
+ "data" : [ "get,put,post,delete:/users/me/groups" ],
+ "timestamp" : 1376590904061,
+ "duration" : 21,
+ "organization" : "your-org",
+ "applicationName" : "your-app"
+}</code></pre>
+<h2 id="deleting-permissions-from-an-application-role"><a href="#deleting-permissions-from-an-application-role">Deleting permissions from an application role</a></h2>
+<p>Use the DELETE method to remove permissions from the specified application role.</p>
+<h3 id="request-uri-5"><a href="#request-uri-5">Request URI</a></h3>
+<p>DELETE /{org_id}/{app_id}/roles/{rolename|role_id}/permissions?permission={permissions_spec}</p>
+<h3 id="parameters-5"><a href="#parameters-5">Parameters</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">uuid|string org_id</td>
+<td align="left">Organization UUID or organization name</td>
+</tr>
+<tr class="even">
+<td align="left">uuid|string app_id</td>
+<td align="left">Application UUID or application name</td>
+</tr>
+<tr class="odd">
+<td align="left">uuid|string rolename</td>
+<td align="left">Role UUID or role name</td>
+</tr>
+<tr class="even">
+<td align="left">grant_url_pattern</td>
+<td align="left">The pattern on which the permissions were granted.</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-5"><a href="#example---request-5">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_delete_role_permissions">cURL</a></li>
+<li><a href="#javascript_delete_role_permissions">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_delete_role_permissions">Ruby</a></li>
+<li><a href="#nodejs_delete_role_permissions">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X DELETE -H "authorization: Bearer INSERT_BEARER_TOKEN_HERE" "https://api.usergrid.com/my-org/my-app/roles/default/permissions?permission=get,post,delete:/notes"</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+app['roles/manager/permission'].delete permission:'delete'</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'DELETE',
+ endpoint:'roles/manager/permission',
+ body:{ permission:'delete' }
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â DELETE failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-5"><a href="#example---response-5">Example - Response</a></h3>
+<pre><code>{
+ "action" : "delete",
+ "application" : "7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "params" : {
+ "permission": [
+ "delete"
+ ]
+ },
+ "path": "/roles",
+ "uri" : "https://api.usergrid.com/22000a1c4e22-7fb8d891-477d-11e1-b2bd/7fb8d891-477d-11e1-b2bd-22000a1c4e22",
+ "entities": [
+ {
+ "uuid": "382d0991-74bb-3548-8166-6b07e44495ef",
+ "type": "role",
+ "name": "manager",
+ "created": 1353359536973,
+ "modified": 1353359536973,
+ "inactivity": 0,
+ "metadata": {
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef",
+ "sets": {
+ "permissions": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/permissions"
+ },
+ "collections": {
+ "groups": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/groups",
+ "users": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users"
+ }
+ },
+ "roleName": "manager",
+ "title": "Manager"
+ }
+ ],
+ "timestamp": 1353360762403,
+ "duration": 181,
+ "organization": "my-org",
+ "applicationName": "my-app"
+}</code></pre>
+<h2 id="adding-a-user-to-a-role"><a href="#adding-a-user-to-a-role">Adding a user to a role</a></h2>
+<p>Use the POST method to add a user to a role.</p>
+<h3 id="request-uri-6"><a href="#request-uri-6">Request URI</a></h3>
+<pre><code>POST /{org_id}/{app_id}/roles/{role_id}/users/{uuid|username}</code></pre>
+<p>or</p>
+<pre><code>POST /{org_id}/{app_id}/users/{uuid|username}/roles/{role_id}</code></pre>
+<h3 id="parameters-6"><a href="#parameters-6">Parameters</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">arg uuid|string org_id</td>
+<td align="left">Organization UUID or organization name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string app_id</td>
+<td align="left">Application UUID or application name</td>
+</tr>
+<tr class="odd">
+<td align="left">arg uuid|string role_id</td>
+<td align="left">Role UUID or role name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string uuid|name</td>
+<td align="left">User UUID or username</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-6"><a href="#example---request-6">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_add_role_user">cURL</a></li>
+<li><a href="#javascript_add_role_user">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_add_role_user">Ruby</a></li>
+<li><a href="#nodejs_add_role_user">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X POST "https://api.usergrid.com/my-org/my-app/roles/manager/users/john.doe"</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+app['roles/manager/users/someuser'].post nil</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'POST',
+ endpoint:'roles/manager/users/john.doe'
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â POST failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-6"><a href="#example---response-6">Example - Response</a></h3>
+<pre><code>{
+ "action": "post",
+ "application": "3400ba10-cd0c-11e1-bcf7-12313d1c4491",
+ "params": {},
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users",
+ "uri": "https://api.usergrid.com/my-org/my-app/roles/382d0991-74bb-3548-8166-6b07e44495ef/users",
+ "entities": [
+ {
+ "uuid": "34e26bc9-2d00-11e2-a065-02e81ae640dc",
+ "type": "user",
+ "name": "John Doe",
+ "created": 1352748968504,
+ "modified": 1352748968504,
+ "activated": true,
+ "email": "john.doe@mail.com",
+ "metadata": {
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc",
+ "sets": {
+ "rolenames": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/rolenames",
+ "permissions": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/permissions"
+ },
+ "connections": {
+ "likes": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/likes"
+ },
+ "collections": {
+ "activities": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/activities",
+ "devices": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/devices",
+ "feed": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/feed",
+ "groups": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/groups",
+ "roles": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/roles",
+ "following": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/following",
+ "followers": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/followers"
+ }
+ },
+ "picture": "http://www.gravatar.com/avatar/90f82dba15655b8cc8e3b4d63377576f",
+ "username": "someuser"
+ }
+ ],
+ "timestamp": 1352999087337,
+ "duration": 65,
+ "organization": "my-org",
+ "applicationName": "my-app"
+}</code></pre>
+<h2 id="getting-the-users-in-a-role"><a href="#getting-the-users-in-a-role">Getting the users in a role</a></h2>
+<p>Use the GET method to get the users in a role.</p>
+<h3 id="request-uri-7"><a href="#request-uri-7">Request URI</a></h3>
+<pre><code>GET /{org_id}/{app_id}/roles/{role_id}/users</code></pre>
+<h3 id="parameters-7"><a href="#parameters-7">Parameters</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">arg uuid|string org_id</td>
+<td align="left">Organization UUID or organization name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string app_id</td>
+<td align="left">Application UUID or application name</td>
+</tr>
+<tr class="odd">
+<td align="left">arg uuid|string role_id</td>
+<td align="left">Role UUID or role name</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-7"><a href="#example---request-7">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_get_role_users">cURL</a></li>
+<li><a href="#javascript_get_role_users">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_get_role_users">Ruby</a></li>
+<li><a href="#nodejs_get_role_users">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X GET "https://api.usergrid.com/my-org/my-app/roles/manager/users"</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+users = app['roles/manager/users'].collection</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'GET',
+ endpoint:'roles/manager/users'
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â GET failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-7"><a href="#example---response-7">Example - Response</a></h3>
+<pre><code>{
+ "action": "get",
+ "application": "3400ba10-cd0c-11e1-bcf7-12313d1c4491",
+ "params": {
+ "_": [
+ "1352999121468"
+ ]
+ },
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users",
+ "uri": "https://api.usergrid.com/my-org/my-app/roles/382d0991-74bb-3548-8166-6b07e44495ef/users",
+ "entities": [
+ {
+ "uuid": "34e26bc9-2d00-11e2-a065-02e81ae640dc",
+ "type": "user",
+ "name": "John Doe",
+ "created": 1352748968504,
+ "modified": 1352748968504,
+ "activated": true,
+ "email": "john.doe@mail.com",
+ "metadata": {
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc",
+ "sets": {
+ "rolenames": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/rolenames",
+ "permissions": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/permissions"
+ },
+ "connections": {
+ "likes": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/likes"
+ },
+ "collections": {
+ "activities": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/activities",
+ "devices": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/devices",
+ "feed": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/feed",
+ "groups": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/groups",
+ "roles": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/roles",
+ "following": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/following",
+ "followers": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/followers"
+ }
+ },
+ "picture": "http://www.gravatar.com/avatar/90f823ba15655b8cc8e3b4d63377576f",
+ "username": "john.doe"
+ }
+ ],
+ "timestamp": 1352999119136,
+ "duration": 28,
+ "organization": "my-org",
+ "applicationName": "my-app"</code></pre>
+<h2 id="deleting-a-user-from-a-role"><a href="#deleting-a-user-from-a-role">Deleting a user from a role</a></h2>
+<p>Use the DELETE method to delete a user from a role.</p>
+<h3 id="request-uri-8"><a href="#request-uri-8">Request URI</a></h3>
+<pre><code>DELETE /{org_id}/{app_id}/roles/{role_id}/users/{uuid|username}</code></pre>
+<h3 id="parameters-8"><a href="#parameters-8">Parameters</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">arg uuid|string org_id</td>
+<td align="left">Organization UUID or organization name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string app_id</td>
+<td align="left">Application UUID or application name</td>
+</tr>
+<tr class="odd">
+<td align="left">arg uuid|string role_id</td>
+<td align="left">Role UUID or role name</td>
+</tr>
+<tr class="even">
+<td align="left">arg uuid|string uuid|name</td>
+<td align="left">User UUID or username</td>
+</tr>
+</tbody>
+</table><h3 id="example---request-8"><a href="#example---request-8">Example - Request</a></h3>
+<ul>
+<li><a href="#curl_delete_role_user">cURL</a></li>
+<li><a href="#javascript_delete_role_user">JavaScript (HTML5)</a></li>
+<li><a href="#ruby_delete_role_user">Ruby</a></li>
+<li><a href="#nodejs_delete_role_user">Node.js</a></li>
+</ul><!-- --><pre><code>curl -X DELETE "https://api.usergrid.com/my-org/my-app/roles/manager/users/john.doe"</code></pre>
+<p>It is recommended that you use the <a href="http://apigee.com/usergrid">Admin Portal</a> for administrative activities instead of using JavaScript to do them programmatically in your app.</p>
+<p><strong>Note:</strong>You can see the response below in the Admin Portal by using the <a href="/docs/usergrid/content/displaying-app-services-api-calls-curl-commands">JavaScript Console</a>.</p>
+<p>The example assumes use of the <a href="https://github.com/scottganyo/usergrid_iron">Ruby SDK</a>.</p>
+<pre><code>app = Usergrid::Application.new 'https://api.usergrid.com/my-org/my-app/'
+app['roles/manager/users/john.doe'].delete</code></pre>
+<p>The example assumes use of the <a href="https://github.com/apigee/usergrid-node-module">Node.js module</a>.</p>
+<pre><code>var options = {
+ method:'DELETE',
+ endpoint:'roles/manager/users/john.doe'
+};
+client.request(options, function (err, data) {
+ if (err) {
+ //error â DELETE failed
+ } else {
+ //success â data will contain raw results from API call
+ }
+});</code></pre>
+<h3 id="example---response-8"><a href="#example---response-8">Example - Response</a></h3>
+<pre><code>{
+ "action": "delete",
+ "application": "3400ba10-cd0c-11e1-bcf7-12313d1c4491",
+ "params": {
+ "_": [
+ "1353000719265"
+ ]
+ },
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users",
+ "uri": "equest
+curl -X DELETE "https://api.usergrid.com/my-org/my-app/roles/382d0991-74bb-3548-8166-6b07e44495ef/users",
+ "entities": [
+ {
+ "uuid": "34e26bc9-2d00-11e2-a065-02e81ae640dc",
+ "type": "user",
+ "name": "John Doe",
+ "created": 1352748968504,
+ "modified": 1352748968504,
+ "activated": true,
+ "email": "john.doe@mail.com",
+ "metadata": {
+ "path": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc",
+ "sets": {
+ "rolenames": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/rolenames",
+ "permissions": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/permissions"
+ },
+ "connections": {
+ "likes": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/likes"
+ },
+ "collections": {
+ "activities": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/activities",
+ "devices": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/devices",
+ "feed": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/feed",
+ "groups": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/groups",
+ "roles": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/roles",
+ "following": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/following",
+ "followers": "/roles/382d0991-74bb-3548-8166-6b07e44495ef/users/34e26bc9-2d00-11e2-a065-02e81ae640dc/followers"
+ }
+ },
+ "picture": "http://www.gravatar.com/avatar/90f823ba13655b8cc8e3b4d63377576f",
+ "username": "john.doe"
+ }
+ ],
+ "timestamp": 1353000717531,
+ "duration": 338,
+ "organization": "my-org",
+ "applicationName": "my-app"
+ }</code></pre>
+<h2 id="role-properties"><a href="#role-properties">Role properties</a></h2>
+<p>The following are the system-defined properties for role entities. You can create application-specific properties for a role entity in addition to the system-defined properties. The system-defined properties are reserved. You cannot use these names to create other properties for a role entity. In addition the roles name is reserved for the roles collection â you canât use it to name another collection.</p>
+<p>The look-up property for a role is name that is, you can use the name property to reference a role in an API call. However, you can search on a role using any property of the role entity. See<br> Nonexistent node nid: 9321.</p>
+<p>for details on searching.</p>
+<h3 id="general-properties"><a href="#general-properties">General properties</a></h3>
+<p>Roles have the following general properties.</p>
+<table>
+<thead><tr class="header">
+<th align="left">Property</th>
+<th align="left">Type</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody>
+<tr class="odd">
+<td align="left">uuid</td>
+<td align="left">UUID</td>
+<td align="left">Roleâs unique entity ID</td>
+</tr>
+<tr class="even">
+<td align="left">type</td>
+<td align="left">string</td>
+<td align="left">âroleâ</td>
+</tr>
+<tr class="odd">
+<td align="left">created</td>
+<td align="left">long</td>
+<td align="left">
+<a href="http://en.wikipedia.org/wiki/Unix_time">UNIX timestamp</a> of entity creation</td>
+</tr>
+<tr class="even">
+<td align="left">modified</td>
+<td align="left">long</td>
+<td align="left">
+<a href="http://en.wikipedia.org/wiki/Unix_time">UNIX timestamp</a> of entity modification</td>
+</tr>
+<tr class="odd">
+<td align="left">name</td>
+<td align="left">string</td>
+<td align="left">Unique name identifying the role (mandatory)</td>
+</tr>
+<tr class="even">
+<td align="left">roleName</td>
+<td align="left">string</td>
+<td align="left">Informal role name</td>
+</tr>
+<tr class="odd">
+<td align="left">title</td>
+<td align="left">string</td>
+<td align="left">Role title</td>
+</tr>
+</tbody>
+</table><h3 id="set-properties"><a href="#set-properties">Set properties</a></h3>
+<p>Roles have the following set property.</p>
+<table>
+<thead><tr class="header">
+<th align="left">Set</th>
+<th align="left">Type</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody><tr class="odd">
+<td align="left">permissions</td>
+<td align="left">string</td>
+<td align="left">Set of user permissions</td>
+</tr></tbody>
+</table><h3 id="collection-properties"><a href="#collection-properties">Collection properties</a></h3>
+<p>Roles have the following collections.</p>
+<table>
+<thead><tr class="header">
+<th align="left">Collection</th>
+<th align="left">Type</th>
+<th align="left">Description</th>
+</tr></thead>
+<tbody>
+<tr class="odd">
+<td align="left">users</td>
+<td align="left">user</td>
+<td align="left">Collection of users assigned to a role</td>
+</tr>
+<tr class="even">
+<td align="left">groups</td>
+<td align="left">group</td>
+<td align="left">Collection of groups assigned to a role</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/role/">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/ruby-gem/index.html
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/publish/docs/ruby-gem/index.html?rev=1542910&view=auto
==============================================================================
--- incubator/usergrid/site/publish/docs/ruby-gem/index.html (added)
+++ incubator/usergrid/site/publish/docs/ruby-gem/index.html Mon Nov 18 06:09:23 2013
@@ -0,0 +1,252 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <title>Apache Usergrid (incubating) â Ruby gem</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>Ruby gem</h1>
+ <small><a href="https://github.com/timanglade/usergrid-site/blob/master/content/docs/ruby-gem/">contribute to this article on github</a></small>
+ </div>
+ <div class="toc">
+ <ul>
+<li><a href="#installation">Installation</a></li>
+<li><a href="#organizations">Organizations</a></li>
+</ul>
+</div>
+<h2 id="installation"><a href="#installation">Installation</a></h2>
+<p>From the command-line run:</p>
+<pre class="highlight"><code class="language-bash"><span class="nv">$ </span>gem install usergrid_iron</code></pre>
+<h2 id="organizations"><a href="#organizations">Organizations</a></h2>
+<pre class="highlight"><code class="language-ruby"><span class="c1"># Initialize Management object</span>
+<span class="n">mgmt</span> <span class="o">=</span> <span class="ss">Usergrid</span><span class="p">:</span><span class="ss">:Management</span><span class="o">.</span><span class="n">new</span> <span class="s1">'https://api.usergrid.com/'</span>
+
+<span class="c1"># Create a new Organization</span>
+<span class="n">mgmt</span><span class="o">.</span><span class="n">create_organization</span> <span class="s1">'testorg'</span><span class="p">,</span> <span class="s1">'test123'</span><span class="p">,</span> <span class="s1">'test'</span><span class="p">,</span> <span class="s1">'tester123@hotmail.com'</span><span class="p">,</span> <span class="s1">'test12345'</span>
+
+<span class="c1"># Load an exiting Organization</span>
+<span class="n">org</span> <span class="o">=</span> <span class="n">mgmt</span><span class="o">.</span><span class="n">organization</span> <span class="s1">'testorg'</span></code></pre>
+ </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/ruby-gem/">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