http://git-wip-us.apache.org/repos/asf/predictionio-site/blob/9d2bd407/datacollection/eventapi/index.html
----------------------------------------------------------------------
diff --git a/datacollection/eventapi/index.html
b/datacollection/eventapi/index.html
index bccd7e0..a066ff7 100644
--- a/datacollection/eventapi/index.html
+++ b/datacollection/eventapi/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html><head><title>Collecting Data through
REST/SDKs</title><meta charset="utf-8"/><meta content="IE=edge,chrome=1"
http-equiv="X-UA-Compatible"/><meta name="viewport"
content="width=device-width, initial-scale=1.0"/><meta class="swiftype"
name="title" data-type="string" content="Collecting Data through
REST/SDKs"/><link rel="canonical"
href="https://predictionio.apache.org/datacollection/eventapi/"/><link
href="/images/favicon/normal-b330020a.png" rel="shortcut icon"/><link
href="/images/favicon/apple-c0febcf2.png" rel="apple-touch-icon"/><link
href="//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800"
rel="stylesheet"/><link
href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css"
rel="stylesheet"/><link href="/stylesheets/application-eccfc6cb.css"
rel="stylesheet" type="text/css"/><script
src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"></script><script
src="//c
dn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script><script
src="//use.typekit.net/pqo0itb.js"></script><script>try{Typekit.load({ async:
true });}catch(e){}</script></head><body><div id="global"><header><div
class="container" id="header-wrapper"><div class="row"><div
class="col-sm-12"><div id="logo-wrapper"><span id="drawer-toggle"></span><a
href="#"></a><a href="http://predictionio.apache.org/"><img alt="Apache
PredictionIO" id="logo"
src="/images/logos/logo-ee2b9bb3.png"/></a><span>®</span></div><div
id="menu-wrapper"><div id="pill-wrapper"><a class="pill left"
href="/gallery/template-gallery">TEMPLATES</a> <a class="pill right"
href="//github.com/apache/incubator-predictionio/">OPEN
SOURCE</a></div></div><img class="mobile-search-bar-toggler hidden-md
hidden-lg"
src="/images/icons/search-glass-704bd4ff.png"/></div></div></div></header><div
id="search-bar-row-wrapper"><div class="container-fluid"
id="search-bar-row"><div class="row"><div class="col-md
-9 col-sm-11 col-xs-11"><div class="hidden-md hidden-lg"
id="mobile-page-heading-wrapper"><p>PredictionIO Docs</p><h4>Collecting Data
with REST/SDKs</h4></div><h4 class="hidden-sm hidden-xs">PredictionIO
Docs</h4></div><div class="col-md-3 col-sm-1 col-xs-1 hidden-md hidden-lg"><img
id="left-menu-indicator"
src="/images/icons/down-arrow-dfe9f7fe.png"/></div><div class="col-md-3
col-sm-12 col-xs-12 swiftype-wrapper"><div class="swiftype"><form
class="search-form"><img class="search-box-toggler hidden-xs hidden-sm"
src="/images/icons/search-glass-704bd4ff.png"/><div class="search-box"><img
src="/images/icons/search-glass-704bd4ff.png"/><input type="text"
id="st-search-input" class="st-search-input" placeholder="Search
Doc..."/></div><img class="swiftype-row-hider hidden-md hidden-lg"
src="/images/icons/drawer-toggle-active-fcbef12a.png"/></form></div></div><div
class="mobile-left-menu-toggler hidden-md
hidden-lg"></div></div></div></div><div id="page" class="container-fluid"><div
clas
s="row"><div id="left-menu-wrapper" class="col-md-3"><nav
id="nav-main"><ul><li class="level-1"><a class="expandible"
href="/"><span>Apache PredictionIO® Documentation</span></a><ul><li
class="level-2"><a class="final" href="/"><span>Welcome to Apache
PredictionIO®</span></a></li></ul></li><li class="level-1"><a
class="expandible" href="#"><span>Getting Started</span></a><ul><li
class="level-2"><a class="final" href="/start/"><span>A Quick
Intro</span></a></li><li class="level-2"><a class="final"
href="/install/"><span>Installing Apache PredictionIO</span></a></li><li
class="level-2"><a class="final" href="/start/download/"><span>Downloading an
Engine Template</span></a></li><li class="level-2"><a class="final"
href="/start/deploy/"><span>Deploying Your First Engine</span></a></li><li
class="level-2"><a class="final" href="/start/customize/"><span>Customizing the
Engine</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>Integrating with Your App</spa
n></a><ul><li class="level-2"><a class="final"
href="/appintegration/"><span>App Integration Overview</span></a></li><li
class="level-2"><a class="expandible" href="/sdk/"><span>List of
SDKs</span></a><ul><li class="level-3"><a class="final"
href="/sdk/java/"><span>Java & Android SDK</span></a></li><li
class="level-3"><a class="final" href="/sdk/php/"><span>PHP
SDK</span></a></li><li class="level-3"><a class="final"
href="/sdk/python/"><span>Python SDK</span></a></li><li class="level-3"><a
class="final" href="/sdk/ruby/"><span>Ruby SDK</span></a></li><li
class="level-3"><a class="final" href="/sdk/community/"><span>Community Powered
SDKs</span></a></li></ul></li></ul></li><li class="level-1"><a
class="expandible" href="#"><span>Deploying an Engine</span></a><ul><li
class="level-2"><a class="final" href="/deploy/"><span>Deploying as a Web
Service</span></a></li><li class="level-2"><a class="final"
href="/batchpredict/"><span>Batch Predictions</span></a></li><li
class="level-2"><a cla
ss="final" href="/deploy/monitoring/"><span>Monitoring
Engine</span></a></li><li class="level-2"><a class="final"
href="/deploy/engineparams/"><span>Setting Engine Parameters</span></a></li><li
class="level-2"><a class="final" href="/deploy/enginevariants/"><span>Deploying
Multiple Engine Variants</span></a></li><li class="level-2"><a class="final"
href="/deploy/plugin/"><span>Engine Server Plugin</span></a></li></ul></li><li
class="level-1"><a class="expandible" href="#"><span>Customizing an
Engine</span></a><ul><li class="level-2"><a class="final"
href="/customize/"><span>Learning DASE</span></a></li><li class="level-2"><a
class="final" href="/customize/dase/"><span>Implement DASE</span></a></li><li
class="level-2"><a class="final"
href="/customize/troubleshooting/"><span>Troubleshooting Engine
Development</span></a></li><li class="level-2"><a class="final"
href="/api/current/#package"><span>Engine Scala
APIs</span></a></li></ul></li><li class="level-1"><a class="expandible" href=
"#"><span>Collecting and Analyzing Data</span></a><ul><li class="level-2"><a
class="final" href="/datacollection/"><span>Event Server
Overview</span></a></li><li class="level-2"><a class="final active"
href="/datacollection/eventapi/"><span>Collecting Data with
REST/SDKs</span></a></li><li class="level-2"><a class="final"
href="/datacollection/eventmodel/"><span>Events Modeling</span></a></li><li
class="level-2"><a class="final"
href="/datacollection/webhooks/"><span>Unifying Multichannel Data with
Webhooks</span></a></li><li class="level-2"><a class="final"
href="/datacollection/channel/"><span>Channel</span></a></li><li
class="level-2"><a class="final"
href="/datacollection/batchimport/"><span>Importing Data in
Batch</span></a></li><li class="level-2"><a class="final"
href="/datacollection/analytics/"><span>Using Analytics
Tools</span></a></li><li class="level-2"><a class="final"
href="/datacollection/plugin/"><span>Event Server
Plugin</span></a></li></ul></li><li class="level-1">
<a class="expandible" href="#"><span>Choosing an
Algorithm(s)</span></a><ul><li class="level-2"><a class="final"
href="/algorithm/"><span>Built-in Algorithm Libraries</span></a></li><li
class="level-2"><a class="final" href="/algorithm/switch/"><span>Switching to
Another Algorithm</span></a></li><li class="level-2"><a class="final"
href="/algorithm/multiple/"><span>Combining Multiple
Algorithms</span></a></li><li class="level-2"><a class="final"
href="/algorithm/custom/"><span>Adding Your Own
Algorithms</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>ML Tuning and Evaluation</span></a><ul><li class="level-2"><a
class="final" href="/evaluation/"><span>Overview</span></a></li><li
class="level-2"><a class="final"
href="/evaluation/paramtuning/"><span>Hyperparameter Tuning</span></a></li><li
class="level-2"><a class="final"
href="/evaluation/evaluationdashboard/"><span>Evaluation
Dashboard</span></a></li><li class="level-2"><a class="final" href="/evalu
ation/metricchoose/"><span>Choosing Evaluation Metrics</span></a></li><li
class="level-2"><a class="final" href="/evaluation/metricbuild/"><span>Building
Evaluation Metrics</span></a></li></ul></li><li class="level-1"><a
class="expandible" href="#"><span>System Architecture</span></a><ul><li
class="level-2"><a class="final" href="/system/"><span>Architecture
Overview</span></a></li><li class="level-2"><a class="final"
href="/system/anotherdatastore/"><span>Using Another Data
Store</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>PredictionIO® Official Templates</span></a><ul><li
class="level-2"><a class="final"
href="/templates/"><span>Intro</span></a></li><li class="level-2"><a
class="expandible" href="#"><span>Recommendation</span></a><ul><li
class="level-3"><a class="final"
href="/templates/recommendation/quickstart/"><span>Quick
Start</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/dase/"><span>DASE</span></a>
</li><li class="level-3"><a class="final"
href="/templates/recommendation/evaluation/"><span>Evaluation
Explained</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/recommendation/reading-custom-events/"><span>Read Custom
Events</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/customize-data-prep/"><span>Customize Data
Preparator</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/customize-serving/"><span>Customize
Serving</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/training-with-implicit-preference/"><span>Train
with Implicit Preference</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/blacklist-items/"><span>Filter Recommended
Items by Blacklist in Query</span></a></li><li class="level-3"><a class="final"
href="/templat
es/recommendation/batch-evaluator/"><span>Batch Persistable
Evaluator</span></a></li></ul></li><li class="level-2"><a class="expandible"
href="#"><span>E-Commerce Recommendation</span></a><ul><li class="level-3"><a
class="final" href="/templates/ecommercerecommendation/quickstart/"><span>Quick
Start</span></a></li><li class="level-3"><a class="final"
href="/templates/ecommercerecommendation/dase/"><span>DASE</span></a></li><li
class="level-3"><a class="final"
href="/templates/ecommercerecommendation/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/ecommercerecommendation/train-with-rate-event/"><span>Train
with Rate Event</span></a></li><li class="level-3"><a class="final"
href="/templates/ecommercerecommendation/adjust-score/"><span>Adjust
Score</span></a></li></ul></li><li class="level-2"><a class="expandible"
href="#"><span>Similar Product</span></a><ul><li class="level-3"><a
class="final" href="/templates/similarproduct/quickstart/"><spa
n>Quick Start</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/dase/"><span>DASE</span></a></li><li
class="level-3"><a class="final"
href="/templates/similarproduct/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/similarproduct/multi-events-multi-algos/"><span>Multiple
Events and Multiple Algorithms</span></a></li><li class="level-3"><a
class="final"
href="/templates/similarproduct/return-item-properties/"><span>Returns Item
Properties</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/train-with-rate-event/"><span>Train with Rate
Event</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/rid-user-set-event/"><span>Get Rid of Events
for Users</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/recommended-user/"><span>Recommend
Users</span></a></li></ul></li><li class="level-2"><a class="expandible"
href="#"><sp
an>Classification</span></a><ul><li class="level-3"><a class="final"
href="/templates/classification/quickstart/"><span>Quick
Start</span></a></li><li class="level-3"><a class="final"
href="/templates/classification/dase/"><span>DASE</span></a></li><li
class="level-3"><a class="final"
href="/templates/classification/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/classification/add-algorithm/"><span>Use Alternative
Algorithm</span></a></li><li class="level-3"><a class="final"
href="/templates/classification/reading-custom-properties/"><span>Read Custom
Properties</span></a></li></ul></li></ul></li><li class="level-1"><a
class="expandible" href="#"><span>Engine Template Gallery</span></a><ul><li
class="level-2"><a class="final"
href="/gallery/template-gallery/"><span>Browse</span></a></li><li
class="level-2"><a class="final"
href="/community/submit-template/"><span>Submit your Engine as a
Template</span></a></li></ul></li><li class="level-1"
><a class="expandible" href="#"><span>Demo Tutorials</span></a><ul><li
>class="level-2"><a class="final" href="/demo/tapster/"><span>Comics
>Recommendation Demo</span></a></li><li class="level-2"><a class="final"
>href="/demo/community/"><span>Community Contributed Demo</span></a></li><li
>class="level-2"><a class="final" href="/demo/textclassification/"><span>Text
>Classification Engine Tutorial</span></a></li></ul></li><li
>class="level-1"><a class="expandible" href="/community/"><span>Getting
>Involved</span></a><ul><li class="level-2"><a class="final"
>href="/community/contribute-code/"><span>Contribute Code</span></a></li><li
>class="level-2"><a class="final"
>href="/community/contribute-documentation/"><span>Contribute
>Documentation</span></a></li><li class="level-2"><a class="final"
>href="/community/contribute-sdk/"><span>Contribute a SDK</span></a></li><li
>class="level-2"><a class="final"
>href="/community/contribute-webhook/"><span>Contribute a
>Webhook</span></a></li><li class="level-
2"><a class="final" href="/community/projects/"><span>Community
Projects</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>Getting Help</span></a><ul><li class="level-2"><a class="final"
href="/resources/faq/"><span>FAQs</span></a></li><li class="level-2"><a
class="final" href="/support/"><span>Support</span></a></li></ul></li><li
class="level-1"><a class="expandible"
href="#"><span>Resources</span></a><ul><li class="level-2"><a class="final"
href="/cli/"><span>Command-line Interface</span></a></li><li class="level-2"><a
class="final" href="/resources/release/"><span>Release
Cadence</span></a></li><li class="level-2"><a class="final"
href="/resources/intellij/"><span>Developing Engines with IntelliJ
IDEA</span></a></li><li class="level-2"><a class="final"
href="/resources/upgrade/"><span>Upgrade Instructions</span></a></li><li
class="level-2"><a class="final"
href="/resources/glossary/"><span>Glossary</span></a></li></ul></li><li
class="level-1"><a cl
ass="expandible" href="#"><span>Apache Software Foundation</span></a><ul><li
class="level-2"><a class="final" href="https://www.apache.org/"><span>Apache
Homepage</span></a></li><li class="level-2"><a class="final"
href="https://www.apache.org/licenses/"><span>License</span></a></li><li
class="level-2"><a class="final"
href="https://www.apache.org/foundation/sponsorship.html"><span>Sponsorship</span></a></li><li
class="level-2"><a class="final"
href="https://www.apache.org/foundation/thanks.html"><span>Thanks</span></a></li><li
class="level-2"><a class="final"
href="https://www.apache.org/security/"><span>Security</span></a></li></ul></li></ul></nav></div><div
class="col-md-9 col-sm-12"><div class="content-header hidden-md
hidden-lg"><div id="breadcrumbs" class="hidden-sm hidden xs"><ul><li><a
href="#">Collecting and Analyzing Data</a><span
class="spacer">></span></li><li><span class="last">Collecting Data with
REST/SDKs</span></li></ul></div><div id="page-title"><h1>Collecting D
ata through REST/SDKs</h1></div></div><div
id="table-of-content-wrapper"><h5>On this page</h5><aside
id="table-of-contents"><ul> <li> <a
href="#launching-the-event-server">Launching the Event Server</a> </li> <li> <a
href="#using-event-api">Using Event API</a> </li> <li> <a
href="#note-about-properties">Note About Properties</a> </li> <li> <a
href="#debugging-recipes">Debugging Recipes</a> </li> </ul> </aside><hr/><a
id="edit-page-link"
href="https://github.com/apache/incubator-predictionio/tree/livedoc/docs/manual/source/datacollection/eventapi.html.md"><img
src="/images/icons/edit-pencil-d6c1bb3d.png"/>Edit this page</a></div><div
class="content-header hidden-sm hidden-xs"><div id="breadcrumbs"
class="hidden-sm hidden xs"><ul><li><a href="#">Collecting and Analyzing
Data</a><span class="spacer">></span></li><li><span class="last">Collecting
Data with REST/SDKs</span></li></ul></div><div id="page-title"><h1>Collecting
Data through REST/SDKs</h1></div></div><div class="content">
<p><strong>Event Server</strong> is designed to collect data into Apache
PredictionIO (incubating) in an event-based style. Once the Event Server is
launched, your application can send data to it through its <strong>Event
API</strong> with HTTP requests or with <code>EventClient</code>s of
PredictionIO's SDKs.</p><div class="alert-message info"><p>All Apache
PredictionIO-compliant engines support accessing the Event Store (i.e. the data
store of Event Server) through <a
href="http://predictionio.apache.org/api/current/index.html#org.apache.predictionio.data.storage.package">Apache
PredictionIO's Storage API</a>.</p></div><h2
id='launching-the-event-server' class='header-anchors'>Launching the Event
Server</h2><div class="alert-message info"><p>Before launching the Event
Server, make sure that your event data store backend is properly configured and
is running. By default, Apache PredictionIO (incubating) uses Apache HBase, and
a quick configuration can be found <a href="/ins
tall/install-sourcecode/#hbase">here</a>. Please allow a minute (usually less
than 30 seconds) after HBase is started for its initialization to complete
before starting the Event Server.</p></div><p>Everything about Apache
PredictionIO can be done through the <code>pio</code> command. Please add PIO
binary command path to to your <code>PATH</code> first. Assuming PredictionIO
is installed at <code>/home/yourname/PredictionIO/</code>, you can run</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><span class="nv">PATH</span><span
class="o">=</span><span
class="nv">$PATH</span>:/home/yourname/PredictionIO/bin; <span
class="nb">export </span>PATH
+<!DOCTYPE html><html><head><title>Collecting Data through
REST/SDKs</title><meta charset="utf-8"/><meta content="IE=edge,chrome=1"
http-equiv="X-UA-Compatible"/><meta name="viewport"
content="width=device-width, initial-scale=1.0"/><meta class="swiftype"
name="title" data-type="string" content="Collecting Data through
REST/SDKs"/><link rel="canonical"
href="https://predictionio.apache.org/datacollection/eventapi/"/><link
href="/images/favicon/normal-b330020a.png" rel="shortcut icon"/><link
href="/images/favicon/apple-c0febcf2.png" rel="apple-touch-icon"/><link
href="//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800"
rel="stylesheet"/><link
href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css"
rel="stylesheet"/><link href="/stylesheets/application-eccfc6cb.css"
rel="stylesheet" type="text/css"/><script
src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"></script><script
src="//c
dn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script><script
src="//use.typekit.net/pqo0itb.js"></script><script>try{Typekit.load({ async:
true });}catch(e){}</script></head><body><div id="global"><header><div
class="container" id="header-wrapper"><div class="row"><div
class="col-sm-12"><div id="logo-wrapper"><span id="drawer-toggle"></span><a
href="#"></a><a href="http://predictionio.apache.org/"><img alt="Apache
PredictionIO" id="logo"
src="/images/logos/logo-ee2b9bb3.png"/></a><span>®</span></div><div
id="menu-wrapper"><div id="pill-wrapper"><a class="pill left"
href="/gallery/template-gallery">TEMPLATES</a> <a class="pill right"
href="//github.com/apache/predictionio/">OPEN SOURCE</a></div></div><img
class="mobile-search-bar-toggler hidden-md hidden-lg"
src="/images/icons/search-glass-704bd4ff.png"/></div></div></div></header><div
id="search-bar-row-wrapper"><div class="container-fluid"
id="search-bar-row"><div class="row"><div class="col-md-9 col-sm-
11 col-xs-11"><div class="hidden-md hidden-lg"
id="mobile-page-heading-wrapper"><p>PredictionIO Docs</p><h4>Collecting Data
with REST/SDKs</h4></div><h4 class="hidden-sm hidden-xs">PredictionIO
Docs</h4></div><div class="col-md-3 col-sm-1 col-xs-1 hidden-md hidden-lg"><img
id="left-menu-indicator"
src="/images/icons/down-arrow-dfe9f7fe.png"/></div><div class="col-md-3
col-sm-12 col-xs-12 swiftype-wrapper"><div class="swiftype"><form
class="search-form"><img class="search-box-toggler hidden-xs hidden-sm"
src="/images/icons/search-glass-704bd4ff.png"/><div class="search-box"><img
src="/images/icons/search-glass-704bd4ff.png"/><input type="text"
id="st-search-input" class="st-search-input" placeholder="Search
Doc..."/></div><img class="swiftype-row-hider hidden-md hidden-lg"
src="/images/icons/drawer-toggle-active-fcbef12a.png"/></form></div></div><div
class="mobile-left-menu-toggler hidden-md
hidden-lg"></div></div></div></div><div id="page" class="container-fluid"><div
class="row"><d
iv id="left-menu-wrapper" class="col-md-3"><nav id="nav-main"><ul><li
class="level-1"><a class="expandible" href="/"><span>Apache PredictionIO®
Documentation</span></a><ul><li class="level-2"><a class="final"
href="/"><span>Welcome to Apache PredictionIO®</span></a></li></ul></li><li
class="level-1"><a class="expandible" href="#"><span>Getting
Started</span></a><ul><li class="level-2"><a class="final"
href="/start/"><span>A Quick Intro</span></a></li><li class="level-2"><a
class="final" href="/install/"><span>Installing Apache
PredictionIO</span></a></li><li class="level-2"><a class="final"
href="/start/download/"><span>Downloading an Engine Template</span></a></li><li
class="level-2"><a class="final" href="/start/deploy/"><span>Deploying Your
First Engine</span></a></li><li class="level-2"><a class="final"
href="/start/customize/"><span>Customizing the
Engine</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>Integrating with Your App</span></a><ul>
<li class="level-2"><a class="final" href="/appintegration/"><span>App
Integration Overview</span></a></li><li class="level-2"><a class="expandible"
href="/sdk/"><span>List of SDKs</span></a><ul><li class="level-3"><a
class="final" href="/sdk/java/"><span>Java & Android SDK</span></a></li><li
class="level-3"><a class="final" href="/sdk/php/"><span>PHP
SDK</span></a></li><li class="level-3"><a class="final"
href="/sdk/python/"><span>Python SDK</span></a></li><li class="level-3"><a
class="final" href="/sdk/ruby/"><span>Ruby SDK</span></a></li><li
class="level-3"><a class="final" href="/sdk/community/"><span>Community Powered
SDKs</span></a></li></ul></li></ul></li><li class="level-1"><a
class="expandible" href="#"><span>Deploying an Engine</span></a><ul><li
class="level-2"><a class="final" href="/deploy/"><span>Deploying as a Web
Service</span></a></li><li class="level-2"><a class="final"
href="/batchpredict/"><span>Batch Predictions</span></a></li><li
class="level-2"><a class="final"
href="/deploy/monitoring/"><span>Monitoring Engine</span></a></li><li
class="level-2"><a class="final" href="/deploy/engineparams/"><span>Setting
Engine Parameters</span></a></li><li class="level-2"><a class="final"
href="/deploy/enginevariants/"><span>Deploying Multiple Engine
Variants</span></a></li><li class="level-2"><a class="final"
href="/deploy/plugin/"><span>Engine Server Plugin</span></a></li></ul></li><li
class="level-1"><a class="expandible" href="#"><span>Customizing an
Engine</span></a><ul><li class="level-2"><a class="final"
href="/customize/"><span>Learning DASE</span></a></li><li class="level-2"><a
class="final" href="/customize/dase/"><span>Implement DASE</span></a></li><li
class="level-2"><a class="final"
href="/customize/troubleshooting/"><span>Troubleshooting Engine
Development</span></a></li><li class="level-2"><a class="final"
href="/api/current/#package"><span>Engine Scala
APIs</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>
Collecting and Analyzing Data</span></a><ul><li class="level-2"><a
class="final" href="/datacollection/"><span>Event Server
Overview</span></a></li><li class="level-2"><a class="final active"
href="/datacollection/eventapi/"><span>Collecting Data with
REST/SDKs</span></a></li><li class="level-2"><a class="final"
href="/datacollection/eventmodel/"><span>Events Modeling</span></a></li><li
class="level-2"><a class="final"
href="/datacollection/webhooks/"><span>Unifying Multichannel Data with
Webhooks</span></a></li><li class="level-2"><a class="final"
href="/datacollection/channel/"><span>Channel</span></a></li><li
class="level-2"><a class="final"
href="/datacollection/batchimport/"><span>Importing Data in
Batch</span></a></li><li class="level-2"><a class="final"
href="/datacollection/analytics/"><span>Using Analytics
Tools</span></a></li><li class="level-2"><a class="final"
href="/datacollection/plugin/"><span>Event Server
Plugin</span></a></li></ul></li><li class="level-1"><a class="
expandible" href="#"><span>Choosing an Algorithm(s)</span></a><ul><li
class="level-2"><a class="final" href="/algorithm/"><span>Built-in Algorithm
Libraries</span></a></li><li class="level-2"><a class="final"
href="/algorithm/switch/"><span>Switching to Another
Algorithm</span></a></li><li class="level-2"><a class="final"
href="/algorithm/multiple/"><span>Combining Multiple
Algorithms</span></a></li><li class="level-2"><a class="final"
href="/algorithm/custom/"><span>Adding Your Own
Algorithms</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>ML Tuning and Evaluation</span></a><ul><li class="level-2"><a
class="final" href="/evaluation/"><span>Overview</span></a></li><li
class="level-2"><a class="final"
href="/evaluation/paramtuning/"><span>Hyperparameter Tuning</span></a></li><li
class="level-2"><a class="final"
href="/evaluation/evaluationdashboard/"><span>Evaluation
Dashboard</span></a></li><li class="level-2"><a class="final"
href="/evaluation/metr
icchoose/"><span>Choosing Evaluation Metrics</span></a></li><li
class="level-2"><a class="final" href="/evaluation/metricbuild/"><span>Building
Evaluation Metrics</span></a></li></ul></li><li class="level-1"><a
class="expandible" href="#"><span>System Architecture</span></a><ul><li
class="level-2"><a class="final" href="/system/"><span>Architecture
Overview</span></a></li><li class="level-2"><a class="final"
href="/system/anotherdatastore/"><span>Using Another Data
Store</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>PredictionIO® Official Templates</span></a><ul><li
class="level-2"><a class="final"
href="/templates/"><span>Intro</span></a></li><li class="level-2"><a
class="expandible" href="#"><span>Recommendation</span></a><ul><li
class="level-3"><a class="final"
href="/templates/recommendation/quickstart/"><span>Quick
Start</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/dase/"><span>DASE</span></a></li><li c
lass="level-3"><a class="final"
href="/templates/recommendation/evaluation/"><span>Evaluation
Explained</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/recommendation/reading-custom-events/"><span>Read Custom
Events</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/customize-data-prep/"><span>Customize Data
Preparator</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/customize-serving/"><span>Customize
Serving</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/training-with-implicit-preference/"><span>Train
with Implicit Preference</span></a></li><li class="level-3"><a class="final"
href="/templates/recommendation/blacklist-items/"><span>Filter Recommended
Items by Blacklist in Query</span></a></li><li class="level-3"><a class="final"
href="/templates/recomme
ndation/batch-evaluator/"><span>Batch Persistable
Evaluator</span></a></li></ul></li><li class="level-2"><a class="expandible"
href="#"><span>E-Commerce Recommendation</span></a><ul><li class="level-3"><a
class="final" href="/templates/ecommercerecommendation/quickstart/"><span>Quick
Start</span></a></li><li class="level-3"><a class="final"
href="/templates/ecommercerecommendation/dase/"><span>DASE</span></a></li><li
class="level-3"><a class="final"
href="/templates/ecommercerecommendation/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/ecommercerecommendation/train-with-rate-event/"><span>Train
with Rate Event</span></a></li><li class="level-3"><a class="final"
href="/templates/ecommercerecommendation/adjust-score/"><span>Adjust
Score</span></a></li></ul></li><li class="level-2"><a class="expandible"
href="#"><span>Similar Product</span></a><ul><li class="level-3"><a
class="final" href="/templates/similarproduct/quickstart/"><span>Quick St
art</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/dase/"><span>DASE</span></a></li><li
class="level-3"><a class="final"
href="/templates/similarproduct/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/similarproduct/multi-events-multi-algos/"><span>Multiple
Events and Multiple Algorithms</span></a></li><li class="level-3"><a
class="final"
href="/templates/similarproduct/return-item-properties/"><span>Returns Item
Properties</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/train-with-rate-event/"><span>Train with Rate
Event</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/rid-user-set-event/"><span>Get Rid of Events
for Users</span></a></li><li class="level-3"><a class="final"
href="/templates/similarproduct/recommended-user/"><span>Recommend
Users</span></a></li></ul></li><li class="level-2"><a class="expandible"
href="#"><span>Classif
ication</span></a><ul><li class="level-3"><a class="final"
href="/templates/classification/quickstart/"><span>Quick
Start</span></a></li><li class="level-3"><a class="final"
href="/templates/classification/dase/"><span>DASE</span></a></li><li
class="level-3"><a class="final"
href="/templates/classification/how-to/"><span>How-To</span></a></li><li
class="level-3"><a class="final"
href="/templates/classification/add-algorithm/"><span>Use Alternative
Algorithm</span></a></li><li class="level-3"><a class="final"
href="/templates/classification/reading-custom-properties/"><span>Read Custom
Properties</span></a></li></ul></li></ul></li><li class="level-1"><a
class="expandible" href="#"><span>Engine Template Gallery</span></a><ul><li
class="level-2"><a class="final"
href="/gallery/template-gallery/"><span>Browse</span></a></li><li
class="level-2"><a class="final"
href="/community/submit-template/"><span>Submit your Engine as a
Template</span></a></li></ul></li><li class="level-1"><a class=
"expandible" href="#"><span>Demo Tutorials</span></a><ul><li
class="level-2"><a class="final" href="/demo/tapster/"><span>Comics
Recommendation Demo</span></a></li><li class="level-2"><a class="final"
href="/demo/community/"><span>Community Contributed Demo</span></a></li><li
class="level-2"><a class="final" href="/demo/textclassification/"><span>Text
Classification Engine Tutorial</span></a></li></ul></li><li class="level-1"><a
class="expandible" href="/community/"><span>Getting Involved</span></a><ul><li
class="level-2"><a class="final"
href="/community/contribute-code/"><span>Contribute Code</span></a></li><li
class="level-2"><a class="final"
href="/community/contribute-documentation/"><span>Contribute
Documentation</span></a></li><li class="level-2"><a class="final"
href="/community/contribute-sdk/"><span>Contribute a SDK</span></a></li><li
class="level-2"><a class="final"
href="/community/contribute-webhook/"><span>Contribute a
Webhook</span></a></li><li class="level-2"><a clas
s="final" href="/community/projects/"><span>Community
Projects</span></a></li></ul></li><li class="level-1"><a class="expandible"
href="#"><span>Getting Help</span></a><ul><li class="level-2"><a class="final"
href="/resources/faq/"><span>FAQs</span></a></li><li class="level-2"><a
class="final" href="/support/"><span>Support</span></a></li></ul></li><li
class="level-1"><a class="expandible"
href="#"><span>Resources</span></a><ul><li class="level-2"><a class="final"
href="/cli/"><span>Command-line Interface</span></a></li><li class="level-2"><a
class="final" href="/resources/release/"><span>Release
Cadence</span></a></li><li class="level-2"><a class="final"
href="/resources/intellij/"><span>Developing Engines with IntelliJ
IDEA</span></a></li><li class="level-2"><a class="final"
href="/resources/upgrade/"><span>Upgrade Instructions</span></a></li><li
class="level-2"><a class="final"
href="/resources/glossary/"><span>Glossary</span></a></li></ul></li><li
class="level-1"><a class="expan
dible" href="#"><span>Apache Software Foundation</span></a><ul><li
class="level-2"><a class="final" href="https://www.apache.org/"><span>Apache
Homepage</span></a></li><li class="level-2"><a class="final"
href="https://www.apache.org/licenses/"><span>License</span></a></li><li
class="level-2"><a class="final"
href="https://www.apache.org/foundation/sponsorship.html"><span>Sponsorship</span></a></li><li
class="level-2"><a class="final"
href="https://www.apache.org/foundation/thanks.html"><span>Thanks</span></a></li><li
class="level-2"><a class="final"
href="https://www.apache.org/security/"><span>Security</span></a></li></ul></li></ul></nav></div><div
class="col-md-9 col-sm-12"><div class="content-header hidden-md
hidden-lg"><div id="breadcrumbs" class="hidden-sm hidden xs"><ul><li><a
href="#">Collecting and Analyzing Data</a><span
class="spacer">></span></li><li><span class="last">Collecting Data with
REST/SDKs</span></li></ul></div><div id="page-title"><h1>Collecting Data throug
h REST/SDKs</h1></div></div><div id="table-of-content-wrapper"><h5>On this
page</h5><aside id="table-of-contents"><ul> <li> <a
href="#launching-the-event-server">Launching the Event Server</a> </li> <li> <a
href="#using-event-api">Using Event API</a> </li> <li> <a
href="#note-about-properties">Note About Properties</a> </li> <li> <a
href="#debugging-recipes">Debugging Recipes</a> </li> </ul> </aside><hr/><a
id="edit-page-link"
href="https://github.com/apache/predictionio/tree/livedoc/docs/manual/source/datacollection/eventapi.html.md"><img
src="/images/icons/edit-pencil-d6c1bb3d.png"/>Edit this page</a></div><div
class="content-header hidden-sm hidden-xs"><div id="breadcrumbs"
class="hidden-sm hidden xs"><ul><li><a href="#">Collecting and Analyzing
Data</a><span class="spacer">></span></li><li><span class="last">Collecting
Data with REST/SDKs</span></li></ul></div><div id="page-title"><h1>Collecting
Data through REST/SDKs</h1></div></div><div class="content"> <p><strong>Event
Ser
ver</strong> is designed to collect data into Apache PredictionIO in an
event-based style. Once the Event Server is launched, your application can send
data to it through its <strong>Event API</strong> with HTTP requests or with
<code>EventClient</code>s of PredictionIO's SDKs.</p><div
class="alert-message info"><p>All Apache PredictionIO-compliant engines support
accessing the Event Store (i.e. the data store of Event Server) through <a
href="http://predictionio.apache.org/api/current/index.html#org.apache.predictionio.data.storage.package">Apache
PredictionIO's Storage API</a>.</p></div><h2
id='launching-the-event-server' class='header-anchors'>Launching the Event
Server</h2><div class="alert-message info"><p>Before launching the Event
Server, make sure that your event data store backend is properly configured and
is running. By default, Apache PredictionIO uses Apache HBase, and a quick
configuration can be found <a
href="/install/install-sourcecode/#hbase">here</a>. Plea
se allow a minute (usually less than 30 seconds) after HBase is started for
its initialization to complete before starting the Event
Server.</p></div><p>Everything about Apache PredictionIO can be done through
the <code>pio</code> command. Please add PIO binary command path to to your
<code>PATH</code> first. Assuming PredictionIO is installed at
<code>/home/yourname/PredictionIO/</code>, you can run</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><span class="nv">PATH</span><span
class="o">=</span><span
class="nv">$PATH</span>:/home/yourname/PredictionIO/bin; <span
class="nb">export </span>PATH
</pre></td></tr></tbody></table> </div> <p>To start the event server,
run</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
eventserver
</pre></td></tr></tbody></table> </div> <div class="alert-message info"><p>By
default, the Event Server is bound to 0.0.0.0, which serves global traffic. To
tighten security, you may use <code>pio eventserver --ip 127.0.0.1</code> to
serve only local traffic.</p></div><h3 id='check-server-status'
class='header-anchors'>Check Server Status</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
</pre></td></tr></tbody></table> </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
@@ -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-7641b557-4e45-474a-a1b1-6c16866220d1">Raw HTTP</a></li> <li
data-lang="php"><a href="#tab-64ca2847-f0b1-459a-b9ab-f79e0a72ebd8">PHP
SDK</a></li> <li data-lang="python"><a
href="#tab-fddd56e8-2626-44ed-8a2b-bbb9107a419d">Python SDK</a></li> <li
data-lang="ruby"><a href="#tab-592d380a-b394-4a27-a1e0-c1bd99fede6a">Ruby
SDK</a></li> <li data-lang="java"><a
href="#tab-66d8dff7-141d-4be6-90ac-8caff62d4ebe">Java SDK</a></li> </ul> <div
data-tab="Raw HTTP" data-lang="bash" id="tab-
7641b557-4e45-474a-a1b1-6c16866220d1"> <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-671835e7-4c1a-4b0b-a846-0a8576ade136">Raw HTTP</a></li> <li
data-lang="php"><a href="#tab-0c5c59af-165b-4ced-8525-7ecaa3d9366e">PHP
SDK</a></li> <li data-lang="python"><a
href="#tab-84cb293c-4b4c-4476-8aa7-85a1ac3c375d">Python SDK</a></li> <li
data-lang="ruby"><a href="#tab-4fd342bd-b592-421c-bdc6-360b6923a737">Ruby
SDK</a></li> <li data-lang="java"><a
href="#tab-79c2de7c-81b3-4d73-b0ae-afef167faa27">Java SDK</a></li> </ul> <div
data-tab="Raw HTTP" data-lang="bash" id="tab-
671835e7-4c1a-4b0b-a846-0a8576ade136"> <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-64ca2847-f0b1-459a-b9ab-f79e0a72ebd8"> <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-0c5c59af-165b-4ced-8525-7ecaa3d9366e"> <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">=></span> <span class="s1">'2004-12-13T21:39:45.618-07:00'</span>
<span class="p">));</span>
<span class="cp">?></span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Python SDK"
data-lang="python" id="tab-fddd56e8-2626-44ed-8a2b-bbb9107a419d"> <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-84cb293c-4b4c-4476-8aa7-85a1ac3c375d"> <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-592d380a-b394-4a27-a1e0-c1bd99fede6a"> <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-4fd342bd-b592-421c-bdc6-360b6923a737"> <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">=></span> <span class="kp">true</span><span
class="p">,</span>
<span class="s1">'prop5'</span>
<span class="o">=></span> <span class="sx">%w(a b c)</span><span
class="p">,</span>
<span class="s1">'prop6'</span>
<span class="o">=></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-66d8dff7-141d-4be6-90ac-8caff62d4ebe"> <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-62d1cea0-4aea-47c1-9b09-225228604c46">Raw
HTTP</a></li> <li data-lang="php"><a
href="#tab-ad25c20f-0920-4099-94cf-5c3dc766b8f9">PHP SDK</a></li> <li
data-lang="python"><a href="#tab-e058b02b-e5a4-49fc-ba09-1572b12d5634">Python
SDK</a></li> <li data-lang="ruby"><a
href="#tab-2ef97551-bd3f-480e-a92f-e3e35564575b">Ruby SDK</a></li> <li
data-lang="java"><a href="#tab-7b0e73c5-ada4-4db7-8a31-cd4e12d2c83e">Java
SDK</a></li> </ul> <div data-tab="Raw HTTP" data-lang="bash"
id="tab-62d1cea0-4aea-47c1-9b09-225228604c46"> <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-79c2de7c-81b3-4d73-b0ae-afef167faa27"> <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-3acdfbbe-fbfc-4e4c-8170-168e1b7c7e55">Raw
HTTP</a></li> <li data-lang="php"><a
href="#tab-1ad35663-252c-426e-8ddd-477a155a407d">PHP SDK</a></li> <li
data-lang="python"><a href="#tab-7b24000f-4638-4248-a3aa-9606018d7120">Python
SDK</a></li> <li data-lang="ruby"><a
href="#tab-b3396cb8-26ee-4cd2-a937-161d0874b42c">Ruby SDK</a></li> <li
data-lang="java"><a href="#tab-45912ae2-e171-4f34-beef-41d934a0b83e">Java
SDK</a></li> </ul> <div data-tab="Raw HTTP" data-lang="bash"
id="tab-3acdfbbe-fbfc-4e4c-8170-168e1b7c7e55"> <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-ad25c20f-0920-4099-94cf-5c3dc766b8f9"> <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-1ad35663-252c-426e-8ddd-477a155a407d"> <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">=></span> <span class="s1">'2004-12-13T21:39:45.618Z'</span>
<span class="p">));</span>
<span class="cp">?></span>
-</pre></td> </tr></tbody></table> </div> </div> <div data-tab="Python SDK"
data-lang="python" id="tab-e058b02b-e5a4-49fc-ba09-1572b12d5634"> <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-7b24000f-4638-4248-a3aa-9606018d7120"> <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-2ef97551-bd3f-480e-a92f-e3e35564575b"> <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-b3396cb8-26ee-4cd2-a937-161d0874b42c"> <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">=></span> <span class="s1">'2004-12-13T21:39:45.618Z'</span><span
class="p">,</span>
<span class="s1">'properties'</span> <span
class="o">=></span> <span class="p">{</span> <span
class="s1">'someProperty'</span> <span class="o">=></span> <span
class="s1">'value1'</span><span class="p">,</span>
<span
class="s1">'anotherProperty'</span> <span class="o">=></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-7b0e73c5-ada4-4db7-8a31-cd4e12d2c83e"> <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-45912ae2-e171-4f34-beef-41d934a0b83e"> <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
@@ -285,7 +285,7 @@ Content-Length: 41
</pre></td></tr></tbody></table> </div> <p>For example, get all events of an
app with <code>eventTime >= startTime</code> and <code>eventTime <
untilTime</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=<your_accessKey>&startTime=<time
in ISO8601 format>&untilTime=<time in ISO8601 format>"</span>
</pre></td></tr></tbody></table> </div> <p>For example, get all events of a
specific entity with <code>eventTime < untilTime</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=<your_accessKey>&entityType=<your_entityType>&entityId=<your_entityId>&untilTime=<time
in ISO801 format>"</span>
</pre></td></tr></tbody></table> </div> <h3 id='delete-all-events-of-an-app'
class='header-anchors'>Delete All Events of an App</h3><p>Please use the
following CLI command:</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 app data-delete <your_app_name>
-</pre></td></tr></tbody></table> </div> <div class="alert-message info"><p>See
<a href="/cli/#event-server-commands">here</a> to know details of command-line
interface for the event server.</p></div></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/incubator-predictionio"
target="blank">GitHub</a></li><li><a
href="mailto:[email protected]" 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.a
pache.org/community/contribute-code/" target="blank">Contribute</a></li><li><a
href="//github.com/apache/incubator-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:[email protected]" 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="social-icons-wrapper"><a class="github-button"
href="https://github.com/apache/incubator-predictionio" data-style="mega"
data-count-href="/apache/incubator-predictionio/stargazers"
data-count-api="/repos/apache/incubator-predictionio#stargazers_count"
data-count-aria-label="# stargazers on GitHub" aria-label="Star
apache/incubator-predictionio on GitHub">Star</a> <a class="github-button"
href="https://github.com/apache/incubator-predictionio/fork"
data-icon="octicon-git-branch" data-style="mega"
data-count-href="/apache/incubator-predictionio/network"
data-count-api="/repos/apache/incubator-predictionio#forks_count"
data-count-aria-label="# forks on GitHub" aria-label="Fork
apache/incubator-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(){
+</pre></td></tr></tbody></table> </div> <div class="alert-message info"><p>See
<a href="/cli/#event-server-commands">here</a> to know details of command-line
interface for the event server.</p></div></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:[email protected]" 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/contribute-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:[email protected]" 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="social-icons-wrapper"><a class="github-button"
href="https://github.com/apache/predictionio" data-style="mega"
data-count-href="/apache/predictionio/stargazers"
data-count-api="/repos/apache/predictionio#stargazers_count"
data-count-aria-label="# stargazers on GitHub" aria-label="Star
apache/predictionio on GitHub">Star</a> <a class="github-button"
href="https://github.com/apache/predictionio/fork"
data-icon="octicon-git-branch" data-style="mega"
data-count-href="/apache/predictionio/network"
data-count-api="/repos/apache/predictionio#forks_count"
data-count-aria-label="# forks on GitHub" 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" sr
c="/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);
e=d.getElementsByTagName(t)[0];s.async=1;s.src=u;e.parentNode.insertBefore(s,e);
})(window,document,'script','//s.swiftypecdn.com/install/v1/st.js','_st');