diff --git a/PLATFORM_IDs.md b/PLATFORM_IDs.md
new file mode 100644
index 0000000..c58dbc4
--- /dev/null
+++ b/PLATFORM_IDs.md
@@ -0,0 +1,82 @@
+### PLATFORM ID LIST
+
+Platform ID list for GOG Galaxy 2.0 Integrations
+
+| ID | Name |
+| --- | --- |
+| steam | Steam |
+| psn | PlayStation Network |
+| xboxone | Xbox Live |
+| generic | Manually added games |
+| origin | Origin |
+| uplay | Uplay |
+| battlenet | Battle.net |
+| epic | Epic Games Store |
+| bethesda | Bethesda.net |
+| paradox | Paradox Plaza |
+| humble | Humble Bundle |
+| kartridge | Kartridge |
+| itch | Itch.io |
+| nswitch | Nintendo Switch |
+| nwiiu | Nintendo Wii U |
+| nwii | Nintendo Wii |
+| ncube | Nintendo Game Cube |
+| riot | Riot |
+| wargaming | Wargaming |
+| ngameboy | Nintendo Game Boy |
+| atari | Atari |
+| amiga | Amiga |
+| snes | SNES |
+| beamdog | Beamdog |
+| d2d | Direct2Drive |
+| discord | Discord |
+| dotemu | DotEmu |
+| gamehouse | GameHouse |
+| gmg | Green Man Gaming |
+| weplay | WePlay |
+| zx | Zx Spectrum PC |
+| vision | ColecoVision |
+| nes | NES |
+| sms | Sega Master System |
+| c64 | Commodore 64 |
+| pce | PC Engine |
+| segag | Sega Genesis |
+| neo | NeoGeo |
+| sega32 | Sega 32X |
+| segacd | Sega CD |
+| 3do | 3DO Interactive |
+| saturn | SegaSaturn |
+| psx | Sony PlayStation |
+| ps2 | Sony PlayStation 2 |
+| n64 | Nintendo64 |
+| jaguar | Atari Jaguar |
+| dc | Sega Dreamcast |
+| xboxog | Original Xbox games |
+| amazon | Amazon |
+| gg | GamersGate |
+| egg | Newegg |
+| bb | BestBuy |
+| gameuk | Game UK |
+| fanatical | Fanatical store |
+| playasia | PlayAsia |
+| stadia | Google Stadia |
+| arc | ARC |
+| eso | ESO |
+| glyph | Trion World |
+| aionl | Aion: Legions of War |
+| aion | Aion |
+| blade | Blade and Soul |
+| gw | Guild Wars |
+| gw2 | Guild Wars 2 |
+| lin2 | Lineage 2 |
+| ffxi | Final Fantasy XI |
+| ffxiv | Final Fantasy XIV |
+| totalwar | TotalWar |
+| winstore | Windows Store |
+| elites | Elite Dangerous |
+| star | Star Citizen |
+| psp | Playstation Portable |
+| psvita | Playstation Vita |
+| nds | Nintendo DS |
+| 3ds | Nintendo 3DS |
+
diff --git a/README.md b/README.md
index fcd0775..4330b1f 100644
--- a/README.md
+++ b/README.md
@@ -20,6 +20,12 @@ The provided features are:
- receiving and sending chat messages
- cache storage
+## Platform Id's
+
+Each integration can implement only one platform. Each integration must declare which platform it's integrating.
+
+[List of possible Platofrm IDs](PLATFORM_IDs.md)
+
## Basic usage
Eeach integration should inherit from the :class:`~galaxy.api.plugin.Plugin` class. Supported methods like :meth:`~galaxy.api.plugin.Plugin.get_owned_games` should be overwritten - they are called from the GOG Galaxy client in the appropriate times.
@@ -58,7 +64,8 @@ if __name__ == "__main__":
The client has a built-in Python 3.7 interpreter, so the integrations are delivered as python modules.
In order to be found by GOG Galaxy 2.0 an integration folder should be placed in [lookup directory](#deploy-location). Beside all the python files, the integration folder has to contain [manifest.json](#deploy-manifest) and all third-party dependencies. See an [examplary structure](#deploy-structure-example).
-### Lookup directory:
+### Lookup directory
+
- Windows:
`%localappdata%\GOG.com\Galaxy\plugins\installed`
@@ -67,7 +74,8 @@ In order to be found by GOG Galaxy 2.0 an integration folder should be placed in
`~/Library/Application Support/GOG.com/Galaxy/plugins/installed`
-### Manifest
+### Manifest
+
Obligatory JSON file to be placed in a integration folder.
```json
diff --git a/docs/source/index.rst b/docs/source/index.rst
index 05f97f7..4455599 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -7,6 +7,7 @@ GOG Galaxy Integrations Python API
Overview
API
+ Platform ID's
Index
-------------------
diff --git a/docs/source/overview.rst b/docs/source/overview.rst
index cb8accb..ea506a8 100644
--- a/docs/source/overview.rst
+++ b/docs/source/overview.rst
@@ -5,3 +5,11 @@
.. mdinclude:: ../../README.md
:start-line: 6
+ :end-line: 26
+
+.. excluding Platforms Id's link
+
+:ref:`platforms-link`.
+
+.. mdinclude:: ../../README.md
+ :start-line: 28
diff --git a/setup.py b/setup.py
index f75584e..6416391 100644
--- a/setup.py
+++ b/setup.py
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
setup(
name="galaxy.plugin.api",
- version="0.34",
+ version="0.35.1",
description="GOG Galaxy Integrations Python API",
author='Galaxy team',
author_email='galaxy@gog.com',
diff --git a/src/galaxy/api/plugin.py b/src/galaxy/api/plugin.py
index 0b7f2a2..b876c57 100644
--- a/src/galaxy/api/plugin.py
+++ b/src/galaxy/api/plugin.py
@@ -57,7 +57,12 @@ class Plugin:
# internal
self._register_method("shutdown", self._shutdown, internal=True)
self._register_method("get_capabilities", self._get_capabilities, internal=True)
- self._register_method("initialize_cache", self._initialize_cache, internal=True)
+ self._register_method(
+ "initialize_cache",
+ self._initialize_cache,
+ internal=True,
+ sensitive_params="data"
+ )
self._register_method("ping", self._ping, internal=True)
# implemented by developer
@@ -466,7 +471,8 @@ class Plugin:
"""
self._notification_client.notify(
"push_cache",
- params={"data": self._persistent_cache}
+ params={"data": self._persistent_cache},
+ sensitive_params="data"
)
# handlers