http://git-wip-us.apache.org/repos/asf/predictionio-site/blob/9fe018b6/datacollection/batchimport/index.html
----------------------------------------------------------------------
diff --git a/datacollection/batchimport/index.html 
b/datacollection/batchimport/index.html
index 299392f..5bc0f36 100644
--- a/datacollection/batchimport/index.html
+++ b/datacollection/batchimport/index.html
@@ -7,7 +7,7 @@
 </span><span class="p">{</span><span class="s2">"event"</span><span 
class="p">:</span><span class="s2">"rate"</span><span class="p">,</span><span 
class="s2">"entityType"</span><span class="p">:</span><span 
class="s2">"user"</span><span class="p">,</span><span 
class="s2">"entityId"</span><span class="p">:</span><span 
class="s2">"3"</span><span class="p">,</span><span 
class="s2">"targetEntityType"</span><span class="p">:</span><span 
class="s2">"item"</span><span class="p">,</span><span 
class="s2">"targetEntityId"</span><span class="p">:</span><span 
class="s2">"2"</span><span class="p">,</span><span 
class="s2">"properties"</span><span class="p">:{</span><span 
class="s2">"rating"</span><span class="p">:</span><span 
class="mf">1.0</span><span class="p">},</span><span 
class="s2">"eventTime"</span><span class="p">:</span><span 
class="s2">"2014-11-21T01:04:14.729Z"</span><span class="p">}</span><span 
class="w">
 </span><span class="p">{</span><span class="s2">"event"</span><span 
class="p">:</span><span class="s2">"buy"</span><span class="p">,</span><span 
class="s2">"entityType"</span><span class="p">:</span><span 
class="s2">"user"</span><span class="p">,</span><span 
class="s2">"entityId"</span><span class="p">:</span><span 
class="s2">"3"</span><span class="p">,</span><span 
class="s2">"targetEntityType"</span><span class="p">:</span><span 
class="s2">"item"</span><span class="p">,</span><span 
class="s2">"targetEntityId"</span><span class="p">:</span><span 
class="s2">"7"</span><span class="p">,</span><span 
class="s2">"eventTime"</span><span class="p">:</span><span 
class="s2">"2014-11-21T01:04:14.735Z"</span><span class="p">}</span><span 
class="w">
 </span><span class="p">{</span><span class="s2">"event"</span><span 
class="p">:</span><span class="s2">"buy"</span><span class="p">,</span><span 
class="s2">"entityType"</span><span class="p">:</span><span 
class="s2">"user"</span><span class="p">,</span><span 
class="s2">"entityId"</span><span class="p">:</span><span 
class="s2">"3"</span><span class="p">,</span><span 
class="s2">"targetEntityType"</span><span class="p">:</span><span 
class="s2">"item"</span><span class="p">,</span><span 
class="s2">"targetEntityId"</span><span class="p">:</span><span 
class="s2">"8"</span><span class="p">,</span><span 
class="s2">"eventTime"</span><span class="p">:</span><span 
class="s2">"2014-11-21T01:04:14.741Z"</span><span class="p">}</span><span 
class="w">
-</span></pre></td></tr></tbody></table> </div> <div class="alert-message 
warning"><p>Please make sure your import file does not contain any empty lines. 
Empty lines will be treated as a null object and will return an error during 
import.</p></div><h2 id='use-sdk-to-prepare-batch-input-file' 
class='header-anchors'>Use SDK to Prepare Batch Input File</h2><p>Some of the 
Apache PredictionIO SDKs also provides FileExporter client. You may use them to 
prepare the JSON file as described above. The FileExporter creates event in the 
same way as EventClient except that the events are written to a JSON file 
instead of being sent to EventSever. The written JSON file can then be used by 
batch import.</p><div class="tabs"> <ul class="control"> <li data-lang="php"><a 
href="#tab-be0bda0a-f9c6-41fc-8f7e-c4a40bed10d4">PHP SDK</a></li> <li 
data-lang="python"><a href="#tab-aa74be4e-1e29-427c-990f-2a33de0a4c85">Python 
SDK</a></li> <li data-lang="ruby"><a 
href="#tab-4014721b-61d2-42af-a720-5d88c9a83394">
 Ruby SDK</a></li> <li data-lang="java"><a 
href="#tab-7f61e6f4-ed1f-4818-b73c-6aaf6e3fc995">Java SDK</a></li> </ul> <div 
data-tab="PHP SDK" data-lang="php" 
id="tab-be0bda0a-f9c6-41fc-8f7e-c4a40bed10d4"> (coming soon) </div> <div 
data-tab="Python SDK" data-lang="python" 
id="tab-aa74be4e-1e29-427c-990f-2a33de0a4c85"> <div class="highlight python"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
+</span></pre></td></tr></tbody></table> </div> <div class="alert-message 
warning"><p>Please make sure your import file does not contain any empty lines. 
Empty lines will be treated as a null object and will return an error during 
import.</p></div><h2 id='use-sdk-to-prepare-batch-input-file' 
class='header-anchors'>Use SDK to Prepare Batch Input File</h2><p>Some of the 
Apache PredictionIO SDKs also provides FileExporter client. You may use them to 
prepare the JSON file as described above. The FileExporter creates event in the 
same way as EventClient except that the events are written to a JSON file 
instead of being sent to EventSever. The written JSON file can then be used by 
batch import.</p><div class="tabs"> <ul class="control"> <li data-lang="php"><a 
href="#tab-dd40da8c-5f72-4ead-b857-8490662c15dd">PHP SDK</a></li> <li 
data-lang="python"><a href="#tab-361f01ce-7bbf-4831-b18a-01a91a2da4bf">Python 
SDK</a></li> <li data-lang="ruby"><a 
href="#tab-165fd3f9-5d24-4b27-b733-7493a82d480f">
 Ruby SDK</a></li> <li data-lang="java"><a 
href="#tab-ec958936-a13a-4a12-b44b-35bba413622d">Java SDK</a></li> </ul> <div 
data-tab="PHP SDK" data-lang="php" 
id="tab-dd40da8c-5f72-4ead-b857-8490662c15dd"> (coming soon) </div> <div 
data-tab="Python SDK" data-lang="python" 
id="tab-361f01ce-7bbf-4831-b18a-01a91a2da4bf"> <div class="highlight python"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -58,7 +58,7 @@
 <span class="c"># close the FileExporter when finish writing all events</span>
 <span class="n">exporter</span><span class="o">.</span><span 
class="n">close</span><span class="p">()</span>
 
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-4014721b-61d2-42af-a720-5d88c9a83394"> (coming soon) 
</div> <div data-tab="Java SDK" data-lang="java" 
id="tab-7f61e6f4-ed1f-4818-b73c-6aaf6e3fc995"> <div class="highlight java"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1</pre></td> <td 
class="code"><pre><span class="o">(</span><span class="n">coming</span> <span 
class="n">soon</span><span class="o">)</span>
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-165fd3f9-5d24-4b27-b733-7493a82d480f"> (coming soon) 
</div> <div data-tab="Java SDK" data-lang="java" 
id="tab-ec958936-a13a-4a12-b44b-35bba413622d"> <div class="highlight java"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1</pre></td> <td 
class="code"><pre><span class="o">(</span><span class="n">coming</span> <span 
class="n">soon</span><span class="o">)</span>
 </pre></td> </tr></tbody></table> </div> </div> </div> <h2 
id='import-events-from-input-file' class='header-anchors'>Import Events from 
Input File</h2><p>Importing events from a file can be done easily using the 
command line interface. Assuming that <code>pio</code> be in your search path, 
your App ID be <code>123</code>, and the input file <code>my_events.json</code> 
be in your current working directory:</p><div class="highlight shell"><table 
style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: 
right"><pre class="lineno">1</pre></td><td class="code"><pre><span class="gp">$ 
</span>pio import --appid 123 --input my_events.json
 </pre></td></tr></tbody></table> </div> <p>After a brief while, the tool 
should return to the console without any error. Congratulations! You have 
successfully imported your events.</p></div></div></div></div><footer><div 
class="container"><div class="seperator"></div><div class="row"><div 
class="col-md-6 footer-link-column"><div 
class="footer-link-column-row"><h4>Community</h4><ul><li><a 
href="//predictionio.apache.org/install/" 
target="blank">Download</a></li><li><a href="//predictionio.apache.org/" 
target="blank">Docs</a></li><li><a href="//github.com/apache/predictionio" 
target="blank">GitHub</a></li><li><a 
href="mailto:user-subscr...@predictionio.apache.org"; target="blank">Subscribe 
to User Mailing List</a></li><li><a 
href="//stackoverflow.com/questions/tagged/predictionio" 
target="blank">Stackoverflow</a></li></ul></div></div><div class="col-md-6 
footer-link-column"><div 
class="footer-link-column-row"><h4>Contribute</h4><ul><li><a 
href="//predictionio.apache.org/community/cont
 ribute-code/" target="blank">Contribute</a></li><li><a 
href="//github.com/apache/predictionio" target="blank">Source 
Code</a></li><li><a href="//issues.apache.org/jira/browse/PIO" 
target="blank">Bug Tracker</a></li><li><a 
href="mailto:dev-subscr...@predictionio.apache.org"; target="blank">Subscribe to 
Development Mailing List</a></li></ul></div></div></div><div class="row"><div 
class="col-md-12 footer-link-column"><p>Apache PredictionIO, PredictionIO, 
Apache, the Apache feather logo, and the Apache PredictionIO project logo are 
either registered trademarks or trademarks of The Apache Software Foundation in 
the United States and other countries.</p><p>All other marks mentioned may be 
trademarks or registered trademarks of their respective 
owners.</p></div></div></div><div id="footer-bottom"><div 
class="container"><div class="row"><div class="col-md-12"><div 
id="footer-logo-wrapper"><img alt="PredictionIO" 
src="/images/logos/logo-white-d1e9c6e6.png"/><span>®</span></div><div id="socia
 l-icons-wrapper"><a class="github-button" 
href="https://github.com/apache/predictionio"; data-icon="octicon-star" 
data-show-count="true" aria-label="Star apache/predictionio on GitHub">Star</a> 
<a class="github-button" href="https://github.com/apache/predictionio/fork"; 
data-icon="octicon-repo-forked" data-show-count="true" aria-label="Fork 
apache/predictionio on GitHub">Fork</a> <script id="github-bjs" async="" 
defer="" src="https://buttons.github.io/buttons.js";></script><a 
href="https://twitter.com/predictionio"; target="blank"><img alt="PredictionIO 
on Twitter" src="/images/icons/twitter-ea9dc152.png"/></a> <a 
href="https://www.facebook.com/predictionio"; target="blank"><img 
alt="PredictionIO on Facebook" src="/images/icons/facebook-5c57939c.png"/></a> 
</div></div></div></div></div></footer></div><script>(function(w,d,t,u,n,s,e){w['SwiftypeObject']=n;w[n]=w[n]||function(){
 (w[n].q=w[n].q||[]).push(arguments);};s=d.createElement(t);

http://git-wip-us.apache.org/repos/asf/predictionio-site/blob/9fe018b6/datacollection/channel/index.html
----------------------------------------------------------------------
diff --git a/datacollection/channel/index.html 
b/datacollection/channel/index.html
index 1b11286..a17f7f3 100644
--- a/datacollection/channel/index.html
+++ b/datacollection/channel/index.html
@@ -12,7 +12,7 @@
 [INFO] [App$]     Channel Name: myChannel
 [INFO] [App$]       Channel ID: 2
 [INFO] [App$]           App ID: 5
-</span></pre></td></tr></tbody></table> </div> <p>Now &quot;myChannel&quot; is 
created and ready for collecting data.</p><h2 id='collect-data-through-channel' 
class='header-anchors'>Collect data through Channel</h2><p>The Event API 
support optional <code>channel</code> query parameter. This allows you to 
import and query events of the specified channel. When the <code>channel</code> 
parameter is not specified, the data is collected through the default 
channel.</p><p>URL: 
<code>http://localhost:7070/events.json?accessKey=yourAccessKeyString&amp;channel=yourChannelName</code></p><p>Query
 parameters:</p> <table><thead> <tr> <th style="text-align: left">Field</th> 
<th style="text-align: left">Type</th> <th style="text-align: 
left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: 
left"><code>accessKey</code></td> <td style="text-align: left">String</td> <td 
style="text-align: left">The Access Key for your App</td> </tr> <tr> <td 
style="text-align: left"><code>channel</c
 ode></td> <td style="text-align: left">String</td> <td style="text-align: 
left">The channel name (optional). Specify this to import data to this channel. 
<strong>NOTE: supported in PIO version &gt;= 0.9.2</strong> only. Channel must 
be created first.</td> </tr> </tbody></table> <p>For SDK usage, one EventClient 
should be responsible for collecting data of one specific channel. The channel 
name is specified when the EventClient object is instantiated.</p><p>For 
example, the following code import event to &quot;YOUR_CHANNEL&quot; of the 
corresponding App.</p><div class="tabs"> <ul class="control"> <li 
data-lang="bash"><a href="#tab-dea451ee-fdb1-41d2-b15e-1c668676ec16">Raw 
HTTP</a></li> <li data-lang="php"><a 
href="#tab-56ae1b9d-6a6e-468c-9e20-e89d2931aa5b">PHP SDK</a></li> <li 
data-lang="python"><a href="#tab-3c927adc-88e7-400f-b04e-baa939204c4f">Python 
SDK</a></li> <li data-lang="ruby"><a 
href="#tab-faaaddd4-4fb0-4328-87b5-8404385a9968">Ruby SDK</a></li> <li 
data-lang="java"><a href
 ="#tab-540d3043-a0a8-4b50-83c3-7030d524e11c">Java SDK</a></li> </ul> <div 
data-tab="Raw HTTP" data-lang="bash" 
id="tab-dea451ee-fdb1-41d2-b15e-1c668676ec16"> <div class="highlight shell"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
+</span></pre></td></tr></tbody></table> </div> <p>Now &quot;myChannel&quot; is 
created and ready for collecting data.</p><h2 id='collect-data-through-channel' 
class='header-anchors'>Collect data through Channel</h2><p>The Event API 
support optional <code>channel</code> query parameter. This allows you to 
import and query events of the specified channel. When the <code>channel</code> 
parameter is not specified, the data is collected through the default 
channel.</p><p>URL: 
<code>http://localhost:7070/events.json?accessKey=yourAccessKeyString&amp;channel=yourChannelName</code></p><p>Query
 parameters:</p> <table><thead> <tr> <th style="text-align: left">Field</th> 
<th style="text-align: left">Type</th> <th style="text-align: 
left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: 
left"><code>accessKey</code></td> <td style="text-align: left">String</td> <td 
style="text-align: left">The Access Key for your App</td> </tr> <tr> <td 
style="text-align: left"><code>channel</c
 ode></td> <td style="text-align: left">String</td> <td style="text-align: 
left">The channel name (optional). Specify this to import data to this channel. 
<strong>NOTE: supported in PIO version &gt;= 0.9.2</strong> only. Channel must 
be created first.</td> </tr> </tbody></table> <p>For SDK usage, one EventClient 
should be responsible for collecting data of one specific channel. The channel 
name is specified when the EventClient object is instantiated.</p><p>For 
example, the following code import event to &quot;YOUR_CHANNEL&quot; of the 
corresponding App.</p><div class="tabs"> <ul class="control"> <li 
data-lang="bash"><a href="#tab-f384d253-aef1-414b-95c4-f65f6b355158">Raw 
HTTP</a></li> <li data-lang="php"><a 
href="#tab-39afb84b-78a5-4070-9c5e-0b5d26c4a61e">PHP SDK</a></li> <li 
data-lang="python"><a href="#tab-65dbdf81-86fa-4665-ad7e-8f0b1d4c1aab">Python 
SDK</a></li> <li data-lang="ruby"><a 
href="#tab-af9d205f-5cfa-4037-a87f-415d4daaa8a8">Ruby SDK</a></li> <li 
data-lang="java"><a href
 ="#tab-f0e66c60-c46a-41bc-862a-fc62420bcb14">Java SDK</a></li> </ul> <div 
data-tab="Raw HTTP" data-lang="bash" 
id="tab-f384d253-aef1-414b-95c4-f65f6b355158"> <div class="highlight shell"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -39,7 +39,7 @@
   },
   "eventTime" : "2004-12-13T21:39:45.618Z"
 }'</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="PHP SDK" 
data-lang="php" id="tab-56ae1b9d-6a6e-468c-9e20-e89d2931aa5b"> (TODO: update 
me) </div> <div data-tab="Python SDK" data-lang="python" 
id="tab-3c927adc-88e7-400f-b04e-baa939204c4f"> <div class="highlight python"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="PHP SDK" 
data-lang="php" id="tab-39afb84b-78a5-4070-9c5e-0b5d26c4a61e"> (TODO: update 
me) </div> <div data-tab="Python SDK" data-lang="python" 
id="tab-65dbdf81-86fa-4665-ad7e-8f0b1d4c1aab"> <div class="highlight python"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -80,7 +80,7 @@
     <span class="n">properties</span><span class="o">=</span><span 
class="n">event_properties</span><span class="p">,</span>
     <span class="n">event_time</span><span class="o">=</span><span 
class="n">datetime</span><span class="p">(</span><span 
class="mi">2014</span><span class="p">,</span> <span class="mi">12</span><span 
class="p">,</span> <span class="mi">13</span><span class="p">,</span> <span 
class="mi">21</span><span class="p">,</span> <span class="mi">38</span><span 
class="p">,</span> <span class="mi">45</span><span class="p">,</span> <span 
class="mi">618000</span><span class="p">,</span> <span 
class="n">pytz</span><span class="o">.</span><span class="n">utc</span><span 
class="p">))</span>
 
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-faaaddd4-4fb0-4328-87b5-8404385a9968"> (TODO: update 
me) </div> <div data-tab="Java SDK" data-lang="java" 
id="tab-540d3043-a0a8-4b50-83c3-7030d524e11c"> <div class="highlight java"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1</pre></td> <td 
class="code"><pre><span class="o">(</span><span class="n">coming</span> <span 
class="n">soon</span><span class="o">)</span>
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-af9d205f-5cfa-4037-a87f-415d4daaa8a8"> (TODO: update 
me) </div> <div data-tab="Java SDK" data-lang="java" 
id="tab-f0e66c60-c46a-41bc-862a-fc62420bcb14"> <div class="highlight java"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1</pre></td> <td 
class="code"><pre><span class="o">(</span><span class="n">coming</span> <span 
class="n">soon</span><span class="o">)</span>
 </pre></td> </tr></tbody></table> </div> </div> </div> <p>You can also follow 
the EventAPI <a href="/datacollection/eventapi/#debugging-recipes">debug 
receipts</a> to query the events of specific channel by adding the 
<code>channel</code> query parameter in the URL.</p><h2 
id='delete-a-channel-(including-all-imported-data)' 
class='header-anchors'>Delete a Channel (including all imported data)</h2><div 
class="highlight shell"><table style="border-spacing: 0"><tbody><tr><td 
class="gutter gl" style="text-align: right"><pre class="lineno">1</pre></td><td 
class="code"><pre>pio app channel-delete &lt;app name&gt; &lt;channel name&gt;
 </pre></td></tr></tbody></table> </div> <h2 
id='delete-the-data-only-of-a-channel' class='header-anchors'>Delete the 
data-only of a Channel</h2><div class="highlight shell"><table 
style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: 
right"><pre class="lineno">1</pre></td><td class="code"><pre>pio app 
data-delete &lt;app name&gt; --channel &lt;channel name&gt;
 </pre></td></tr></tbody></table> </div> <h2 
id='accessing-channel-data-in-engine' class='header-anchors'>Accessing Channel 
Data in Engine</h2><p>To acccess channel data, simply specify the channel name 
when use the PEventStore or LEventStore API. Data is read from from the default 
channel if channelName is not specified.</p><p>For example, read data from 
default channel:</p><div class="highlight scala"><table style="border-spacing: 
0"><tbody><tr><td class="gutter gl" style="text-align: right"><pre 
class="lineno">1

http://git-wip-us.apache.org/repos/asf/predictionio-site/blob/9fe018b6/datacollection/eventapi/index.html
----------------------------------------------------------------------
diff --git a/datacollection/eventapi/index.html 
b/datacollection/eventapi/index.html
index bc8de21..0744b9d 100644
--- a/datacollection/eventapi/index.html
+++ b/datacollection/eventapi/index.html
@@ -22,7 +22,7 @@ Content-Length: 18
 <span class="o">[</span>INFO] <span class="o">[</span>App<span 
class="nv">$]</span>         Name: MyTestApp
 <span class="o">[</span>INFO] <span class="o">[</span>App<span 
class="nv">$]</span>           ID: 6
 <span class="o">[</span>INFO] <span class="o">[</span>App<span 
class="nv">$]</span>   Access Key: 
WPgcXKd42FPQpZHVbVeMyqF4CQJUnXQmIMTHhX3ZUrSzvy1KXJjdFUrslifa9rnB
-</pre></td></tr></tbody></table> </div> <h3 id='creating-your-first-event' 
class='header-anchors'>Creating Your First Event</h3><p>You may connect to the 
Event Server with HTTP request or by using one of many <strong>Apache 
PredictionIO SDKs</strong>.</p><p>For example, the following shows how one can 
create an event involving a single entity. Replace the value of 
<code>accessKey</code> by the <em>Access Key</em> generated for your 
App.</p><div class="tabs"> <ul class="control"> <li data-lang="bash"><a 
href="#tab-b9f3ee84-8379-4152-94e7-ce35e204eb5e">Raw HTTP</a></li> <li 
data-lang="php"><a href="#tab-8c0bc1d5-de11-45e9-ba65-bb9cbbdab766">PHP 
SDK</a></li> <li data-lang="python"><a 
href="#tab-4e486ed0-3435-4cbb-95bc-dd775f4b5e8f">Python SDK</a></li> <li 
data-lang="ruby"><a href="#tab-b7829541-688b-438a-bb65-0f428d2b71d3">Ruby 
SDK</a></li> <li data-lang="java"><a 
href="#tab-2cbea880-0da6-41f2-965b-5fefeb6e8062">Java SDK</a></li> </ul> <div 
data-tab="Raw HTTP" data-lang="bash" id="tab-
 b9f3ee84-8379-4152-94e7-ce35e204eb5e"> <div class="highlight shell"> <table 
style="border-spacing: 0"><tbody><tr> <td class="gutter gl" style="text-align: 
right"><pre class="lineno">1
+</pre></td></tr></tbody></table> </div> <h3 id='creating-your-first-event' 
class='header-anchors'>Creating Your First Event</h3><p>You may connect to the 
Event Server with HTTP request or by using one of many <strong>Apache 
PredictionIO SDKs</strong>.</p><p>For example, the following shows how one can 
create an event involving a single entity. Replace the value of 
<code>accessKey</code> by the <em>Access Key</em> generated for your 
App.</p><div class="tabs"> <ul class="control"> <li data-lang="bash"><a 
href="#tab-bd15ec31-82a2-4e14-8276-1260c04d689d">Raw HTTP</a></li> <li 
data-lang="php"><a href="#tab-64e01bad-e186-4bee-9884-938c809d025a">PHP 
SDK</a></li> <li data-lang="python"><a 
href="#tab-091fc1ce-b982-4022-8768-bac4357f082c">Python SDK</a></li> <li 
data-lang="ruby"><a href="#tab-16405fb2-5daf-4e55-af83-925f9197ab32">Ruby 
SDK</a></li> <li data-lang="java"><a 
href="#tab-385a78a2-81bd-47f4-93f4-17f9a8b394a2">Java SDK</a></li> </ul> <div 
data-tab="Raw HTTP" data-lang="bash" id="tab-
 bd15ec31-82a2-4e14-8276-1260c04d689d"> <div class="highlight shell"> <table 
style="border-spacing: 0"><tbody><tr> <td class="gutter gl" style="text-align: 
right"><pre class="lineno">1
 2
 3
 4
@@ -53,7 +53,7 @@ Content-Length: 18
   }
   "eventTime" : "2004-12-13T21:39:45.618-07:00"
 }'</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="PHP SDK" 
data-lang="php" id="tab-8c0bc1d5-de11-45e9-ba65-bb9cbbdab766"> <div 
class="highlight php"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="PHP SDK" 
data-lang="php" id="tab-64e01bad-e186-4bee-9884-938c809d025a"> <div 
class="highlight php"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -94,7 +94,7 @@ Content-Length: 18
                         <span class="s1">'eventTime'</span> <span 
class="o">=&gt;</span> <span class="s1">'2004-12-13T21:39:45.618-07:00'</span>
                        <span class="p">));</span>
 <span class="cp">?&gt;</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Python SDK" 
data-lang="python" id="tab-4e486ed0-3435-4cbb-95bc-dd775f4b5e8f"> <div 
class="highlight python"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Python SDK" 
data-lang="python" id="tab-091fc1ce-b982-4022-8768-bac4357f082c"> <div 
class="highlight python"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -137,7 +137,7 @@ Content-Length: 18
     <span class="n">properties</span><span class="o">=</span><span 
class="n">first_event_properties</span><span class="p">,</span>
     <span class="n">event_time</span><span class="o">=</span><span 
class="n">first_event_time</span><span class="p">,</span>
 <span class="p">)</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-b7829541-688b-438a-bb65-0f428d2b71d3"> <div 
class="highlight ruby"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-16405fb2-5daf-4e55-af83-925f9197ab32"> <div 
class="highlight ruby"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -158,8 +158,8 @@ Content-Length: 18
                                             <span class="s1">'prop4'</span> 
<span class="o">=&gt;</span> <span class="kp">true</span><span 
class="p">,</span>
                                             <span class="s1">'prop5'</span> 
<span class="o">=&gt;</span> <span class="sx">%w(a b c)</span><span 
class="p">,</span>
                                             <span class="s1">'prop6'</span> 
<span class="o">=&gt;</span> <span class="mi">4</span><span 
class="o">.</span><span class="mi">56</span> <span class="p">})</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Java SDK" 
data-lang="java" id="tab-2cbea880-0da6-41f2-965b-5fefeb6e8062"> <div 
class="highlight java"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1</pre></td> 
<td class="code"><pre><span class="o">(</span><span class="n">coming</span> 
<span class="n">soon</span><span class="o">)</span>
-</pre></td> </tr></tbody></table> </div> </div> </div> <p>For example, the 
following shows how one can create an event involving two entities (with 
<code>targetEntity</code>).</p><div class="tabs"> <ul class="control"> <li 
data-lang="bash"><a href="#tab-8ac56e28-4899-4f7c-af55-5525fe4fcdf5">Raw 
HTTP</a></li> <li data-lang="php"><a 
href="#tab-f594af16-d577-43c1-a67a-ae6491be7f16">PHP SDK</a></li> <li 
data-lang="python"><a href="#tab-26f7a7ec-27b4-4a49-b0c1-d8f8cfe84c27">Python 
SDK</a></li> <li data-lang="ruby"><a 
href="#tab-bb8562e0-949d-428d-951b-5f9553feb9b7">Ruby SDK</a></li> <li 
data-lang="java"><a href="#tab-80f1a001-920a-469e-bb08-140c8cece9b2">Java 
SDK</a></li> </ul> <div data-tab="Raw HTTP" data-lang="bash" 
id="tab-8ac56e28-4899-4f7c-af55-5525fe4fcdf5"> <div class="highlight shell"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Java SDK" 
data-lang="java" id="tab-385a78a2-81bd-47f4-93f4-17f9a8b394a2"> <div 
class="highlight java"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1</pre></td> 
<td class="code"><pre><span class="o">(</span><span class="n">coming</span> 
<span class="n">soon</span><span class="o">)</span>
+</pre></td> </tr></tbody></table> </div> </div> </div> <p>For example, the 
following shows how one can create an event involving two entities (with 
<code>targetEntity</code>).</p><div class="tabs"> <ul class="control"> <li 
data-lang="bash"><a href="#tab-6460c7af-12bd-408c-868b-7977d59aeaba">Raw 
HTTP</a></li> <li data-lang="php"><a 
href="#tab-42a715ab-f009-4567-9da5-1ac7f265a30f">PHP SDK</a></li> <li 
data-lang="python"><a href="#tab-f0834e76-ff69-4c22-930d-7a60f24a246d">Python 
SDK</a></li> <li data-lang="ruby"><a 
href="#tab-26e856b6-eed2-431c-ac3b-ac45feca1086">Ruby SDK</a></li> <li 
data-lang="java"><a href="#tab-30fd4990-7d44-4cf9-a0c0-de69faa4fe27">Java 
SDK</a></li> </ul> <div data-tab="Raw HTTP" data-lang="bash" 
id="tab-6460c7af-12bd-408c-868b-7977d59aeaba"> <div class="highlight shell"> 
<table style="border-spacing: 0"><tbody><tr> <td class="gutter gl" 
style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -186,7 +186,7 @@ Content-Length: 18
   },
   "eventTime" : "2004-12-13T21:39:45.618Z"
 }'</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="PHP SDK" 
data-lang="php" id="tab-f594af16-d577-43c1-a67a-ae6491be7f16"> <div 
class="highlight php"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="PHP SDK" 
data-lang="php" id="tab-42a715ab-f009-4567-9da5-1ac7f265a30f"> <div 
class="highlight php"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -221,7 +221,7 @@ Content-Length: 18
                         <span class="s1">'eventTime'</span> <span 
class="o">=&gt;</span> <span class="s1">'2004-12-13T21:39:45.618Z'</span>
                        <span class="p">));</span>
 <span class="cp">?&gt;</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Python SDK" 
data-lang="python" id="tab-26f7a7ec-27b4-4a49-b0c1-d8f8cfe84c27"> <div 
class="highlight python"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Python SDK" 
data-lang="python" id="tab-f0834e76-ff69-4c22-930d-7a60f24a246d"> <div 
class="highlight python"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -246,7 +246,7 @@ Content-Length: 18
     <span class="n">target_entity_id</span><span class="o">=</span><span 
class="s">"iid"</span><span class="p">,</span>
     <span class="n">properties</span><span class="o">=</span><span 
class="n">second_event_properties</span><span class="p">,</span>
     <span class="n">event_time</span><span class="o">=</span><span 
class="n">datetime</span><span class="p">(</span><span 
class="mi">2014</span><span class="p">,</span> <span class="mi">12</span><span 
class="p">,</span> <span class="mi">13</span><span class="p">,</span> <span 
class="mi">21</span><span class="p">,</span> <span class="mi">38</span><span 
class="p">,</span> <span class="mi">45</span><span class="p">,</span> <span 
class="mi">618000</span><span class="p">,</span> <span 
class="n">pytz</span><span class="o">.</span><span class="n">utc</span><span 
class="p">))</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-bb8562e0-949d-428d-951b-5f9553feb9b7"> <div 
class="highlight ruby"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Ruby SDK" 
data-lang="ruby" id="tab-26e856b6-eed2-431c-ac3b-ac45feca1086"> <div 
class="highlight ruby"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1
 2
 3
 4
@@ -263,7 +263,7 @@ Content-Length: 18
                           <span class="s1">'eventTime'</span> <span 
class="o">=&gt;</span> <span class="s1">'2004-12-13T21:39:45.618Z'</span><span 
class="p">,</span>
                           <span class="s1">'properties'</span> <span 
class="o">=&gt;</span> <span class="p">{</span> <span 
class="s1">'someProperty'</span> <span class="o">=&gt;</span> <span 
class="s1">'value1'</span><span class="p">,</span>
                                             <span 
class="s1">'anotherProperty'</span> <span class="o">=&gt;</span> <span 
class="s1">'value2'</span> <span class="p">})</span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Java SDK" 
data-lang="java" id="tab-80f1a001-920a-469e-bb08-140c8cece9b2"> <div 
class="highlight java"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1</pre></td> 
<td class="code"><pre><span class="o">(</span><span class="n">coming</span> 
<span class="n">soon</span><span class="o">)</span>
+</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Java SDK" 
data-lang="java" id="tab-30fd4990-7d44-4cf9-a0c0-de69faa4fe27"> <div 
class="highlight java"> <table style="border-spacing: 0"><tbody><tr> <td 
class="gutter gl" style="text-align: right"><pre class="lineno">1</pre></td> 
<td class="code"><pre><span class="o">(</span><span class="n">coming</span> 
<span class="n">soon</span><span class="o">)</span>
 </pre></td> </tr></tbody></table> </div> </div> </div> <p>Sample 
response:</p><div class="highlight shell"><table style="border-spacing: 
0"><tbody><tr><td class="gutter gl" style="text-align: right"><pre 
class="lineno">1
 2
 3
@@ -277,7 +277,7 @@ Content-Type: application/json; <span 
class="nv">charset</span><span class="o">=
 Content-Length: 41
 
 <span class="o">{</span><span class="s2">"eventId"</span>:<span 
class="s2">"AAAABAAAAQDP3-jSlTMGVu0waj8"</span><span class="o">}</span>
-</pre></td></tr></tbody></table> </div> <h2 id='using-event-api' 
class='header-anchors'>Using Event API</h2><h3 id='event-creation-api' 
class='header-anchors'>Event Creation API</h3><p>URL: 
<code>http://localhost:7070/events.json?accessKey=yourAccessKeyString</code></p><p>Query
 parameters:</p> <table><thead> <tr> <th style="text-align: left">Field</th> 
<th style="text-align: left">Type</th> <th style="text-align: 
left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: 
left"><code>accessKey</code></td> <td style="text-align: left">String</td> <td 
style="text-align: left">The Access Key for your App</td> </tr> 
</tbody></table> <p>The event creation support many commonly used data. POST 
request body:</p> <table><thead> <tr> <th style="text-align: left">Field</th> 
<th style="text-align: left">Type</th> <th style="text-align: 
left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: 
left"><code>event</code></td> <td style="text-align: left">String</td> <td
  style="text-align: left">Name of the event.</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">(Examples: &quot;sign-up&quot;, &quot;rate&quot;, 
&quot;view&quot;, &quot;buy&quot;).</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: 
left"><strong>Note</strong>: All event names start with &quot;$&quot; and 
&quot;pio_&quot; are reserved</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: left">and 
shouldn&#39;t be used as your custom event name (eg. &quot;$set&quot;).</td> 
</tr> <tr> <td style="text-align: left"><code>entityType</code></td> <td 
style="text-align: left">String</td> <td style="text-align: left">The entity 
type. It is the namespace of the entityId and</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">analogous to the table name of 
 a relational database. The</td> </tr> <tr> <td style="text-align: left"></td> 
<td style="text-align: left"></td> <td style="text-align: left">entityId must 
be unique within same entityType.</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: 
left"><strong>Note</strong>: All entityType names start with &quot;$&quot; and 
&quot;pio_&quot; are</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">reserved and 
shouldn&#39;t be used.</td> </tr> <tr> <td style="text-align: 
left"><code>entityId</code></td> <td style="text-align: left">String</td> <td 
style="text-align: left">The entity ID. <code>entityType-entityId</code> 
becomes the unique</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">identifier of the 
entity. For example, you may have entityType</td> </tr> <tr> <td 
style="text-align: left"></td> <td style
 ="text-align: left"></td> <td style="text-align: left">named 
<code>user</code>, and different entity IDs, say <code>1</code> and 
<code>2</code>. In this</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">case, 
<code>user-1</code> and <code>user-2</code> uniquely identifies</td> </tr> <tr> 
<td style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">entities.</td> </tr> <tr> <td style="text-align: 
left"><code>targetEntityType</code></td> <td style="text-align: 
left">String</td> <td style="text-align: left">(Optional) The target entity 
type.</td> </tr> <tr> <td style="text-align: left"></td> <td style="text-align: 
left"></td> <td style="text-align: left"><strong>Note</strong>: All entityType 
names start with &quot;$&quot; and &quot;pio_&quot;</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">are reserved and shouldn&#39;
 t be used.</td> </tr> <tr> <td style="text-align: 
left"><code>targetEntityId</code></td> <td style="text-align: left">String</td> 
<td style="text-align: left">(Optional) The target entity ID.</td> </tr> <tr> 
<td style="text-align: left"><code>properties</code></td> <td 
style="text-align: left">JSON</td> <td style="text-align: left">(Optional) See 
<strong>Note About Properties</strong> below</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left"><strong>Note</strong>: All peroperty names start with 
&quot;$&quot; and &quot;pio_&quot;</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: left">are 
reserved and shouldn&#39;t be used as keys inside <code>properties</code>.</td> 
</tr> <tr> <td style="text-align: left"><code>eventTime</code></td> <td 
style="text-align: left">String</td> <td style="text-align: left">(Optional) 
The time of the event. Although Event Server&#39;s<
 /td> </tr> <tr> <td style="text-align: left"></td> <td style="text-align: 
left"></td> <td style="text-align: left">current system time and UTC timezone 
will be used if this is</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">unspecified, it is 
highly recommended that this time should be</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">generated by the client application in order to 
accurately</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">record the time of 
the event.</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">Must be in ISO 8601 
format (e.g.</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: 
left"><code>2004-12-13T21:39:45.618Z</code>, or <code>2014-09-09T16
 :17:42.937-08:00</code>).</td> </tr> </tbody></table> <h2 
id='note-about-properties' class='header-anchors'>Note About 
Properties</h2><p>Note that <code>properties</code> can be:</p> <ol> 
<li>Associated with an <em>generic event</em>: The <code>properties</code> 
field provide additional information about this event</li> <li>Associated with 
an <em>entity</em>: The <code>properties</code> field is used to record the 
changes of an entity&#39;s properties with special events <code>$set</code>, 
<code>$unset</code> and <code>$delete</code>.</li> </ol> <p>Please see the <a 
href="/datacollection/eventmodel/">Events Modeling</a> for detailed 
explanation.</p><h2 id='debugging-recipes' class='header-anchors'>Debugging 
Recipes</h2><div class="alert-message warning"><p>The following API are mainly 
for development or debugging purpose only. They should not be supported by SDK 
nor used by real application under normal circumstances and they are subject to 
changes.</p></div><div class="alert-messag
 e info"><p>Instead of using <code>curl</code>, you can also install JSON 
browser plugins such as <strong>JSONView</strong> to pretty-print the JSON on 
your browser. With the browser plugin you can make the <code>GET</code> queries 
below by passing in the URL. Plugins like <strong>Postman - REST 
Client</strong> provide a more advanced interface for making 
queries.</p></div><p>The <code>accessKey</code> query parameter is 
mandatory.</p><p>Replace <code>&lt;your_accessKey&gt;</code> and 
<code>&lt;your_eventId&gt;</code> by a real one in the following:</p><h3 
id='get-an-event' class='header-anchors'>Get an Event</h3><div class="highlight 
shell"><table style="border-spacing: 0"><tbody><tr><td class="gutter gl" 
style="text-align: right"><pre class="lineno">1</pre></td><td 
class="code"><pre><span class="gp">$ </span>curl -i -X GET 
http://localhost:7070/events/&lt;your_eventId&gt;.json?accessKey<span 
class="o">=</span>&lt;your_accessKey&gt;
+</pre></td></tr></tbody></table> </div> <h2 id='using-event-api' 
class='header-anchors'>Using Event API</h2><h3 id='event-creation-api' 
class='header-anchors'>Event Creation API</h3><p>URL: 
<code>http://localhost:7070/events.json?accessKey=yourAccessKeyString</code></p><p>Query
 parameters:</p> <table><thead> <tr> <th style="text-align: left">Field</th> 
<th style="text-align: left">Type</th> <th style="text-align: 
left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: 
left"><code>accessKey</code></td> <td style="text-align: left">String</td> <td 
style="text-align: left">The Access Key for your App</td> </tr> 
</tbody></table> <p>The event creation support many commonly used data. POST 
request body:</p> <table><thead> <tr> <th style="text-align: left">Field</th> 
<th style="text-align: left">Type</th> <th style="text-align: 
left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: 
left"><code>event</code></td> <td style="text-align: left">String</td> <td
  style="text-align: left">Name of the event.</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">(Examples: &quot;sign-up&quot;, &quot;rate&quot;, 
&quot;view&quot;, &quot;buy&quot;).</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: 
left"><strong>Note</strong>: All event names start with &quot;$&quot; and 
&quot;pio_&quot; are reserved</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: left">and 
shouldn&#39;t be used as your custom event name (eg. &quot;$set&quot;).</td> 
</tr> <tr> <td style="text-align: left"><code>entityType</code></td> <td 
style="text-align: left">String</td> <td style="text-align: left">The entity 
type. It is the namespace of the entityId and</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">analogous to the table name of 
 a relational database. The</td> </tr> <tr> <td style="text-align: left"></td> 
<td style="text-align: left"></td> <td style="text-align: left">entityId must 
be unique within same entityType.</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: 
left"><strong>Note</strong>: All entityType names start with &quot;$&quot; and 
&quot;pio_&quot; are</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">reserved and 
shouldn&#39;t be used.</td> </tr> <tr> <td style="text-align: 
left"><code>entityId</code></td> <td style="text-align: left">String</td> <td 
style="text-align: left">The entity ID. <code>entityType-entityId</code> 
becomes the unique</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">identifier of the 
entity. For example, you may have entityType</td> </tr> <tr> <td 
style="text-align: left"></td> <td style
 ="text-align: left"></td> <td style="text-align: left">named 
<code>user</code>, and different entity IDs, say <code>1</code> and 
<code>2</code>. In this</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">case, 
<code>user-1</code> and <code>user-2</code> uniquely identifies</td> </tr> <tr> 
<td style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">entities.</td> </tr> <tr> <td style="text-align: 
left"><code>targetEntityType</code></td> <td style="text-align: 
left">String</td> <td style="text-align: left">(Optional) The target entity 
type.</td> </tr> <tr> <td style="text-align: left"></td> <td style="text-align: 
left"></td> <td style="text-align: left"><strong>Note</strong>: All entityType 
names start with &quot;$&quot; and &quot;pio_&quot;</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">are reserved and shouldn&#39;
 t be used.</td> </tr> <tr> <td style="text-align: 
left"><code>targetEntityId</code></td> <td style="text-align: left">String</td> 
<td style="text-align: left">(Optional) The target entity ID.</td> </tr> <tr> 
<td style="text-align: left"><code>properties</code></td> <td 
style="text-align: left">JSON</td> <td style="text-align: left">(Optional) See 
<strong>Note About Properties</strong> below</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left"><strong>Note</strong>: All property names start with 
&quot;$&quot; and &quot;pio_&quot;</td> </tr> <tr> <td style="text-align: 
left"></td> <td style="text-align: left"></td> <td style="text-align: left">are 
reserved and shouldn&#39;t be used as keys inside <code>properties</code>.</td> 
</tr> <tr> <td style="text-align: left"><code>eventTime</code></td> <td 
style="text-align: left">String</td> <td style="text-align: left">(Optional) 
The time of the event. Although Event Server&#39;s</
 td> </tr> <tr> <td style="text-align: left"></td> <td style="text-align: 
left"></td> <td style="text-align: left">current system time and UTC timezone 
will be used if this is</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">unspecified, it is 
highly recommended that this time should be</td> </tr> <tr> <td 
style="text-align: left"></td> <td style="text-align: left"></td> <td 
style="text-align: left">generated by the client application in order to 
accurately</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">record the time of 
the event.</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: left">Must be in ISO 8601 
format (e.g.</td> </tr> <tr> <td style="text-align: left"></td> <td 
style="text-align: left"></td> <td style="text-align: 
left"><code>2004-12-13T21:39:45.618Z</code>, or <code>2014-09-09T16:
 17:42.937-08:00</code>).</td> </tr> </tbody></table> <h2 
id='note-about-properties' class='header-anchors'>Note About 
Properties</h2><p>Note that <code>properties</code> can be:</p> <ol> 
<li>Associated with an <em>generic event</em>: The <code>properties</code> 
field provide additional information about this event</li> <li>Associated with 
an <em>entity</em>: The <code>properties</code> field is used to record the 
changes of an entity&#39;s properties with special events <code>$set</code>, 
<code>$unset</code> and <code>$delete</code>.</li> </ol> <p>Please see the <a 
href="/datacollection/eventmodel/">Events Modeling</a> for detailed 
explanation.</p><h2 id='debugging-recipes' class='header-anchors'>Debugging 
Recipes</h2><div class="alert-message warning"><p>The following API are mainly 
for development or debugging purpose only. They should not be supported by SDK 
nor used by real application under normal circumstances and they are subject to 
changes.</p></div><div class="alert-message
  info"><p>Instead of using <code>curl</code>, you can also install JSON 
browser plugins such as <strong>JSONView</strong> to pretty-print the JSON on 
your browser. With the browser plugin you can make the <code>GET</code> queries 
below by passing in the URL. Plugins like <strong>Postman - REST 
Client</strong> provide a more advanced interface for making 
queries.</p></div><p>The <code>accessKey</code> query parameter is 
mandatory.</p><p>Replace <code>&lt;your_accessKey&gt;</code> and 
<code>&lt;your_eventId&gt;</code> by a real one in the following:</p><h3 
id='get-an-event' class='header-anchors'>Get an Event</h3><div class="highlight 
shell"><table style="border-spacing: 0"><tbody><tr><td class="gutter gl" 
style="text-align: right"><pre class="lineno">1</pre></td><td 
class="code"><pre><span class="gp">$ </span>curl -i -X GET 
http://localhost:7070/events/&lt;your_eventId&gt;.json?accessKey<span 
class="o">=</span>&lt;your_accessKey&gt;
 </pre></td></tr></tbody></table> </div> <h3 id='delete-an-event' 
class='header-anchors'>Delete an Event</h3><div class="highlight shell"><table 
style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: 
right"><pre class="lineno">1</pre></td><td class="code"><pre><span class="gp">$ 
</span>curl -i -X DELETE 
http://localhost:7070/events/&lt;your_eventId&gt;.json?accessKey<span 
class="o">=</span>&lt;your_accessKey&gt;
 </pre></td></tr></tbody></table> </div> <h3 id='get-events-of-an-app' 
class='header-anchors'>Get Events of an App</h3><div class="highlight 
shell"><table style="border-spacing: 0"><tbody><tr><td class="gutter gl" 
style="text-align: right"><pre class="lineno">1</pre></td><td 
class="code"><pre><span class="gp">$ </span>curl -i -X GET 
http://localhost:7070/events.json?accessKey<span 
class="o">=</span>&lt;your_accessKey&gt;
 </pre></td></tr></tbody></table> </div> <div class="alert-message info"><p>By 
default, it returns at most 20 events. Use the <code>limit</code> parameter to 
specify how many events returned (see below). Use cautiously!</p></div><p>In 
addition, the following <em>optional</em> parameters are supported:</p> <ul> 
<li><code>startTime</code>: time in ISO8601 format. Return events with 
<code>eventTime &gt;= startTime</code>.</li> <li><code>untilTime</code>: time 
in ISO8601 format. Return events with <code>eventTime &lt; 
untilTime</code>.</li> <li><code>entityType</code>: String. The entityType. 
Return events for this <code>entityType</code> only.</li> 
<li><code>entityId</code>: String. The entityId. Return events for this 
<code>entityId</code> only.</li> <li><code>event</code>: String. The event 
name. Return events with this name only.</li> 
<li><code>targetEntityType</code>: String. The targetEntityType. Return events 
for this <code>targetEntityType</code> only.</li> <li><code>targetEntity
 Id</code>: String. The targetEntityId. Return events for this 
<code>targetEntityId</code> only.</li> <li><code>limit</code>: Integer. The 
number of record events returned. Default is 20. -1 to get all.</li> 
<li><code>reversed</code>: Boolean. <strong>Must be used with both 
<code>entityType</code> and <code>entityId</code> specified</strong>, returns 
events in reversed chronological order. Default is false.</li> </ul> <div 
class="alert-message warning"><p>If you are using <code>curl</code> with the 
<code>&amp;</code> symbol, you should quote the entire URL by using single or 
double quotes.</p></div><div class="alert-message warning"><p>Depending on the 
size of data, you may encounter timeout when querying with some of the above 
filters. Event server uses <code>entityType</code> and <code>entityId</code> as 
the key so any query without both <code>entityType</code> and 
<code>entityId</code> specified might result in a timeout.</p></div><p>For 
example, get all events of an app with <cod
 e>eventTime &gt;= startTime</code></p><div class="highlight shell"><table 
style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: 
right"><pre class="lineno">1</pre></td><td class="code"><pre><span class="gp">$ 
</span>curl -i -X GET <span 
class="s2">"http://localhost:7070/events.json?accessKey=&lt;your_accessKey&gt;&amp;startTime=&lt;time
 in ISO8601 format&gt;"</span>

Reply via email to