Getting Started

screenshot

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

screenshot

2Set up your organization account, or skip. You can always do this in the settings later

screenshot

3Once on the home page, click the “Add a game” button

screenshot

4Fill in the required details in the following setup screens a. Game assets

screenshot

b. Game versions

screenshot

c. Categories & Projects

screenshot

5Once you’re done setting up your game, choose the users you want to test it in the “Testers tab”

screenshot

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

screenshot

7Once your game is approved, you can go ahead and publish it whenever you are ready.

screenshot

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.

screenshot

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.

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

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
}
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
      }
    ]
  }
}
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

16=Cooking

17=Cooked

18=UnderManualReview

19=ScanningForMalware

20=ProcessingFile

21=PendingRelease

22=ReadyForCooking

23=PostProcessing

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

{
  "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
4 = FabricInstaller
5 = QuiltInstaller
6 = NeoForgeInstaller
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 GameVersionTypeStatus 1 = Normal
2 = Deleted
installProfileJson string none

Mod

{
  "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
id integer(int32) The mod id
gameId integer(int32) The game id this mod is for
name string The name of the mod
slug string The mod slug that would appear in the URL
links ModLinks Relevant links for the mod such as Issue tracker and Wiki
summary string Mod summary
status ModStatus Current mod status
downloadCount integer(int64) Number of downloads for the mod
isFeatured boolean Whether the mod is included in the featured mods list
primaryCategoryId integer(int32) The main category of the mod as it was chosen by the mod author
categories [Category] List of categories that this mod is related to
classId integer(int32)¦null The class id this mod belongs to
authors [ModAuthor] List of the mod's authors
logo ModAsset The mod's logo asset
screenshots [ModAsset] List of screenshots assets
mainFileId integer(int32) The id of the main file of the mod
latestFiles [File] List of latest files of the mod
latestFilesIndexes [FileIndex] List of file related details for the latest files of the mod
latestEarlyAccessFilesIndexes [FileIndex] List of file related details for the latest early access files of the mod
dateCreated string(date-time) The creation date of the mod
dateModified string(date-time) The last time the mod was modified
dateReleased string(date-time) The release date of the mod
allowModDistribution boolean¦null Is mod allowed to be distributed
gamePopularityRank integer(int32) The mod popularity rank for the game
isAvailable boolean Is the mod available for search. This can be false when a mod is experimental, in a deleted state or has only alpha files
thumbsUpCount integer(int32) The mod's thumbs up count
rating number(decimal)¦null The mod's Rating

ModAsset

{
  "id": 0,
  "modId": 0,
  "title": "string",
  "description": "string",
  "thumbnailUrl": "string",
  "url": "string"
}

Properties

Name Type Description
id integer(int32) none
modId integer(int32) none
title string none
description string none
thumbnailUrl string none
url string none

ModAuthor

{
  "id": 0,
  "name": "string",
  "url": "string"
}

Properties

Name Type Description
id integer(int32) none
name string none
url string none

{
  "websiteUrl": "string",
  "wikiUrl": "string",
  "issuesUrl": "string",
  "sourceUrl": "string"
}

Properties

Name Type Description
websiteUrl string none
wikiUrl string none
issuesUrl string none
sourceUrl string none

ModLoaderInstallMethod

1

Possible enum values:

1=ForgeInstaller

2=ForgeJarInstall

3=ForgeInstaller_v2

4=FabricInstaller

5=QuiltInstaller

6=NeoForgeInstaller

ModLoaderType

0

Possible enum values:

0=Any

1=Forge

2=Cauldron

3=LiteLoader

4=Fabric

5=Quilt

6=NeoForge

ModsSearchSortField

1

Possible enum values:

1=Featured

2=Popularity

3=LastUpdated

4=Name

5=Author

6=TotalDownloads

7=Category

8=GameVersion

9=EarlyAccess

10=FeaturedReleased

11=ReleasedDate

12=Rating

ModStatus

1

Possible enum values:

1=New

2=ChangesRequired

3=UnderSoftReview

4=Approved

5=Rejected

6=ChangesMade

7=Inactive

8=Abandoned

9=Deleted

10=UnderReview

Pagination

{
  "index": 0,
  "pageSize": 0,
  "resultCount": 0,
  "totalCount": 0
}

Properties

Name Type Description
index integer(int32) A zero based index of the first item that is included in the response
pageSize integer(int32) The requested number of items to be included in the response
resultCount integer(int32) The actual number of items that were included in the response
totalCount integer(int64) The total number of items available by the request

{
  "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
  }
}

Properties

Name Type Description
data [Mod] The response data
pagination Pagination The response pagination information

SortableGameVersion

{
  "gameVersionName": "string",
  "gameVersionPadded": "string",
  "gameVersion": "string",
  "gameVersionReleaseDate": "2019-08-24T14:15:22Z",
  "gameVersionTypeId": 0
}

Properties

Name Type Description
gameVersionName string Original version name (e.g. 1.5b)
gameVersionPadded string Used for sorting (e.g. 0000000001.0000000005)
gameVersion string game version clean name (e.g. 1.5)
gameVersionReleaseDate string(date-time) Game version release date
gameVersionTypeId integer(int32)¦null Game version type id

SortOrder

"asc"

String Response

{
  "data": "string"
}

Properties

Name Type Description
data string The response data

CurseForge for Studios Terms of Use

Overwolf Ltd., a company organized under the laws of the State of Israel ("Overwolf") makes available the Curseforge platform for user-generated content (“Curseforge”), as well as the CurseForge for Studios suite of tools for game developers to integrate in-game support for user-generated content (“UGC”) in their proprietary game software (the “Game”), which may include APIs, plugins and user interfaces (collectively, “CurseForge for Studios”). "You" or "Developer" means anyone who desires to use the CurseForge for Studios Platform.

Please read these Terms of Use (this “Agreement”) carefully. All use of CurseForge for Studios is subject to this Agreement, which is intended to constitute a legally binding agreement between the parties. By using or downloading CurseForge for Studios or clicking "accept", you signify your assent to both this Agreement and our Privacy Policy . If you do not agree to any terms or conditions of this Agreement, please do not use CurseForge for Studios.

  1. CurseForge for Studios Platform. Subject to the terms and conditions hereof, Overwolf grants Developer a limited, non-exclusive license to use the CurseForge for Studios Platform, including all code made available by Overwolf as part of the CurseForge for Studios Platform, and any accompanying documentation files (“Documentation”) solely for the purpose of integrating in-game UGC support for Developer’s game (the “Purpose”). Developer has no ownership or other rights in CurseForge for Studios or any Documentation. Overwolf and its licensors and suppliers retain all right, title and interest in CurseForge for Studios, all Documentation, and all enhancement, modifications and updates thereof, including any derivative works created by Developer, and all intellectual property rights in all of the foregoing.

  2. Restrictions. Developer shall use CurseForge for Studios solely for the Purpose and not for any purpose. Developer will not (a) rent, lease, modify, copy, loan, transfer, sublicense, distribute or create derivative works of CurseForge for Studios or Documentation; (b) reverse engineer, decompile, translate, adapt, or disassemble CurseForge for Studios; (c) attempt to disable or circumvent any security mechanism in CurseForge for Studios; or (d) remove or obscure any copyright or other notices from CurseForge for Studios. Developer will moreover not demonstrate or provide CurseForge for Studios to third parties or allow such third parties to perform any of the aforesaid actions.

  3. Games and User-Content. Developer will retain sole ownership of any right, title or interest to the Game, but hereby provides Overwolf and users of Curseforge with a non-exclusive, royalty-free, worldwide license to the name, logo and trademarks of the Game and Developer for the purpose of indicating the availability of the Game and UGC in respect thereof. Overwolf does not assert ownership of UGC, though users may grant Overwolf a separate license in respect of Overwolf’s use thereof. Developer may enter separate agreements with end users regarding the ownership of UGC.

  4. Payment. Overwolf currently provides CurseForge for Studios at no charge. Payment and revenue share obligations between the parties may be set forth in a separate written agreement between the parties. Developer bears all taxes that may be imposed on Developer as a result of Developer’s use of CurseForge for Studios.

  5. The Modding Community. The Developer and Overwolf may negotiate in good faith to develop written community guidelines (the “Agreed Guidelines”) to govern the review, moderation and takedown of UGC related to the Game but, except as may be separately agreed by the parties in writing, Overwolf alone will be authorized to manage and moderate the user community, and any UGC made available by users, on the Overwolf platform or any platform controlled by Overwolf. Should the Developer wish to (a) approach any User, or (b) initiate review, moderation or takedown proceedings in respect of any UGC, then Developer shall submit a request in respect thereof to Overwolf in writing. Overwolf will make good faith, reasonable commercial efforts to process such requests in a timely manner, but reserves the right to review, moderate and takedown UGC. Developer acknowledges that, given legal and regulatory constraints applicable to Overwolf, including in respect of data protection and privacy law, Overwolf may not be able to provide any information (including identifying information) regarding any users or their activities. Developer waives any claims that it may have against Overwolf in respect of any act or omission of Overwolf in the review, moderation or takedown of any UGC by Overwolf.

  6. Moderation Privileges. In the event that Overwolf consents to the exercise by the Developer of review, moderation or takedown privileges with regard to any UGC (“Moderation Privileges”), the Developer will (a) use its best efforts to maintain the reputation, trademarks and goodwill of Overwolf and any Overwolf related platform in its exercise of such Moderation Privileges and (b) strictly follow the Agreed Guidelines and any applicable legal obligations with respect to such moderation activities, including any applicable terms of service or any laws or regulations that may limit discretion in the moderation of UGC and (c) adopt, publish and follow written procedures and guidelines as may be reasonably required by applicable law and regulations in order to ensure that neither Developer nor Overwolf shall have any liability for any moderation activities of Developer. Developer shall promptly provide Overwolf with information as reasonably requested by Overwolf regarding the use and application of all Moderation Privileges. Overwolf reserves the right to review and audit the Developer’s compliance with its obligations pursuant to this Section 7 at any time, without prior notice, and Developer shall fully cooperate with such review and audit. Developer shall indemnify Overwolf in respect of any claims against advanced against Overwolf (or its affiliates, employees or directors) in respect of any moderation or takedown activities of Developer. Overwolf may revoke Moderation Privileges at any time upon written notice.

  7. Representations and Warranties. Developer represents and warrants that the Game (not including CurseForge for Studios) does not (a) infringe the intellectual property rights or moral rights of any third party, (b) contain any viruses, worms, malware, time bombs or other malicious code or code that would prevent the operation of any software, or interfere with the operation of CurseForge for Studios, (c) contain any free or open source software that may impose any obligations on Overwolf or any creator of UGC.

  8. Indemnification. Developer shall defend, indemnify and hold harmless Overwolf from and against any and all suits, proceedings, assertions, damages, costs, liabilities or expenses (including reasonable court costs and attorney fees) which Overwolf may (directly or indirectly) suffer or incur in connection with any claim, demand, action or other proceeding by any third party arising from or relating to (a) the Game (except CurseForge for Studios) or any UGC, (b) the actions or omissions of Developer, including in respect of its exercise of Moderation Privileges pursuant to Section 7 hereof or (c) a breach by Developer of its warranties in Section 8. In the event of any such claim, Company shall notify Developer of the claim and Developer shall have the right to manage, at its sole expense, the defense of the claim and the settlement thereof.

  9. Disclaimer; Limitation of Liability. CURSEFORGE FOR STUDIOS AND ALL DOCUMENTATION ARE PROVIDED “AS-IS”. OVERWOLF EXPRESSLY DISCLAIMS ALL WARRANTIES IN RESPECT OF CURSEFORGE FOR STUDIOS AND DOCUMENTATION INCLUDING, WITHOUT LIMITATION, EXPRESS OR IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. OVERWOLF SHALL NOT HAVE ANY LIABILITY WHATSOEVER IN RESPECT OF CURSEFORGE FOR STUDIOS, ANY DOCUMENTATION OR THIS AGREEMENT. DEVELOPER UNDERSTANDS THAT OVERWOLF IS PROVIDING CURSEFORGE FOR STUDIOS AND DOCUMENTATION ONLY SUBJECT TO THE WARRANTY DISCLAIMERS AND LIMITATIONS OF LIABILITY SET FORTH HEREIN, AND DEVELOPER EXPRESSLY AGREES TO SUCH PROVISIONS. OVERWOLF FURTHERMORE EXPRESSLY DISCLAIMS ANY RESPONSIBILITY WITH REGARD TO USER-GENERATED CONTENT OR OTHER USER SUBMISSIONS UPLOADED TO ANY OVERWOLF RELATED PLATFORM AS WELL AS ITS GRANTING, CHANGING OR RESCINDING OF MODERATION PRIVILEGES.

  10. Confidentiality. All non-public information in respect of CurseForge for Studios or the Documentation, or the methodologies of Overwolf, including in respect of the moderation of UGC, and any other non-public technical or business information provided by or in respect of Overwolf are proprietary and confidential information of Overwolf (the “Confidential Information”). Developer may not disclose such Confidential Information to any third party and may not make any use of such information except as may be strictly required by the Purpose. Developer may provide Confidential Information only for the Purpose and on a “need to know” basis to its employees who are subject to standard written non-use and non-disclosure obligations and provisions sufficient for Developer to observe its obligations and satisfy its representations and warranties under this Agreement. Developer shall be liable for the breach of the restrictions of this Agreement by its employees.

  11. Term and Termination. This Agreement shall be in effect from the date accepted by Developer or, if earlier, the date that Developer begins to download or use CurseForge for Studios (the “Effective Date”) and shall continue in effect for a period of three years thereafter (the “Initial Term”). The term of this Agreement shall thereafter renew automatically for subsequent renewal terms of three years each (each, a “Renewal Term” and, together with the Initial Term, the “Term”), unless one party provides written notice to the other party of its intention not to renew this Agreement at least thirty days prior to commencement of the applicable Renewal Term. Overwolf may terminate this Agreement upon sixty days prior written notice at any time for any reason. Either party may with written notice terminate this Agreement for the material breach of this Agreement by the other party, where such breach has not been cured within 30 days of the provision of written notice thereof by the non-breaching Party. [Upon termination or expiration of this Agreement for any reason any licenses to names, logos and trademarks provided by the Developer under Section 3 of this Agreement shall survive as may be necessary to maintain the full and on-going operation of any User-Generated Content created during the Term. 2 – 5 and 7 – 12 shall survive the expiration or termination of this Agreement for any reason.]

  12. Miscellaneous. This Agreement together with its exhibits and any documents referenced herein (such as any separate writing between the parties concerning payments or revenue sharing) constitute the entire agreement between the parties regarding the subject matter hereof and supersedes any and all other agreements between the parties regarding the subject matter hereof. In the event of any conflict or inconsistency between the terms of this Agreement and any referenced document the terms of this Agreement shall govern unless expressly set forth otherwise in the applicable exhibit or referenced document. Except as expressly set forth herein, this Agreement may not be modified or amended except in a writing executed by both parties. If any part of this Agreement shall be invalid or unenforceable, such part shall be interpreted to give the maximum force possible to such terms as possible under applicable law, and such invalidity or unenforceability shall not affect the validity or enforceability of any other part or provision of this Agreement. Overwolf may assign its rights or obligations under this Agreement to an affiliated company or to a successor company, including by way of a merger transaction or a purchase of all or substantially all of Overwolf’s assets or share capital, or to any other company succeeding to Overwolf’s business. Developer shall not assign any of its rights or obligations hereunder without Overwolf’s prior written consent. Assignments in violation of the foregoing shall be void. Overwolf may provide any notices required under this Agreement or any exhibits or documents referenced herein to the contact information provided by Developer as part of registration.

  13. Dispute Resolution; Governing Law. This Agreement shall be construed in accordance with the laws of the State of Delaware, excluding any conflict of laws provisions that would result in the application of the law of another jurisdiction. The United Nations Convention on contracts for the international sale of goods (CISG) does not apply. Any and all disputes, controversies, differences, or claims arising out of or relating to the Agreement shall be resolved through binding arbitration. The arbitration proceedings shall be conducted in accordance with the Commercial Rules of the American Arbitration Association including application of the Optional Rules for Emergency Measures of Protection and shall be governed by the United States Arbitration Act and this Section 13. The seat of arbitration shall be the State of Delaware and the language of the arbitration shall be English. Notwithstanding the foregoing, either party may seek an interim injunction or other interim equitable relief in any court of competent jurisdiction. The parties agree to keep confidential the existence of the arbitration, the arbitral proceedings, the submissions made by the parties and the decisions made by the arbitral tribunal, including its awards, except as required by the applicable law and to the extent not already in the public domain. EACH PARTY WAIVES ITS RIGHT TO GO TO COURT, TO A TRIAL BY JURY, AND TO PARTICIPATE IN A CLASS ACTION, CLASS ARBITRATION, OR OTHER REPRESENTATIVE PROCEEDING WITH RESPECT TO ANY CLAIM SUBJECT TO ARBITRATION.