> For the complete documentation index, see [llms.txt](https://addgame.gameswift.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://addgame.gameswift.io/dodawanie-danych-gry-przez-api-platformy-platforma.md).

# Dodawanie danych Gry przez API Platformy (Platforma)

## Wymagania

1. Konto Admina (dane w 1pass)
2. Redirect URI - do ustalenia po czyjej stronie&#x20;
3. Acces Token

<mark style="color:red;">**Uwaga!! jeśli mamy Cliend ID i redirect URI przechodzimy do pkt 4.**</mark>

## Uzyskanie dostępu do zarządzania API Platformy

Aby mieć dostęp do [`API Platformy`](https://platform.gameswift.io/swagger#/) musimy zalogować się kontem `Admina` na [`API ID`](https://id.gameswift.io/swagger/#/default/AuthController_login) i uzyskać `token dostępu`, dzięki któremu będziemy w stanie zarządzać Platformą.

1. Pierwszym krokiem będzie stworzenie ID Clienta, w tym celu wpisujemy odpowiedni `redirect_uri`dla naszego klienta. <https://id.gameswift.io/swagger/#/oauth/OauthController_postClient>

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FltPMKw7EcMcQViS8TNCw%2F3.png?alt=media&amp;token=f9151291-8670-48dd-9230-dbcc6684fd3c" alt=""><figcaption></figcaption></figure>

2\. W `Response Body` poniżej dostajemy `ID Clienta i Secret.`<mark style="color:red;">(zapisujemy np. do \*.txt)</mark>

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FSJabhYAcQKB1c3989ngR%2F4.png?alt=media&amp;token=20c386b3-b916-4c32-b65b-4be4c2a89bea" alt=""><figcaption></figcaption></figure>

3\. Teraz mając te dane możemy zautoryzować `Clienta`, ale zanim to zrobimy musimy się zalogować naszym kontem Administracyjnym.

4\. Logujemy się na `API Gameswift ID.` <https://id.gameswift.io/swagger/#/default/AuthController_login>

wpisujemy nickname i hasło i klikamy `Execute` (dane pobieramy z 1 password)&#x20;

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2Fo8oVMkbxZZIQFKGnE0j6%2F1.png?alt=media&amp;token=3f7a19d1-50cb-4cda-af23-3741a02c9aba" alt=""><figcaption></figcaption></figure>

5\. Następnie kopiujemy wygenerowany `Access Token` z pola `Response Body.`

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FaSJy64ree21EmPk01Exb%2F2.png?alt=media&amp;token=9c44d62e-189d-42a0-9092-875410e96c1b" alt=""><figcaption></figcaption></figure>

6\. W następnym kroku używamy `Acces Tokena` pobranego po zalogowaniu się kontem admina oraz `ID Clienta i Redirect Uri.` <mark style="color:red;">(zapisujemy np. do \*.txt)</mark>

7\. Wchodzimy w Endpoint <https://id.gameswift.io/swagger/#/oauth/OauthController_getAuthorize>, w miejscu kłódki wklejamy nasz `Acces Token` i wypełniamy poniższe pola. <mark style="color:red;">**UWAGA!!!**</mark> `Access Token` ma ważność ok 120 sekund, jeśli nie zdążymy wykonać tej akcji musimy ponownie wrócić do kroku logowania sie kontem `Admina`.

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FBxtq9VCfr0TeIC6FLjq7%2F5.png?alt=media&amp;token=b1980454-92ab-4aec-bc1c-75a366783c91" alt=""><figcaption></figcaption></figure>

7\. W `Response Body` dostaniemy `code.`<mark style="color:red;">(zapisujemy np. do \*.txt)</mark>

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2Fgc5mYfM4g89D6PjbWzYi%2F7.png?alt=media&amp;token=80776f4a-9acf-4f52-9474-a10d30381ad3" alt=""><figcaption></figcaption></figure>

8\. I w końcu ostatnia operacja dzięki której uzyskujemy już `Access Token` do Platformy <https://id.gameswift.io/swagger/#/oauth/OauthController_postToken>, w tym miejscu wpisujemy wszystkie dotychczasowo zapisane dane.

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2F3BgbxblTDSkkOZLzlynP%2F6.png?alt=media&amp;token=6a199df5-c7ef-4d17-9180-2c0d207515bb" alt=""><figcaption></figcaption></figure>

9\. W odpowiedzi w `Response Body` dostajemy `Access Token`.

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FeDbpguzDye4VXnHYvjXE%2F8.png?alt=media&amp;token=835ff9e1-33f3-4778-ba01-661b54c51e4d" alt=""><figcaption></figcaption></figure>

## Obsługa API Platformy - dodawanie danych do Gry

1. Teraz mamy już  dostęp do `API Platformy` <https://platform.gameswift.io/swagger#/> kilkamy na `Authorize` i wklejamy nasz `Access token` z poprzedniego kroku.&#x20;

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FQVv7lSvpwvHxvsDVuBIA%2F9.png?alt=media&amp;token=856bc41c-40da-40db-a4d6-419f215ffbb1" alt=""><figcaption></figcaption></figure>

![](https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FZcZmtXKW3UzC4j5W0OPb%2Fimage.png?alt=media\&token=7ca2cbfe-1c6c-47f0-b726-f1eb20436a5a)

2\. Zanim dodamy grę potrzebujemy wszystkich danych ze strony ([tu strona z formularzami](https://docs.google.com/forms/d/1GSK_xhIV-7Gueq6YgnEs9zm50A3VNr6xhmE96VjU5MU/edit#response=ACYDBNhdIxuQSoXIIy_dJNQqJk8Ckx38stU2fY50rLfB4Sc3YxHqwHKM67-7GA2Lyu6YSmM)), potrzebujemy też dodać Platformę (`Platform`) ( <mark style="color:red;">jesli nie jest juz dodana</mark> ) <https://platform.gameswift.io/swagger#/admin/AdminPlatformController_create>  na jakiej jest gra i Gatunek (`Genre`) (<mark style="color:red;">jeśli nie był wcześniej dodany</mark>) gry <https://platform.gameswift.io/swagger#/admin/AdminGenreController_create>

Dodajemy Platformę na jakiej działają Gry (Windows, MacOs itp...)

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FM3gBqdru7elNjSKjHg1e%2F10.png?alt=media&amp;token=a2c7fcf1-4a46-4026-a5f3-1eae2f916d55" alt=""><figcaption></figcaption></figure>

W Response Body dostaniemy `ID Platformy.`

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FMr5JYOY3exC3YwVXqr56%2F11.PNG?alt=media&amp;token=e0f2294e-96f3-4242-b06f-c991310875e6" alt=""><figcaption></figcaption></figure>

A po wpisaniu `Genre.` Czyli gatunku gry.

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FDhgtoUox2DUO8MxYoyHF%2F12.png?alt=media&amp;token=878ef121-043d-4e2e-abfc-add2a3e81408" alt=""><figcaption></figcaption></figure>

Dostaniemy `ID Genre`

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2Fb7BNQ6jFTimXjhSsLlvs%2F13.PNG?alt=media&amp;token=69f4a170-77c8-4fe8-99ca-618b35fd1d93" alt=""><figcaption></figcaption></figure>

3\. Teraz możemy przejść do <https://platform.gameswift.io/swagger#/admin/AdminGameController_create> i wpisać wszystkie dane gry która nas interesuje.

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FEGyn62dkNYx8GW12G4z9%2F14.png?alt=media&amp;token=efd8ddfa-c9b0-4133-a143-c03611a2a833" alt=""><figcaption></figcaption></figure>

4\. `Response Body` pokaże nam utworzoną gre.

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2FAPSaX3zJFJK9Wkk580gF%2F15.PNG?alt=media&amp;token=2ec2098d-2f8f-4ce1-9ac3-7f63dbd20530" alt=""><figcaption></figcaption></figure>

5\. W celu wprowadzenia zmian / modyfikacji niektórych danych gry uzywamy `Endpointa` <https://platform.gameswift.io/swagger#/admin/AdminGameController_update> i zmieniamy tylko te dane które nas interesują. do zmian potrzebujemy `ID Gry`

<figure><img src="https://2015612490-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ5JmocaGzvVEBUeoeB9f%2Fuploads%2F2P0Bfc6G6ZnMaYb7o9GW%2Fimage.png?alt=media&amp;token=a740ba0d-1a7c-4cdb-93a3-a75d5a7e5cd1" alt=""><figcaption></figcaption></figure>
