-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Auto-updated by master commit to modio-restapi
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
- Loading branch information
1 parent
fae77a3
commit e79a5e5
Showing
1 changed file
with
104 additions
and
77 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -25,7 +25,7 @@ Welcome to the official documentation for [mod.io](https://mod.io), an API for d | |
|
||
__API path:__ [https://*.modapi.io/v1](https://*.modapi.io/v1) (see your API access dashboard) | ||
|
||
__Swagger JSON:__ [--parse apiswaggerurl ](--parse_apiswaggerurl) | ||
__Swagger JSON:__ [https://api.mod.io/v1/swagger](https://api.mod.io/v1/swagger) | ||
|
||
__Current version:__ <select id="version_dropdown" onChange="changeVersion"><option value="" data-latest="true">v1 (latest)</option></select> | ||
|
||
|
@@ -1125,11 +1125,12 @@ System.out.println(response.toString()); | |
|
||
`POST /external/steamauth` | ||
|
||
Request an access token on behalf of a Steam user. To use this functionality you *must* add your games [encrypted app ticket key](https://partner.steamgames.com/apps/sdkauth) from Steamworks, to the *Game Admin > Settings* page of your games profile on mod.io. A Successful request will return an [Access Token Object](#access-token-object). | ||
Request an access token on behalf of a Steam user. To use this functionality you *must* add your games [encrypted app ticket key](https://partner.steamgames.com/apps/sdkauth) from Steamworks, to the [*Game Admin > Settings*](/platforms/steam/authentication/) page of your games profile on mod.io. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
__HINT:__ If you want to overlay the mod.io site in-game on Steam, we recommend you add `?portal=steam` to the end of the URL you open which will prompt the user to login with Steam. See [Web Overlay Authentication](#web-overlay-authentication) for details. | ||
__NOTE__: Steam is the only authentication endpoint that requires their token to be base64 encoded. All other endpoints tokens should be provided as a UTF-8 character string. | ||
|
||
__HINT:__ If you want to overlay the mod.io site in-game on Steam, we recommend you add `?portal=steam` to the end of the URL you open which will prompt the user to login with Steam. See [Web Overlay Authentication](#web-overlay-authentication) for details. | ||
|
||
Parameter|Type|Required|Description | ||
---|---|---|---| | ||
appdata|base64-encoded string|true|The Steam users [Encrypted App Ticket](https://partner.steamgames.com/doc/features/auth#encryptedapptickets) provided by the Steamworks SDK. <br><br>Parameter content *MUST* be the [*uint8 *rgubTicketEncrypted*](https://partner.steamgames.com/doc/api/SteamEncryptedAppTicket) returned after calling [ISteamUser::GetEncryptedAppTicket()](https://partner.steamgames.com/doc/api/ISteamUser#GetEncryptedAppTicket) within the Steamworks SDK, converted into a base64-encoded string.<br><br>__NOTE:__ Due to a base64-encoded string containing special characters, you must URL encode the string after it has been base64-encoded to ensure it is successfully sent to our servers otherwise you may encounter an `422 Unprocessable Entity` response. For example, [cURL](https://ec.haxx.se/http-post.html) will do this for you by using the `--data-urlencode` option. | ||
|
@@ -1259,9 +1260,7 @@ System.out.println(response.toString()); | |
|
||
`POST /external/xboxauth` | ||
|
||
Request an access token on behalf of an Xbox Live user. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
__NOTE__: To use this endpoint you will need to setup some additional settings prior to being able to authenticate Xbox Live users. For these instructions please [contact us](mailto:[email protected]?subject=Xbox Live SSO Request). | ||
Request an access token on behalf of an Xbox Live user. To use this endpoint you will need to setup some additional settings prior to being able to authenticate Xbox Live users. [Head here](/platforms/gdk/#authentication) for these instructions. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
__HINT:__ If you want to overlay the mod.io site in-game on Xbox, we recommend you add `?portal=xboxlive` to the end of the URL you open which will prompt the user to login with Xbox Live. See [Web Overlay Authentication](#web-overlay-authentication) for details. | ||
|
||
|
@@ -1395,9 +1394,7 @@ System.out.println(response.toString()); | |
|
||
`POST /external/psnauth` | ||
|
||
Request an access token on behalf of a PlayStation Network (PSN) user. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
__NOTE__: To use this endpoint you will need to setup some additional settings prior to being able to authenticate PlayStation users. For these instructions please [contact us](mailto:[email protected]?subject=PlayStation Network SSO Request). | ||
Request an access token on behalf of a PlayStation Network (PSN) user. To use this endpoint you will need to setup some additional settings prior to being able to authenticate PlayStation users. [Head here](/platforms/playstation/#authentication) for these instructions. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
__HINT:__ If you want to overlay the mod.io site in-game on PlayStation, we recommend you add `?portal=psn` to the end of the URL you open which will prompt the user to login with PlayStation Network. See [Web Overlay Authentication](#web-overlay-authentication) for details. | ||
|
||
|
@@ -1526,9 +1523,7 @@ System.out.println(response.toString()); | |
|
||
`POST /external/switchauth` | ||
|
||
Request an access token on behalf of a Nintendo Switch user. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
__NOTE__: To use this endpoint you will need to setup some additional settings prior to being able to authenticate Nintendo Switch users. For these instructions please [contact us](mailto:[email protected]?subject=Nintendo Switch SSO Request). | ||
Request an access token on behalf of a Nintendo Switch user. To use this endpoint you will need to setup some additional settings prior to being able to authenticate Nintendo Switch users. [Head here](/platforms/switch/#authentication) for these instructions. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
Parameter|Type|Required|Description | ||
---|---|---|---| | ||
|
@@ -1797,7 +1792,7 @@ System.out.println(response.toString()); | |
|
||
`POST /external/epicgamesauth` | ||
|
||
Request an access token on behalf of an Epic Games user. A Successful request will return an [Access Token Object](#access-token-object). | ||
Request an access token on behalf of an Epic Games user. Additional instructions for configuing your Epic Account Services Application to use this endpoint can be [found here](/platforms/epic/authentication/). A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
Parameter|Type|Required|Description | ||
---|---|---|---| | ||
|
@@ -1925,7 +1920,7 @@ System.out.println(response.toString()); | |
|
||
`POST /external/galaxyauth` | ||
|
||
Request an access token on behalf of a GOG Galaxy user. To use this functionality you *must* add your games [encrypted app ticket key](https://docs.gog.com/sdk-encrypted-tickets/) from GOG Galaxy, to the *Game Admin > Settings* page of your games profile on mod.io. A Successful request will return an [Access Token Object](#access-token-object). | ||
Request an access token on behalf of a GOG Galaxy user. To use this functionality you *must* add your games [encrypted app ticket key](https://docs.gog.com/sdk-encrypted-tickets/) from GOG Galaxy, to the [*Game Admin > Settings*](/platforms/gog/authentication/) page of your games profile on mod.io. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
Parameter|Type|Required|Description | ||
---|---|---|---| | ||
|
@@ -2055,7 +2050,7 @@ System.out.println(response.toString()); | |
|
||
`POST /external/appleauth` | ||
|
||
Request an access token on behalf of a 'Sign in with Apple' user. A Successful request will return an [Access Token Object](#access-token-object). | ||
Request an access token on behalf of a 'Sign in with Apple' user. To use this functionality you *must* add your games Bundle ID from Apple, to the [*Game Admin > Settings*](/platforms/apple/authentication/) page of your games profile on mod.io. A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
Parameter|Type|Required|Description | ||
---|---|---|---| | ||
|
@@ -2186,10 +2181,8 @@ System.out.println(response.toString()); | |
|
||
`POST /external/googleauth` | ||
|
||
Request an access token on behalf of a Google user. A Successful request will return an [Access Token Object](#access-token-object). | ||
Request an access token on behalf of a Google user. To use this functionality you *must* add your games Client ID, Secret and Redirect URI from Google, to the [*Game Admin > Settings*](/platforms/google/authentication/) page of your games profile on mod.io. A Successful request will return an [Access Token Object](#access-token-object). | ||
* | ||
__NOTE__: To use this endpoint you will need to setup some additional settings prior to being able to authenticate Google users. For these instructions please [contact us](mailto:[email protected]?subject=Google SSO Request). | ||
|
||
__HINT:__ If you want to overlay the mod.io site in-game on Android, we recommend you add `?portal=google` to the end of the URL you open which will prompt the user to login with Google. See [Web Overlay Authentication](#web-overlay-authentication) for details. | ||
|
||
Parameter|Type|Required|Description | ||
|
@@ -2450,10 +2443,12 @@ System.out.println(response.toString()); | |
|
||
`POST /external/openidauth` | ||
|
||
Request an access token on behalf of an OpenID identity provider. To use this method of authentication, you must configure the OpenID config in your game's authentication admin page. A Successful request will return an [Access Token Object](#access-token-object). | ||
Request an access token on behalf of an OpenID identity provider. To use this method of authentication, you must configure the OpenID config in your [game's authentication admin page](/web-services/authentication/openid/). A Successful request will return an [Access Token Object](#access-token-object). | ||
|
||
__NOTE:__ The ability to authenticate players using your identity provider is a premium feature. If you are interested in accessing premium features via your games dashboard, please [contact us](mailto:[email protected]?subject=OpenID SSO Request). | ||
|
||
__HINT:__ If you want to overlay the mod.io site in-game, we recommend you add `?portal=studio` to the end of the URL you open which will prompt the user to login with your auth provider if they are on your games page. See [Web Overlay Authentication](#web-overlay-authentication) for details. | ||
|
||
Parameter|Type|Required|Description | ||
---|---|---|---| | ||
id_token|string|true|The ID token issued by the configured identity provider. | ||
|
@@ -3458,6 +3453,7 @@ Get all guides for a game. Successful request will return an array of [Guide Obj | |
"name_id": "getting-started", | ||
"summary": "Alright, so let's get started with modding on mod.io", | ||
"description": "<h1>Getting Started</h2><p>Download this suspiciou....", | ||
"community_options": 2048, | ||
"tags": [ | ||
{ | ||
"name": "Instructions", | ||
|
@@ -3623,6 +3619,7 @@ Get a guide. Successful request will return a single [Guide Object](#guide-objec | |
"name_id": "getting-started", | ||
"summary": "Alright, so let's get started with modding on mod.io", | ||
"description": "<h1>Getting Started</h2><p>Download this suspiciou....", | ||
"community_options": 2048, | ||
"tags": [ | ||
{ | ||
"name": "Instructions", | ||
|
@@ -3660,11 +3657,15 @@ curl -X POST https://*.modapi.io/v1/games/{game-id}/guides \ | |
-H 'Content-Type: multipart/form-data' \ | ||
-H 'Content-Type: multipart/form-data' \ | ||
-H 'Accept: application/json' \ | ||
-F 'name=Modding Guide for Rogue Knight' \ | ||
-F 'summary=Short descriptive summary here' \ | ||
-F 'description=<h2>Getting started with..' \ | ||
-F 'logo=@/path/to/image.jpg' \ | ||
-F 'date_live=1626667557' | ||
-d 'name=Modding Guide for Rogue Knight' \ | ||
-d 'summary=Short descriptive summary here' \ | ||
-d 'description=<h2>Getting started with..' \ | ||
-d 'logo=undefined' \ | ||
-d 'date_live=1626667557' \ | ||
-d 'status=undefined' \ | ||
-d 'community_options=undefined' \ | ||
-d 'tags[]=undefined' \ | ||
-d 'name_id=undefined' | ||
|
||
``` | ||
|
||
|
@@ -3704,8 +3705,14 @@ const inputBody = '{ | |
"name": "Modding Guide for Rogue Knight", | ||
"summary": "Short descriptive summary here", | ||
"description": "<h2>Getting started with..", | ||
"logo": "@/path/to/image.jpg", | ||
"date_live": 1626667557 | ||
"logo": "string", | ||
"date_live": 1626667557, | ||
"status": 0, | ||
"community_options": 0, | ||
"tags": [ | ||
"string" | ||
], | ||
"name_id": "string" | ||
}'; | ||
const headers = { | ||
'Authorization':'Bearer {access-token}', | ||
|
@@ -3815,6 +3822,7 @@ Add a guide for a game. Successful request will return a single [Guide Object](# | |
"name_id": "getting-started", | ||
"summary": "Alright, so let's get started with modding on mod.io", | ||
"description": "<h1>Getting Started</h2><p>Download this suspiciou....", | ||
"community_options": 2048, | ||
"tags": [ | ||
{ | ||
"name": "Instructions", | ||
|
@@ -4009,6 +4017,7 @@ Update an existing guide. Successful request will return the updated [Guide Obje | |
"name_id": "getting-started", | ||
"summary": "Alright, so let's get started with modding on mod.io", | ||
"description": "<h1>Getting Started</h2><p>Download this suspiciou....", | ||
"community_options": 2048, | ||
"tags": [ | ||
{ | ||
"name": "Instructions", | ||
|
@@ -13102,15 +13111,15 @@ System.out.println(response.toString()); | |
`GET /me/events` | ||
|
||
__Deprecated__: This endpoint is deprecated for in-game use and will be removed at a later date. As of March 31st 2024, events will only be returned for existing games for legacy reasons. Any new game should use the [Get User Subscriptions](#get-user-subscriptions) endpoint to fetch the latest mods subscribed to by the authenticated user as this endpoint will no longer return events for games created after that date. If you have any concerns please [reach out to us](https://support.mod.io).<br><br> Get events that have been fired specific to the user. Successful request will return an array of [Event Objects](#get-user-events-2). We recommended reading the [filtering documentation](#filtering) to return only the records you want. | ||
* | ||
* Filter|Type|Description | ||
* ---|---|--- | ||
* id|integer|Unique id of the event object. | ||
* game_id|integer|Unique id of the parent game. | ||
* mod_id|integer|Unique id of the parent mod. | ||
* user_id|integer|Unique id of the user who performed the action. | ||
* date_added|integer|Unix timestamp of date mod was updated. | ||
* event_type|string|Type of change that occurred:<br><br>__USER_TEAM_JOIN__ = User has joined a team.<br>__USER_TEAM_LEAVE__ = User has left a team.<br>__USER_SUBSCRIBE__ = User has subscribed to a mod.<br>__USER_UNSUBSCRIBE__ = User has un-subscribed from a mod. | ||
|
||
Filter|Type|Description | ||
---|---|--- | ||
id|integer|Unique id of the event object. | ||
game_id|integer|Unique id of the parent game. | ||
mod_id|integer|Unique id of the parent mod. | ||
user_id|integer|Unique id of the user who performed the action. | ||
date_added|integer|Unix timestamp of date mod was updated. | ||
event_type|string|Type of change that occurred:<br><br>__USER_TEAM_JOIN__ = User has joined a team.<br>__USER_TEAM_LEAVE__ = User has left a team.<br>__USER_SUBSCRIBE__ = User has subscribed to a mod.<br>__USER_UNSUBSCRIBE__ = User has un-subscribed from a mod. | ||
|
||
> Example response | ||
|
||
|
@@ -15827,13 +15836,16 @@ Create a service-to-service (S2S) transaction intent. This is for performing an | |
|
||
```json | ||
{ | ||
"transaction_id": 0, | ||
"gross_amount": 0, | ||
"net_amount": 0, | ||
"platform_fee": 0, | ||
"gateway_fee": 0, | ||
"transaction_type": "string", | ||
"meta": {}, | ||
"transaction_id": 123456789, | ||
"gross_amount": 1000, | ||
"net_amount": 900, | ||
"platform_fee": 50, | ||
"gateway_fee": 30, | ||
"transaction_type": "PAID", | ||
"meta": { | ||
"order_id": "A123456", | ||
"customer_id": "C7890" | ||
}, | ||
"purchase_date": 1626667557 | ||
} | ||
|
||
|
@@ -15970,13 +15982,16 @@ Create a service-to-service (S2S) transaction commit. This is for performing an | |
|
||
```json | ||
{ | ||
"transaction_id": 0, | ||
"gross_amount": 0, | ||
"net_amount": 0, | ||
"platform_fee": 0, | ||
"gateway_fee": 0, | ||
"transaction_type": "string", | ||
"meta": {}, | ||
"transaction_id": 123456789, | ||
"gross_amount": 1000, | ||
"net_amount": 900, | ||
"platform_fee": 50, | ||
"gateway_fee": 30, | ||
"transaction_type": "PAID", | ||
"meta": { | ||
"order_id": "A123456", | ||
"customer_id": "C7890" | ||
}, | ||
"purchase_date": 1626667557 | ||
} | ||
|
||
|
@@ -16117,16 +16132,19 @@ Create a service-to-service (S2S) transaction clawback. This is for unwinding a | |
|
||
```json | ||
{ | ||
"transaction_id": 0, | ||
"gross_amount": 0, | ||
"net_amount": 0, | ||
"platform_fee": 0, | ||
"gateway_fee": 0, | ||
"tax": 0, | ||
"tax_type": "string", | ||
"transaction_type": "string", | ||
"meta": {}, | ||
"purchase_date": null | ||
"transaction_id": 987654321, | ||
"gross_amount": 2500, | ||
"net_amount": 2300, | ||
"platform_fee": 100, | ||
"gateway_fee": 50, | ||
"tax": 150, | ||
"tax_type": "GST", | ||
"transaction_type": "REFUNDED", | ||
"meta": { | ||
"order_id": "A123456", | ||
"customer_id": "C7890" | ||
}, | ||
"purchase_date": 1626667557 | ||
} | ||
|
||
``` | ||
|
@@ -17459,6 +17477,7 @@ result_total|integer|Total number of results found. | |
"name_id": "getting-started", | ||
"summary": "Alright, so let's get started with modding on mod.io", | ||
"description": "<h1>Getting Started</h2><p>Download this suspiciou....", | ||
"community_options": 2048, | ||
"tags": [ | ||
{ | ||
"name": "Instructions", | ||
|
@@ -18282,6 +18301,7 @@ result_total|integer|Total number of results found. | |
"name_id": "getting-started", | ||
"summary": "Alright, so let's get started with modding on mod.io", | ||
"description": "<h1>Getting Started</h2><p>Download this suspiciou....", | ||
"community_options": 2048, | ||
"tags": [ | ||
{ | ||
"name": "Instructions", | ||
|
@@ -18317,6 +18337,7 @@ name|string|The name of the guide | |
name_id|string|Path for the guide on mod.io. For example: https://mod.io/g/rogue-knight/r/__getting-started__ | ||
summary|string|The summary of the guide | ||
description|string|Detailed description of the guide (the contents) which allows HTML. | ||
community_options|integer|The bitwise community options that are applied to this guide, can be one of:<br><br>__0__ = Disabled<br>__2048__ = Allows Comments _(default) | ||
tags|[Guide Tag Object](#schemaguide_tag_object)[]|Contains guide tag data. | ||
stats|[Guide Stats Object](#schemaguide_stats_object)[]|Contains stats data. | ||
|
||
|
@@ -19374,16 +19395,19 @@ date_added|integer|Unix timestamp of date rating was submitted. | |
|
||
```json | ||
{ | ||
"transaction_id": 0, | ||
"gross_amount": 0, | ||
"net_amount": 0, | ||
"platform_fee": 0, | ||
"gateway_fee": 0, | ||
"tax": 0, | ||
"tax_type": "string", | ||
"transaction_type": "string", | ||
"meta": {}, | ||
"purchase_date": null | ||
"transaction_id": 987654321, | ||
"gross_amount": 2500, | ||
"net_amount": 2300, | ||
"platform_fee": 100, | ||
"gateway_fee": 50, | ||
"tax": 150, | ||
"tax_type": "GST", | ||
"transaction_type": "REFUNDED", | ||
"meta": { | ||
"order_id": "A123456", | ||
"customer_id": "C7890" | ||
}, | ||
"purchase_date": 1626667557 | ||
} | ||
``` | ||
|
||
|
@@ -19400,7 +19424,7 @@ tax|integer|The tax amount of the purchase in cents. | |
tax_type|string|The tax type. | ||
transaction_type|string|The state of the transaction that was processed. E.g. CANCELLED, CLEARED, FAILED, PAID, PENDING, REFUNDED. | ||
meta|object|The metadata that was given in the transaction. | ||
purchase_date|timestamp|The time of the purchase. | ||
purchase_date|integer|The time of the purchase. | ||
|
||
|
||
|
||
|
@@ -19410,13 +19434,16 @@ purchase_date|timestamp|The time of the purchase. | |
|
||
```json | ||
{ | ||
"transaction_id": 0, | ||
"gross_amount": 0, | ||
"net_amount": 0, | ||
"platform_fee": 0, | ||
"gateway_fee": 0, | ||
"transaction_type": "string", | ||
"meta": {}, | ||
"transaction_id": 123456789, | ||
"gross_amount": 1000, | ||
"net_amount": 900, | ||
"platform_fee": 50, | ||
"gateway_fee": 30, | ||
"transaction_type": "PAID", | ||
"meta": { | ||
"order_id": "A123456", | ||
"customer_id": "C7890" | ||
}, | ||
"purchase_date": 1626667557 | ||
} | ||
``` | ||
|