Some details info
[ouya-store-api.git] / api / devs.ouya.tv / api-v1-discover.rst
index f778bab40156a2f2c44a2ad3440e9c676324c290..214791c3d47217d47a1e848a411b8803a02d7002 100644 (file)
@@ -39,7 +39,7 @@ details.
 
 ``rows``
 --------
-Object with several properties:
+Array with objects that have with several properties:
 
 ``showPrice``
   ``true`` or ``false``
@@ -60,9 +60,32 @@ Object with several properties:
 
 ``tiles``
 ---------
-Describes a single application.
+Array of objects that each describe a single application.
+
 The position in the ``tiles`` array is the ID used by ``rows/tiles``.
 
+``bundle``
+  Only there when it's not a single game but a bundle of games that can be
+  bought.
+
+  Object with the following properties:
+
+  ``apps``
+    array
+
+    Array of ``package`` strings
+  ``currency``
+    ``EUR``
+  ``price``
+    float
+  ``contentRating``
+    See ``contentRating`` description below.
+  ``purchaseUrl``
+    string
+
+    URL where to initiate buying the bundle
+
+    ``ouya://launcher/purchase?developer=ec1a9ccd-373f-4047-bd07-36466ab7e25d&product=ROBOBUNDLE``
 ``contentRating``
   For which audiences the game is meant
 
@@ -82,13 +105,37 @@ The position in the ``tiles`` array is the ID used by ``rows/tiles``.
   Array of strings with genre titles.
 
   ``["Fight!", "Multiplayer", "Platformer"]``
+
+  Known genres:
+
+  - Adventure
+  - App
+  - Arcade/Pinball
+  - Card/Casino
+  - Dual Stick
+  - Entertainment
+  - Fight!
+  - FPS/Shooter
+  - Kids List
+  - Meditative
+  - Multiplayer
+  - Music
+  - Platformer
+  - Puzzle/Trivia
+  - Racing
+  - Retro
+  - Role-Playing
+  - Short on Time?
+  - Sim/Strategy
+  - Sports
+  - Utility
+  - Video
 ``image``
   URL to an image displayed in store view.
 
   Size should be 732x412.
 
-  ``png`` works.
-  FIXME: test ``jpg``
+  ``.jpg`` and ``.png`` files work.
 ``inAppPurchases``
   ``true`` or ``false``
 
@@ -102,7 +149,7 @@ The position in the ``tiles`` array is the ID used by ``rows/tiles``.
   ``versionNumber``
     string with current version, e.g. ``1.11``
   ``uuid``
-    ???
+    UUID of the release.
 ``package``
   string
 
@@ -110,11 +157,14 @@ The position in the ``tiles`` array is the ID used by ``rows/tiles``.
 ``premium``
   ``true`` or ``false``
 
-  FIXME: What is that for?
+  When ``true``, the game has no demo version and has to be bought before
+  it can be downloaded.
 ``promotedProduct``
   object
 
-  ??? FIXME: What is that for?
+  Bundles do not have this property set.
+
+  The "buy" button buys this product.
 
   ``currency``
     string
@@ -165,6 +215,8 @@ The position in the ``tiles`` array is the ID used by ``rows/tiles``.
   Name of the app/game
 ``type``
   ``app`` or ``discover`` or ``details_page``
+
+  Bundles always have ``details_page``.
 ``updated_at``
   integer
 
@@ -176,10 +228,20 @@ The position in the ``tiles`` array is the ID used by ``rows/tiles``.
 ``url``
   string
 
-  ``ouya://launcher/details?app=evil.corptron.DuckGame``
-
   URL for the game details page
 
+  Game details
+    ``ouya://launcher/details?app=evil.corptron.DuckGame``
+  Bundle details
+    ``ouya://launcher/details?page=be239ca4-10fd-42dd-89cd-1806e80b1362``
+
+    See `GET https://devs.ouya.tv/api/v1/details`_.
+
+``title``
+---------
+string
+
+Always ``DISCOVER``.
 
 
 Example
@@ -187,3 +249,7 @@ Example
 
 .. include:: api-v1-discover.response.json
    :code:
+
+The API git repository contains a full copy of the "discover" response
+at ``api/devs.ouya.tv/api-v1-discover.response-full.json``.
+