Getting Started
An introduction to CurseForge
CurseForge is the home to your modding needs. Mods are in-game content that is created by independent creators, and adds a new layer of fun to games, often altering games so much that it creates brand new and exciting experiences within these games.
Any game that supports mods can be listed on CurseForge.
What is CurseForge for Studios
CurseForge for Studios is a new way for game developers to bring their games to the forefront of modding. When logged in to the CurseForge for Studios console, game developers can set up their games to be available on the CurseForge website www.curseforge.com Once on the CurseForge Website, authors can start uploading their creations for your game, and users playing your game can then download them through various methods.
What can CurseForge for Studios do? What can you do with it?
CurseForge for Studios games are supported on multiple platforms, from PC, to consoles and more.
As a game developer, you can decide if you want your game users to download mods through various methods, such as a frame within your game launcher (if you have one), an in-game UI built using our advanced API options, plugins for different consoles, such as XBOX, Playstation, etc. In addition, you can make your game’s mods available publicly on the CurseForge website, the CurseForge client, and other 3rd party mod managers out there if you choose so.
Last but not least, you can choose to let us moderate the content created for your game, or moderate it yourself with your own moderation team.
Supported download options
- Cross-Platform plugins, SDKs
- In-Game UI, using CurseForge’s API
- Game-Launcher UI that you build, using CurseForge’s API
- Game-Launcher UI, using a pre-built customizable frame
- CurseForge Website
- CurseForge Client
- 3rd Party mod managers
Your next steps
-
Create an account on CurseForge for Studios Console
Go to the CurseForge for Studios Create account page, and create your account. You can feel free to set up your organization name on initial login, but you can always come back to this later through the settings.
-
Set up your game
Hit the “Add a game” button and follow the process. You can view the “Setting up your game” section below for additional information or contact us if you need any assistance.
-
Test your game
Once your game is set up, start testing it to make sure everything works as you intended.
-
Publish
When done testing your game, you can send your game for approval. Our moderation team will go over things as soon as possible and once approved, your game will be set to “Approved” status. When in this state, you will be prompted to publish your game whenever you’re ready.
This is the final step in publishing your game. When you click “Go Live” after being approved, your game is automatically published according to your desired settings. -
Talk to us for any help you may need
Feel free to contact us with any questions or help you may need.
Setting up a game, Step by step guide
1Login, or create an account on CurseForge for Studios
2Set up your organization account, or skip. You can always do this in the settings later
3Once on the home page, click the “Add a game” button
4Fill in the required details in the following setup screens a. Game assets
b. Game versions
c. Categories & Projects
5Once you’re done setting up your game, choose the users you want to test it in the “Testers tab”
6When you’re done testing your game and feel that you’re good to go, visit the “Status” tab and submit your game for review
7Once your game is approved, you can go ahead and publish it whenever you are ready.
8That’s it! You’re done. Your game is now published and available on the CurseForge website and the API according to your chosen settings.
If you encounter any issues we can help with, difficulties to overcome or have suggestions to share, talk to us
Accessing the service
Base URL
All endpoints use the same base URL - https://api.curseforge.com
Pagination Limits
The maximum page size is 50 results per page and capped at 10000 total results.
Note: The limit is (index + pageSize <= 10,000).
Notes
- Unless stated otherwise all int32 responses are unsigned.
Authentication
- API Key (API_KEY)
- Parameter Name: x-api-key, in: header.
The API key can be generated in the CurseForge for Studios developer console.
- Parameter Name: x-api-key, in: header.
Games
Get Games
Code samples
# You can also use wget
curl -X GET /v1/games \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/games HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/games',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/games',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/games', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/games', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/games");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/games", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/games
Get all games that are available to the provided API key.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
index | query | integer(int32) | false | A zero based index of the first item to include in the response, the limit is: (index + pageSize <= 10,000). |
pageSize | query | integer(int32) | false | The number of items to include in the response, the default/maximum value is 50. |
Example responses
200 Response
{
"data": [
{
"id": 0,
"name": "string",
"slug": "string",
"dateModified": "2019-08-24T14:15:22Z",
"assets": {
"iconUrl": "string",
"tileUrl": "string",
"coverUrl": "string"
},
"status": 1,
"apiStatus": 1
}
],
"pagination": {
"index": 0,
"pageSize": 0,
"resultCount": 0,
"totalCount": 0
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Games Response |
500 | Internal Server Error | none | None |
Get Game
Code samples
# You can also use wget
curl -X GET /v1/games/{gameId} \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/games/{gameId} HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/games/{gameId}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/games/{gameId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/games/{gameId}', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/games/{gameId}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/games/{gameId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/games/{gameId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/games/{gameId}
Get a single game. A private game is only accessible by its respective API key.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | path | integer(int32) | true | A game unique id |
Example responses
200 Response
{
"data": {
"id": 0,
"name": "string",
"slug": "string",
"dateModified": "2019-08-24T14:15:22Z",
"assets": {
"iconUrl": "string",
"tileUrl": "string",
"coverUrl": "string"
},
"status": 1,
"apiStatus": 1
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Game Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Versions
Code samples
# You can also use wget
curl -X GET /v1/games/{gameId}/versions \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/games/{gameId}/versions HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/games/{gameId}/versions',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/games/{gameId}/versions',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/games/{gameId}/versions', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/games/{gameId}/versions', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/games/{gameId}/versions");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/games/{gameId}/versions", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/games/{gameId}/versions
Get all available versions for each known version type of the specified game. A private game is only accessible to its respective API key.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | path | integer(int32) | true | A game unique id |
Example responses
200 Response
{
"data": [
{
"type": 0,
"versions": [
"string"
]
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Versions Response - V1 |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Version Types
Code samples
# You can also use wget
curl -X GET /v1/games/{gameId}/version-types \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/games/{gameId}/version-types HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/games/{gameId}/version-types',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/games/{gameId}/version-types',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/games/{gameId}/version-types', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/games/{gameId}/version-types', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/games/{gameId}/version-types");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/games/{gameId}/version-types", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/games/{gameId}/version-types
Get all available version types of the specified game.
A private game is only accessible to its respective API key.
Currently, when creating games via the CurseForge for Studios Console, you are limited to a single game version type. This means that this endpoint is probably not useful in most cases and is relevant mostly when handling existing games that have multiple game versions such as World of Warcraft and Minecraft (e.g. 517 for wow_retail).
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | path | integer(int32) | true | A game unique id |
Example responses
200 Response
{
"data": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"isSyncable": true,
"status": 1
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Version Types Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Versions - V2
Code samples
# You can also use wget
curl -X GET /v2/games/{gameId}/versions \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v2/games/{gameId}/versions HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v2/games/{gameId}/versions',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v2/games/{gameId}/versions',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v2/games/{gameId}/versions', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v2/games/{gameId}/versions', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v2/games/{gameId}/versions");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v2/games/{gameId}/versions", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v2/games/{gameId}/versions
Get all available versions for each known version type of the specified game. A private game is only accessible to its respective API key.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | path | integer(int32) | true | A game unique id |
Example responses
200 Response
{
"data": [
{
"type": 0,
"versions": [
{
"id": 0,
"slug": "string",
"name": "string"
}
]
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Versions Response - V2 |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Categories
Get Categories
Code samples
# You can also use wget
curl -X GET /v1/categories?gameId=0 \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/categories?gameId=0 HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/categories?gameId=0',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/categories',
params: {
'gameId' => 'integer(int32)'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/categories', params={
'gameId': '0'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/categories', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/categories?gameId=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/categories", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/categories
Get all available classes and categories of the specified game. Specify a game id for a list of all game categories, or a class id for a list of categories under that class. specifiy the classes Only flag to just get the classes for a given game.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | query | integer(int32) | true | A game unique id |
classId | query | integer(int32) | false | A class unique id |
classesOnly | query | boolean | false | A flag used with gameId to return only classes |
Example responses
200 Response
{
"data": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Categories Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Mods
Search Mods
Code samples
# You can also use wget
curl -X GET /v1/mods/search?gameId=0 \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/mods/search?gameId=0 HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/search?gameId=0',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/mods/search',
params: {
'gameId' => 'integer(int32)'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/mods/search', params={
'gameId': '0'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/mods/search', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/search?gameId=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/mods/search", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/mods/search
Get all mods that match the search criteria.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | query | integer(int32) | true | Filter by game id. |
classId | query | integer(int32) | false | Filter by section id (discoverable via Categories) |
categoryId | query | integer(int32) | false | Filter by category id |
categoryIds | query | string | false | Filter by a list of category ids - this will override categoryId |
gameVersion | query | string | false | Filter by game version string |
gameVersions | query | string | false | Filter by a list of game version strings - this will override |
searchFilter | query | string | false | Filter by free text search in the mod name and author |
sortField | query | ModsSearchSortField | false | Filter by ModsSearchSortField enumeration |
sortOrder | query | SortOrder | false | 'asc' if sort is in ascending order, 'desc' if sort is in descending order |
modLoaderType | query | ModLoaderType | false | Filter only mods associated to a given modloader (Forge, Fabric ...). Must be coupled with gameVersion. |
modLoaderTypes | query | string | false | Filter by a list of mod loader types - this will override modLoaderType |
gameVersionTypeId | query | integer(int32) | false | Filter only mods that contain files tagged with versions of the given gameVersionTypeId |
authorId | query | integer(int32) | false | Filter only mods that the given authorId is a member of. |
primaryAuthorId | query | integer(int32) | false | Filter only mods that the given primaryAuthorId is the owner of. |
slug | query | string | false | Filter by slug (coupled with classId will result in a unique result). |
index | query | integer(int32) | false | A zero based index of the first item to include in the response, the limit is: (index + pageSize <= 10,000). |
pageSize | query | integer(int32) | false | The number of items to include in the response, the default/maximum value is 50. |
Detailed descriptions
categoryIds: Filter by a list of category ids - this will override categoryId categoryIds=[1,2,3...]
The maximum allowed category ids per query is 10
gameVersions: Filter by a list of game version strings - this will override gameVersion
gameVersions=["1.19.1", "1.19.2", "1.20.1" ...]
The maximum allowed category ids per query is 4
modLoaderTypes: Filter by a list of mod loader types - this will override modLoaderType modLoaderTypes=[Forge, Fabric, ...]
Max values = 5
Enumerated Values
Parameter | Value |
---|---|
sortField | 1 |
sortField | 2 |
sortField | 3 |
sortField | 4 |
sortField | 5 |
sortField | 6 |
sortField | 7 |
sortField | 8 |
sortField | 9 |
sortField | 10 |
sortField | 11 |
sortField | 12 |
sortOrder | asc |
sortOrder | desc |
modLoaderType | 0 |
modLoaderType | 1 |
modLoaderType | 2 |
modLoaderType | 3 |
modLoaderType | 4 |
modLoaderType | 5 |
modLoaderType | 6 |
Example responses
200 Response
{
"data": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
],
"pagination": {
"index": 0,
"pageSize": 0,
"resultCount": 0,
"totalCount": 0
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Search Mods Response |
400 | Bad Request | none | None |
500 | Internal Server Error | none | None |
Get Mod
Code samples
# You can also use wget
curl -X GET /v1/mods/{modId} \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/mods/{modId} HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/{modId}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/mods/{modId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/mods/{modId}', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/mods/{modId}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/{modId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/mods/{modId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/mods/{modId}
Get a single mod.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
modId | path | integer(int32) | true | The mod id |
Example responses
200 Response
{
"data": {
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Mod Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Mods
Code samples
# You can also use wget
curl -X POST /v1/mods \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /v1/mods HTTP/1.1
Content-Type: application/json
Accept: application/json
const inputBody = '{
"modIds": [
0
],
"filterPcOnly": true
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.post '/v1/mods',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.post('/v1/mods', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','/v1/mods', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/v1/mods", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /v1/mods
Get a list of mods belonging the the same game.
Body parameter
{
"modIds": [
0
],
"filterPcOnly": true
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | GetModsByIdsListRequestBody | true | Request body containing an array of mod ids, mod ids must belong to the same game. |
Example responses
200 Response
{
"data": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Mods Response |
400 | Bad Request | none | None |
500 | Internal Server Error | none | None |
Get Featured Mods
Code samples
# You can also use wget
curl -X POST /v1/mods/featured \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /v1/mods/featured HTTP/1.1
Content-Type: application/json
Accept: application/json
const inputBody = '{
"gameId": 0,
"excludedModIds": [
0
],
"gameVersionTypeId": 0
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/featured',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.post '/v1/mods/featured',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.post('/v1/mods/featured', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','/v1/mods/featured', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/featured");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/v1/mods/featured", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /v1/mods/featured
Get a list of featured, popular and recently updated mods.
Body parameter
{
"gameId": 0,
"excludedModIds": [
0
],
"gameVersionTypeId": 0
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | GetFeaturedModsRequestBody | true | Match results for a game and exclude specific mods |
Example responses
200 Response
{
"data": {
"featured": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
],
"popular": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
],
"recentlyUpdated": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Featured Mods Response |
400 | Bad Request | none | None |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Mod Description
Code samples
# You can also use wget
curl -X GET /v1/mods/{modId}/description \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/mods/{modId}/description HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/{modId}/description',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/mods/{modId}/description',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/mods/{modId}/description', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/mods/{modId}/description', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/{modId}/description");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/mods/{modId}/description", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/mods/{modId}/description
Get the full description of a mod in HTML format.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
modId | path | integer(int32) | true | The mod id |
raw | query | boolean | false | none |
stripped | query | boolean | false | none |
markup | query | boolean | false | none |
Example responses
200 Response
{
"data": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | String Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Files
Get Mod File
Code samples
# You can also use wget
curl -X GET /v1/mods/{modId}/files/{fileId} \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/mods/{modId}/files/{fileId} HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/{modId}/files/{fileId}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/mods/{modId}/files/{fileId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/mods/{modId}/files/{fileId}', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/mods/{modId}/files/{fileId}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/{modId}/files/{fileId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/mods/{modId}/files/{fileId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/mods/{modId}/files/{fileId}
Get a single file of the specified mod.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
modId | path | integer(int32) | true | The mod id the file belongs to |
fileId | path | integer(int32) | true | The file id |
Example responses
200 Response
{
"data": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Mod File Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Mod Files
Code samples
# You can also use wget
curl -X GET /v1/mods/{modId}/files \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/mods/{modId}/files HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/{modId}/files',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/mods/{modId}/files',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/mods/{modId}/files', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/mods/{modId}/files', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/{modId}/files");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/mods/{modId}/files", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/mods/{modId}/files
Get all files of the specified mod.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
modId | path | integer(int32) | true | The mod id the files belong to |
gameVersion | query | string | false | Filter by game version string |
modLoaderType | query | ModLoaderType | false | ModLoaderType enumeration |
gameVersionTypeId | query | integer(int32) | false | Filter only files that are tagged with versions of the given gameVersionTypeId |
index | query | integer(int32) | false | A zero based index of the first item to include in the response, the limit is: (index + pageSize <= 10,000). |
pageSize | query | integer(int32) | false | The number of items to include in the response, the default/maximum value is 50. |
Detailed descriptions
modLoaderType: ModLoaderType enumeration Filter only files associated to a given modloader (Forge, Fabric ...).
Enumerated Values
Parameter | Value |
---|---|
modLoaderType | 0 |
modLoaderType | 1 |
modLoaderType | 2 |
modLoaderType | 3 |
modLoaderType | 4 |
modLoaderType | 5 |
modLoaderType | 6 |
Example responses
200 Response
{
"data": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"pagination": {
"index": 0,
"pageSize": 0,
"resultCount": 0,
"totalCount": 0
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Mod Files Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Files
Code samples
# You can also use wget
curl -X POST /v1/mods/files \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /v1/mods/files HTTP/1.1
Content-Type: application/json
Accept: application/json
const inputBody = '{
"fileIds": [
0
]
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/files',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.post '/v1/mods/files',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.post('/v1/mods/files', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','/v1/mods/files', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/files");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/v1/mods/files", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /v1/mods/files
Get a list of files.
Body parameter
{
"fileIds": [
0
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | GetModFilesRequestBody | true | Request body containing a list of file ids to fetch |
Example responses
200 Response
{
"data": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Files Response |
400 | Bad Request | none | None |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Mod File Changelog
Code samples
# You can also use wget
curl -X GET /v1/mods/{modId}/files/{fileId}/changelog \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/mods/{modId}/files/{fileId}/changelog HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/{modId}/files/{fileId}/changelog',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/mods/{modId}/files/{fileId}/changelog',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/mods/{modId}/files/{fileId}/changelog', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/mods/{modId}/files/{fileId}/changelog', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/{modId}/files/{fileId}/changelog");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/mods/{modId}/files/{fileId}/changelog", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/mods/{modId}/files/{fileId}/changelog
Get the changelog of a file in HTML format.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
modId | path | integer(int32) | true | The mod id the file belongs to |
fileId | path | integer(int32) | true | The file id |
Example responses
200 Response
{
"data": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | String Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Mod File Download URL
Code samples
# You can also use wget
curl -X GET /v1/mods/{modId}/files/{fileId}/download-url \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/mods/{modId}/files/{fileId}/download-url HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/mods/{modId}/files/{fileId}/download-url',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/mods/{modId}/files/{fileId}/download-url',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/mods/{modId}/files/{fileId}/download-url', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/mods/{modId}/files/{fileId}/download-url', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/mods/{modId}/files/{fileId}/download-url");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/mods/{modId}/files/{fileId}/download-url", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/mods/{modId}/files/{fileId}/download-url
Get a download url for a specific file.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
modId | path | integer(int32) | true | The mod id the file belongs to |
fileId | path | integer(int32) | true | The file id |
Example responses
200 Response
{
"data": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | String Response |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Fingerprints
Get Fingerprints Matches By Game Id
Code samples
# You can also use wget
curl -X POST /v1/fingerprints/{gameId} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /v1/fingerprints/{gameId} HTTP/1.1
Content-Type: application/json
Accept: application/json
const inputBody = '{
"fingerprints": [
0
]
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/fingerprints/{gameId}',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.post '/v1/fingerprints/{gameId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.post('/v1/fingerprints/{gameId}', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','/v1/fingerprints/{gameId}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/fingerprints/{gameId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/v1/fingerprints/{gameId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /v1/fingerprints/{gameId}
Get mod files that match a list of fingerprints for a given game id.
Body parameter
{
"fingerprints": [
0
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | path | integer(int32) | true | The game id for matching fingerprints |
body | body | GetFingerprintMatchesRequestBody | true | The request body containing an array of fingerprints |
Example responses
200 Response
{
"data": {
"isCacheBuilt": true,
"exactMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"exactFingerprints": [
0
],
"partialMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"partialMatchFingerprints": {
"property1": [
0
],
"property2": [
0
]
},
"installedFingerprints": [
0
],
"unmatchedFingerprints": [
0
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Fingerprint Matches Response |
400 | Bad Request | none | None |
503 | Service Unavailable | none | string |
Get Fingerprints Matches
Code samples
# You can also use wget
curl -X POST /v1/fingerprints \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /v1/fingerprints HTTP/1.1
Content-Type: application/json
Accept: application/json
const inputBody = '{
"fingerprints": [
0
]
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/fingerprints',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.post '/v1/fingerprints',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.post('/v1/fingerprints', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','/v1/fingerprints', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/fingerprints");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/v1/fingerprints", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /v1/fingerprints
Get mod files that match a list of fingerprints.
Body parameter
{
"fingerprints": [
0
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | GetFingerprintMatchesRequestBody | true | The request body containing an array of fingerprints |
Example responses
200 Response
{
"data": {
"isCacheBuilt": true,
"exactMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"exactFingerprints": [
0
],
"partialMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"partialMatchFingerprints": {
"property1": [
0
],
"property2": [
0
]
},
"installedFingerprints": [
0
],
"unmatchedFingerprints": [
0
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Fingerprint Matches Response |
400 | Bad Request | none | None |
503 | Service Unavailable | none | string |
Get Fingerprints Fuzzy Matches By Game Id
Code samples
# You can also use wget
curl -X POST /v1/fingerprints/fuzzy/{gameId} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /v1/fingerprints/fuzzy/{gameId} HTTP/1.1
Content-Type: application/json
Accept: application/json
const inputBody = '{
"gameId": 0,
"fingerprints": [
{
"foldername": "string",
"fingerprints": [
0
]
}
]
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/fingerprints/fuzzy/{gameId}',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.post '/v1/fingerprints/fuzzy/{gameId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.post('/v1/fingerprints/fuzzy/{gameId}', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','/v1/fingerprints/fuzzy/{gameId}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/fingerprints/fuzzy/{gameId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/v1/fingerprints/fuzzy/{gameId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /v1/fingerprints/fuzzy/{gameId}
Get mod files that match a list of fingerprints using fuzzy matching.
Body parameter
{
"gameId": 0,
"fingerprints": [
{
"foldername": "string",
"fingerprints": [
0
]
}
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameId | path | integer(int32) | true | The game id for matching fingerprints |
body | body | GetFuzzyMatchesRequestBody | true | Game id and folder fingerprints options for the fuzzy matching |
Example responses
200 Response
{
"data": {
"fuzzyMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"fingerprints": [
0
]
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Fingerprints Fuzzy Matches Response |
400 | Bad Request | none | None |
503 | Service Unavailable | none | string |
Get Fingerprints Fuzzy Matches
Code samples
# You can also use wget
curl -X POST /v1/fingerprints/fuzzy \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /v1/fingerprints/fuzzy HTTP/1.1
Content-Type: application/json
Accept: application/json
const inputBody = '{
"gameId": 0,
"fingerprints": [
{
"foldername": "string",
"fingerprints": [
0
]
}
]
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/fingerprints/fuzzy',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.post '/v1/fingerprints/fuzzy',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.post('/v1/fingerprints/fuzzy', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','/v1/fingerprints/fuzzy', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/fingerprints/fuzzy");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/v1/fingerprints/fuzzy", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /v1/fingerprints/fuzzy
Get mod files that match a list of fingerprints using fuzzy matching.
Body parameter
{
"gameId": 0,
"fingerprints": [
{
"foldername": "string",
"fingerprints": [
0
]
}
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | GetFuzzyMatchesRequestBody | true | Game id and folder fingerprints options for the fuzzy matching |
Example responses
200 Response
{
"data": {
"fuzzyMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"fingerprints": [
0
]
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | Get Fingerprints Fuzzy Matches Response |
400 | Bad Request | none | None |
503 | Service Unavailable | none | string |
Minecraft
Get Minecraft Versions
Code samples
# You can also use wget
curl -X GET /v1/minecraft/version \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/minecraft/version HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/minecraft/version',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/minecraft/version',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/minecraft/version', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/minecraft/version', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/minecraft/version");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/minecraft/version", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/minecraft/version
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sortDescending | query | boolean | false | none |
Example responses
200 Response
{
"data": [
{
"id": 0,
"gameVersionId": 0,
"versionString": "string",
"jarDownloadUrl": "string",
"jsonDownloadUrl": "string",
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0,
"gameVersionStatus": 1,
"gameVersionTypeStatus": 1
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | ApiResponseOfListOfMinecraftGameVersion |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Specific Minecraft Version
Code samples
# You can also use wget
curl -X GET /v1/minecraft/version/{gameVersionString} \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/minecraft/version/{gameVersionString} HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/minecraft/version/{gameVersionString}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/minecraft/version/{gameVersionString}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/minecraft/version/{gameVersionString}', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/minecraft/version/{gameVersionString}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/minecraft/version/{gameVersionString}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/minecraft/version/{gameVersionString}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/minecraft/version/{gameVersionString}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
gameVersionString | path | string | true | none |
Example responses
200 Response
{
"data": {
"id": 0,
"gameVersionId": 0,
"versionString": "string",
"jarDownloadUrl": "string",
"jsonDownloadUrl": "string",
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0,
"gameVersionStatus": 1,
"gameVersionTypeStatus": 1
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | ApiResponseOfMinecraftGameVersion |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Minecraft ModLoaders
Code samples
# You can also use wget
curl -X GET /v1/minecraft/modloader \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/minecraft/modloader HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/minecraft/modloader',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/minecraft/modloader',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/minecraft/modloader', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/minecraft/modloader', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/minecraft/modloader");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/minecraft/modloader", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/minecraft/modloader
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
version | query | string | false | none |
includeAll | query | boolean | false | none |
Example responses
200 Response
{
"data": [
{
"name": "string",
"gameVersion": "string",
"latest": true,
"recommended": true,
"dateModified": "2019-08-24T14:15:22Z",
"type": 0
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | ApiResponseOfListOfMinecraftModLoaderIndex |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Get Specific Minecraft ModLoader
Code samples
# You can also use wget
curl -X GET /v1/minecraft/modloader/{modLoaderName} \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /v1/minecraft/modloader/{modLoaderName} HTTP/1.1
Accept: application/json
const headers = {
'Accept':'application/json',
'x-api-key':'API_KEY'
};
fetch('/v1/minecraft/modloader/{modLoaderName}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'x-api-key' => 'API_KEY'
}
result = RestClient.get '/v1/minecraft/modloader/{modLoaderName}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'x-api-key': 'API_KEY'
}
r = requests.get('/v1/minecraft/modloader/{modLoaderName}', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
'x-api-key' => 'API_KEY',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','/v1/minecraft/modloader/{modLoaderName}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("/v1/minecraft/modloader/{modLoaderName}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"x-api-key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/v1/minecraft/modloader/{modLoaderName}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /v1/minecraft/modloader/{modLoaderName}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
modLoaderName | path | string | true | none |
Example responses
200 Response
{
"data": {
"id": 0,
"gameVersionId": 0,
"minecraftGameVersionId": 0,
"forgeVersion": "string",
"name": "string",
"type": 0,
"downloadUrl": "string",
"filename": "string",
"installMethod": 1,
"latest": true,
"recommended": true,
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"mavenVersionString": "string",
"versionJson": "string",
"librariesInstallLocation": "string",
"minecraftVersion": "string",
"additionalFilesJson": "string",
"modLoaderGameVersionId": 0,
"modLoaderGameVersionTypeId": 0,
"modLoaderGameVersionStatus": 1,
"modLoaderGameVersionTypeStatus": 1,
"mcGameVersionId": 0,
"mcGameVersionTypeId": 0,
"mcGameVersionStatus": 1,
"mcGameVersionTypeStatus": 1,
"installProfileJson": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | none | ApiResponseOfMinecraftModLoaderVersion |
404 | Not Found | none | None |
500 | Internal Server Error | none | None |
Schemas
ApiResponseOfListOfMinecraftGameVersion
{
"data": [
{
"id": 0,
"gameVersionId": 0,
"versionString": "string",
"jarDownloadUrl": "string",
"jsonDownloadUrl": "string",
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0,
"gameVersionStatus": 1,
"gameVersionTypeStatus": 1
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [MinecraftGameVersion] | The response data |
ApiResponseOfListOfMinecraftModLoaderIndex
{
"data": [
{
"name": "string",
"gameVersion": "string",
"latest": true,
"recommended": true,
"dateModified": "2019-08-24T14:15:22Z",
"type": 0
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [MinecraftModLoaderIndex] | The response data |
ApiResponseOfMinecraftGameVersion
{
"data": {
"id": 0,
"gameVersionId": 0,
"versionString": "string",
"jarDownloadUrl": "string",
"jsonDownloadUrl": "string",
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0,
"gameVersionStatus": 1,
"gameVersionTypeStatus": 1
}
}
Properties
Name | Type | Description |
---|---|---|
data | MinecraftGameVersion | The response data |
ApiResponseOfMinecraftModLoaderVersion
{
"data": {
"id": 0,
"gameVersionId": 0,
"minecraftGameVersionId": 0,
"forgeVersion": "string",
"name": "string",
"type": 0,
"downloadUrl": "string",
"filename": "string",
"installMethod": 1,
"latest": true,
"recommended": true,
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"mavenVersionString": "string",
"versionJson": "string",
"librariesInstallLocation": "string",
"minecraftVersion": "string",
"additionalFilesJson": "string",
"modLoaderGameVersionId": 0,
"modLoaderGameVersionTypeId": 0,
"modLoaderGameVersionStatus": 1,
"modLoaderGameVersionTypeStatus": 1,
"mcGameVersionId": 0,
"mcGameVersionTypeId": 0,
"mcGameVersionStatus": 1,
"mcGameVersionTypeStatus": 1,
"installProfileJson": "string"
}
}
Properties
Name | Type | Description |
---|---|---|
data | MinecraftModLoaderVersion | The response data |
Category
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | The category id |
gameId | integer(int32) | The game id related to the category |
name | string | Category name |
slug | string | The category slug as it appear in the URL |
url | string | The category URL |
iconUrl | string | URL for the category icon |
dateModified | string(date-time) | Last modified date of the category |
isClass | boolean¦null | A top level category for other categories |
classId | integer(int32)¦null | The class id of the category, meaning - the class of which this category is under |
parentCategoryId | integer(int32)¦null | The parent category for this category |
displayIndex | integer(int32)¦null | The display index for this category |
CoreApiStatus
1
Possible enum values:
1=Private
2=Public
CoreStatus
1
Possible enum values:
1=Draft
2=Test
3=PendingReview
4=Rejected
5=Approved
6=Live
FeaturedModsResponse
{
"featured": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
],
"popular": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
],
"recentlyUpdated": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
]
}
Properties
Name | Type | Description |
---|---|---|
featured | [Mod] | none |
popular | [Mod] | none |
recentlyUpdated | [Mod] | none |
File
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | The file id |
gameId | integer(int32) | The game id related to the mod that this file belongs to |
modId | integer(int32) | The mod id |
isAvailable | boolean | Whether the file is available to download |
displayName | string | Display name of the file |
fileName | string | Exact file name |
releaseType | FileReleaseType | The file release type |
fileStatus | FileStatus | Status of the file |
hashes | [FileHash] | The file hash (i.e. md5 or sha1) |
fileDate | string(date-time) | The file timestamp |
fileLength | integer(int64) | The file length in bytes |
downloadCount | integer(int64) | The number of downloads for the file |
fileSizeOnDisk | integer(int64)¦null | The file's size on disk |
downloadUrl | string | The file download URL |
gameVersions | [string] | List of game versions this file is relevant for |
sortableGameVersions | [SortableGameVersion] | Metadata used for sorting by game versions |
dependencies | [FileDependency] | List of dependencies files |
exposeAsAlternative | boolean¦null | none |
parentProjectFileId | integer(int32)¦null | none |
alternateFileId | integer(int32)¦null | none |
isServerPack | boolean¦null | none |
serverPackFileId | integer(int32)¦null | none |
isEarlyAccessContent | boolean¦null | none |
earlyAccessEndDate | string(date-time)¦null | none |
fileFingerprint | integer(int64) | none |
modules | [FileModule] | none |
FileDependency
{
"modId": 0,
"relationType": 1
}
Properties
Name | Type | Description |
---|---|---|
modId | integer(int32) | none |
relationType | FileRelationType | 1 = EmbeddedLibrary 2 = OptionalDependency 3 = RequiredDependency 4 = Tool 5 = Incompatible 6 = Include |
FileHash
{
"value": "string",
"algo": 1
}
Properties
Name | Type | Description |
---|---|---|
value | string | none |
algo | HashAlgo | 1 = Sha1 2 = Md5 |
FileIndex
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
Properties
Name | Type | Description |
---|---|---|
gameVersion | string | none |
fileId | integer(int32) | none |
filename | string | none |
releaseType | FileReleaseType | 1 = Release 2 = Beta 3 = Alpha |
gameVersionTypeId | integer(int32)¦null | none |
modLoader | ModLoaderType | 0 = Any 1 = Forge 2 = Cauldron 3 = LiteLoader 4 = Fabric 5 = Quilt 6 = NeoForge |
FileModule
{
"name": "string",
"fingerprint": 0
}
Properties
Name | Type | Description |
---|---|---|
name | string | none |
fingerprint | integer(int64) | none |
FileRelationType
1
Possible enum values:
1=EmbeddedLibrary
2=OptionalDependency
3=RequiredDependency
4=Tool
5=Incompatible
6=Include
FileReleaseType
1
Possible enum values:
1=Release
2=Beta
3=Alpha
FileStatus
1
Possible enum values:
1=Processing
2=ChangesRequired
3=UnderReview
4=Approved
5=Rejected
6=MalwareDetected
7=Deleted
8=Archived
9=Testing
10=Released
11=ReadyForReview
12=Deprecated
13=Baking
14=AwaitingPublishing
15=FailedPublishing
FingerprintFuzzyMatch
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"fingerprints": [
0
]
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | none |
file | File | none |
latestFiles | [File] | none |
fingerprints | [integer] | none |
FingerprintFuzzyMatchResult
{
"fuzzyMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"fingerprints": [
0
]
}
]
}
Properties
Name | Type | Description |
---|---|---|
fuzzyMatches | [FingerprintFuzzyMatch] | none |
FingerprintMatch
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | none |
file | File | none |
latestFiles | [File] | none |
FingerprintsMatchesResult
{
"isCacheBuilt": true,
"exactMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"exactFingerprints": [
0
],
"partialMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"partialMatchFingerprints": {
"property1": [
0
],
"property2": [
0
]
},
"installedFingerprints": [
0
],
"unmatchedFingerprints": [
0
]
}
Properties
Name | Type | Description |
---|---|---|
isCacheBuilt | boolean | none |
exactMatches | [FingerprintMatch] | none |
exactFingerprints | [integer] | none |
partialMatches | [FingerprintMatch] | none |
partialMatchFingerprints | object | none |
» additionalProperties | [integer] | none |
installedFingerprints | [integer] | none |
unmatchedFingerprints | [integer] | none |
FolderFingerprint
{
"foldername": "string",
"fingerprints": [
0
]
}
Properties
Name | Type | Description |
---|---|---|
foldername | string | none |
fingerprints | [integer] | none |
Game
{
"id": 0,
"name": "string",
"slug": "string",
"dateModified": "2019-08-24T14:15:22Z",
"assets": {
"iconUrl": "string",
"tileUrl": "string",
"coverUrl": "string"
},
"status": 1,
"apiStatus": 1
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | none |
name | string | none |
slug | string | none |
dateModified | string(date-time) | none |
assets | GameAssets | none |
status | CoreStatus | 1 = Draft 2 = Test 3 = PendingReview 4 = Rejected 5 = Approved 6 = Live |
apiStatus | CoreApiStatus | 1 = Private 2 = Public |
GameAssets
{
"iconUrl": "string",
"tileUrl": "string",
"coverUrl": "string"
}
Properties
Name | Type | Description |
---|---|---|
iconUrl | string | none |
tileUrl | string | none |
coverUrl | string | none |
GameVersion
{
"id": 0,
"slug": "string",
"name": "string"
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | none |
slug | string | none |
name | string | none |
GameVersionsByType
{
"type": 0,
"versions": [
"string"
]
}
Properties
Name | Type | Description |
---|---|---|
type | integer(int32) | none |
versions | [string] | none |
GameVersionsByType2
{
"type": 0,
"versions": [
{
"id": 0,
"slug": "string",
"name": "string"
}
]
}
Properties
Name | Type | Description |
---|---|---|
type | integer(int32) | none |
versions | [GameVersion] | none |
GameVersionStatus
1
Possible enum values:
1=Approved
2=Deleted
3=New
GameVersionType
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"isSyncable": true,
"status": 1
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | none |
gameId | integer(int32) | none |
name | string | none |
slug | string | none |
isSyncable | boolean | none |
status | GameVersionTypeStatus | 1 = Normal 2 = Deleted |
GameVersionTypeStatus
1
Possible enum values:
1=Normal
2=Deleted
Get Categories Response
{
"data": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [Category] | The response data |
Get Featured Mods Response
{
"data": {
"featured": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
],
"popular": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
],
"recentlyUpdated": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
]
}
}
Properties
Name | Type | Description |
---|---|---|
data | FeaturedModsResponse | The response data |
Get Files Response
{
"data": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [File] | The response data |
Get Fingerprint Matches Response
{
"data": {
"isCacheBuilt": true,
"exactMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"exactFingerprints": [
0
],
"partialMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
]
}
],
"partialMatchFingerprints": {
"property1": [
0
],
"property2": [
0
]
},
"installedFingerprints": [
0
],
"unmatchedFingerprints": [
0
]
}
}
Properties
Name | Type | Description |
---|---|---|
data | FingerprintsMatchesResult | The response data |
Get Fingerprints Fuzzy Matches Response
{
"data": {
"fuzzyMatches": [
{
"id": 0,
"file": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
},
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"fingerprints": [
0
]
}
]
}
}
Properties
Name | Type | Description |
---|---|---|
data | FingerprintFuzzyMatchResult | The response data |
Get Game Response
{
"data": {
"id": 0,
"name": "string",
"slug": "string",
"dateModified": "2019-08-24T14:15:22Z",
"assets": {
"iconUrl": "string",
"tileUrl": "string",
"coverUrl": "string"
},
"status": 1,
"apiStatus": 1
}
}
Properties
Name | Type | Description |
---|---|---|
data | Game | The response data |
Get Games Response
{
"data": [
{
"id": 0,
"name": "string",
"slug": "string",
"dateModified": "2019-08-24T14:15:22Z",
"assets": {
"iconUrl": "string",
"tileUrl": "string",
"coverUrl": "string"
},
"status": 1,
"apiStatus": 1
}
],
"pagination": {
"index": 0,
"pageSize": 0,
"resultCount": 0,
"totalCount": 0
}
}
Properties
Name | Type | Description |
---|---|---|
data | [Game] | The response data |
pagination | Pagination | The response pagination information |
Get Mod File Response
{
"data": {
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
}
Properties
Name | Type | Description |
---|---|---|
data | File | The response data |
Get Mod Files Response
{
"data": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"pagination": {
"index": 0,
"pageSize": 0,
"resultCount": 0,
"totalCount": 0
}
}
Properties
Name | Type | Description |
---|---|---|
data | [File] | The response data |
pagination | Pagination | The response pagination information |
Get Mod Response
{
"data": {
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
}
Properties
Name | Type | Description |
---|---|---|
data | Mod | The response data |
Get Mods Response
{
"data": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"links": {
"websiteUrl": "string",
"wikiUrl": "string",
"issuesUrl": "string",
"sourceUrl": "string"
},
"summary": "string",
"status": 1,
"downloadCount": 0,
"isFeatured": true,
"primaryCategoryId": 0,
"categories": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"url": "string",
"iconUrl": "string",
"dateModified": "2019-08-24T14:15:22Z",
"isClass": true,
"classId": 0,
"parentCategoryId": 0,
"displayIndex": 0
}
],
"classId": 0,
"authors": [
{
"id": 0,
"name": "string",
"url": "string"
}
],
"logo": {
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
},
"screenshots": [
{
"id": 0,
"modId": 0,
"title": "string",
"description": "string",
"thumbnailUrl": "string",
"url": "string"
}
],
"mainFileId": 0,
"latestFiles": [
{
"id": 0,
"gameId": 0,
"modId": 0,
"isAvailable": true,
"displayName": "string",
"fileName": "string",
"releaseType": 1,
"fileStatus": 1,
"hashes": [
{
"value": "string",
"algo": 1
}
],
"fileDate": "2019-08-24T14:15:22Z",
"fileLength": 0,
"downloadCount": 0,
"fileSizeOnDisk": 0,
"downloadUrl": "string",
"gameVersions": [
"string"
],
"sortableGameVersions": [
{
"gameVersionName": "string",
"gameVersionPadded": "string",
"gameVersion": "string",
"gameVersionReleaseDate": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0
}
],
"dependencies": [
{
"modId": 0,
"relationType": 1
}
],
"exposeAsAlternative": true,
"parentProjectFileId": 0,
"alternateFileId": 0,
"isServerPack": true,
"serverPackFileId": 0,
"isEarlyAccessContent": true,
"earlyAccessEndDate": "2019-08-24T14:15:22Z",
"fileFingerprint": 0,
"modules": [
{
"name": "string",
"fingerprint": 0
}
]
}
],
"latestFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"latestEarlyAccessFilesIndexes": [
{
"gameVersion": "string",
"fileId": 0,
"filename": "string",
"releaseType": 1,
"gameVersionTypeId": 0,
"modLoader": 0
}
],
"dateCreated": "2019-08-24T14:15:22Z",
"dateModified": "2019-08-24T14:15:22Z",
"dateReleased": "2019-08-24T14:15:22Z",
"allowModDistribution": true,
"gamePopularityRank": 0,
"isAvailable": true,
"thumbsUpCount": 0,
"rating": 0
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [Mod] | The response data |
Get Version Types Response
{
"data": [
{
"id": 0,
"gameId": 0,
"name": "string",
"slug": "string",
"isSyncable": true,
"status": 1
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [GameVersionType] | The response data |
Get Versions Response - V1
{
"data": [
{
"type": 0,
"versions": [
"string"
]
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [GameVersionsByType] | The response data |
Get Versions Response - V2
{
"data": [
{
"type": 0,
"versions": [
{
"id": 0,
"slug": "string",
"name": "string"
}
]
}
]
}
Properties
Name | Type | Description |
---|---|---|
data | [GameVersionsByType2] | The response data |
GetFeaturedModsRequestBody
{
"gameId": 0,
"excludedModIds": [
0
],
"gameVersionTypeId": 0
}
Properties
Name | Type | Description |
---|---|---|
gameId | integer(int32) | none |
excludedModIds | [integer] | none |
gameVersionTypeId | integer(int32)¦null | none |
GetFingerprintMatchesRequestBody
{
"fingerprints": [
0
]
}
Properties
Name | Type | Description |
---|---|---|
fingerprints | [integer] | none |
GetFuzzyMatchesRequestBody
{
"gameId": 0,
"fingerprints": [
{
"foldername": "string",
"fingerprints": [
0
]
}
]
}
Properties
Name | Type | Description |
---|---|---|
gameId | integer(int32) | none |
fingerprints | [FolderFingerprint] | none |
GetModFilesRequestBody
{
"fileIds": [
0
]
}
Properties
Name | Type | Description |
---|---|---|
fileIds | [integer] | none |
GetModsByIdsListRequestBody
{
"modIds": [
0
],
"filterPcOnly": true
}
Properties
Name | Type | Description |
---|---|---|
modIds | [integer] | none |
filterPcOnly | boolean¦null | none |
HashAlgo
1
Possible enum values:
1=Sha1
2=Md5
MinecraftGameVersion
{
"id": 0,
"gameVersionId": 0,
"versionString": "string",
"jarDownloadUrl": "string",
"jsonDownloadUrl": "string",
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"gameVersionTypeId": 0,
"gameVersionStatus": 1,
"gameVersionTypeStatus": 1
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | none |
gameVersionId | integer(int32) | none |
versionString | string | none |
jarDownloadUrl | string | none |
jsonDownloadUrl | string | none |
approved | boolean | none |
dateModified | string(date-time) | none |
gameVersionTypeId | integer(int32) | none |
gameVersionStatus | GameVersionStatus | 1 = Approved 2 = Deleted 3 = New |
gameVersionTypeStatus | GameVersionTypeStatus | 1 = Normal 2 = Deleted |
MinecraftModLoaderIndex
{
"name": "string",
"gameVersion": "string",
"latest": true,
"recommended": true,
"dateModified": "2019-08-24T14:15:22Z",
"type": 0
}
Properties
Name | Type | Description |
---|---|---|
name | string | none |
gameVersion | string | none |
latest | boolean | none |
recommended | boolean | none |
dateModified | string(date-time) | none |
type | ModLoaderType | 0 = Any 1 = Forge 2 = Cauldron 3 = LiteLoader 4 = Fabric 5 = Quilt 6 = NeoForge |
MinecraftModLoaderVersion
{
"id": 0,
"gameVersionId": 0,
"minecraftGameVersionId": 0,
"forgeVersion": "string",
"name": "string",
"type": 0,
"downloadUrl": "string",
"filename": "string",
"installMethod": 1,
"latest": true,
"recommended": true,
"approved": true,
"dateModified": "2019-08-24T14:15:22Z",
"mavenVersionString": "string",
"versionJson": "string",
"librariesInstallLocation": "string",
"minecraftVersion": "string",
"additionalFilesJson": "string",
"modLoaderGameVersionId": 0,
"modLoaderGameVersionTypeId": 0,
"modLoaderGameVersionStatus": 1,
"modLoaderGameVersionTypeStatus": 1,
"mcGameVersionId": 0,
"mcGameVersionTypeId": 0,
"mcGameVersionStatus": 1,
"mcGameVersionTypeStatus": 1,
"installProfileJson": "string"
}
Properties
Name | Type | Description |
---|---|---|
id | integer(int32) | none |
gameVersionId | integer(int32) | none |
minecraftGameVersionId | integer(int32) | none |
forgeVersion | string | none |
name | string | none |
type | ModLoaderType | 0 = Any 1 = Forge 2 = Cauldron 3 = LiteLoader 4 = Fabric 5 = Quilt 6 = NeoForge |
downloadUrl | string | none |
filename | string | none |
installMethod | ModLoaderInstallMethod | 1 = ForgeInstaller 2 = ForgeJarInstall 3 = ForgeInstaller_v2 |
latest | boolean | none |
recommended | boolean | none |
approved | boolean | none |
dateModified | string(date-time) | none |
mavenVersionString | string | none |
versionJson | string | none |
librariesInstallLocation | string | none |
minecraftVersion | string | none |
additionalFilesJson | string | none |
modLoaderGameVersionId | integer(int32) | none |
modLoaderGameVersionTypeId | integer(int32) | none |
modLoaderGameVersionStatus | GameVersionStatus | 1 = Approved 2 = Deleted 3 = New |
modLoaderGameVersionTypeStatus | GameVersionTypeStatus | 1 = Normal 2 = Deleted |
mcGameVersionId | integer(int32) | none |
mcGameVersionTypeId | integer(int32) | none |
mcGameVersionStatus | GameVersionStatus | 1 = Approved 2 = Deleted 3 = New |
mcGameVersionTypeStatus |