ModWorkshop API Documentation

Postman collection → OpenAPI spec →

Introduction

The ModWorkshop API is available for everyone to use.

Do note that by using the API you must follow the following guidelines:

  1. Do not spam the API.

  2. Do not replicate the site or remove the need to visit the site to download mods. Exceptions: You are allowed to implement updates, you are allowed to make a mod downloadable to ease the process of joining a game with mods (Example: downloading maps). Integration to the site itself is fine too (We'll add ways to download mods directly to mod managers soon).

  3. Respect user's privacy and do not store their information without their permission.

Officially, at the moment the API only supports GET requests. More support will come in the future, but will require the use of API keys.

Authenticating requests

This API is not authenticated.

Games

API routes for interacting with game sections.

Get Game

GET
https://api.modworkshop.net
/games/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Game

PUT
PATCH
https://api.modworkshop.net
/games/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/games/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"mz\",
    \"buttons\": \"jflutblwmxkin\",
    \"thumbnail_file\": \"zfvfit\",
    \"banner_file\": \"fzuifejjiowtepizuhal\",
    \"short_name\": \"iegkii\",
    \"webhook_url\": \"http:\\/\\/crist.com\\/fugiat-ut-soluta-asperiores-odio-enim-sed-sit-eos\",
    \"mod_manager_ids\": [
        79
    ]
}"

GET games/{game_id}/admin-data

GET
https://api.modworkshop.net
/games/{game_id}/admin-data

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/admin-data" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Delete Game

DELETE
https://api.modworkshop.net
/games/{id}

Deletes a game, if it has no mods.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/games/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Game Section Data

GET
https://api.modworkshop.net
/games/{game_id}/game-section-data

It's like /mods but returns the game too. It's used to avoid 2 requests in the game section so it's faster.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/game-section-data" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"aqtpalzhobtopslrhopluewe\",
    \"limit\": 3,
    \"game_id\": 90,
    \"category_id\": 8,
    \"tags\": [
        14
    ],
    \"liked\": true,
    \"categories\": [
        18
    ],
    \"block_tags\": [
        63
    ],
    \"user_id\": 48,
    \"collab\": true,
    \"ignore_blocked_users\": true,
    \"sort\": \"bumped_at\"
}"
Example response:

Get Game User

GET
https://api.modworkshop.net
/games/{game_id}/users/{user}

Returns the user as they are supposed to be when inside of a game. Handles roles and colors.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
user
integer
required

The user.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/users/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Get Game User Data

GET
https://api.modworkshop.net
/games/{game_id}/users/{user_id}/data

Returns game data for a user. Currently used for roles.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
user_id
integer
required

The ID of the user.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/users/1/data" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Get Game Data

GET
https://api.modworkshop.net
/games/{game_id}/data

Returns basic game data like announcements. For moderators, it returns report and waiting mods count.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/data" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Set User Roles

PATCH
https://api.modworkshop.net
/games/{game_id}/users/{user_id}/roles
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
user_id
integer
required

The ID of the user.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/games/2/users/1/roles" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role_ids\": [
        76
    ]
}"

Roles


Get List of Games Roles

GET
https://api.modworkshop.net
/games/{game_id}/roles

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/roles" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"uukfdjqdslabbwmbdtm\",
    \"limit\": 25
}"
Example response:

Create Game Role

POST
https://api.modworkshop.net
/games/{game_id}/roles
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/roles" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"dotpfyttzumxxzym\",
    \"tag\": \"tfzcagbfgucolp\",
    \"desc\": \"crrdpjsxvzsyklqfwdkx\",
    \"color\": \"ggnwegh\",
    \"is_vanity\": false,
    \"self_assignable\": true,
    \"order\": 16
}"

Get Game Role

GET
https://api.modworkshop.net
/games/{game_id}/roles/{game_role_id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
game_role_id
integer
required

The ID of the game role.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/roles/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Game Role

PUT
PATCH
https://api.modworkshop.net
/games/{game_id}/roles/{game_role_id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
game_role_id
integer
required

The ID of the game role.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/games/2/roles/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"vvwpgqlqxresysnam\",
    \"tag\": \"vwpumjnjkr\",
    \"desc\": \"lhczxfjhqbdg\",
    \"color\": \"thqt\",
    \"is_vanity\": false,
    \"self_assignable\": false,
    \"order\": 18
}"

Delete Game Role

DELETE
https://api.modworkshop.net
/games/{game_id}/roles/{game_role_id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
game_role_id
integer
required

The ID of the game role.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/games/2/roles/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Mods

Files


List of Mod Files

GET
https://api.modworkshop.net
/mods/{mod_id}/files

Returns a list of files of a mod.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/1/files" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"alkepnkynpvrz\",
    \"limit\": 5
}"
Example response:

Upload Mod File

POST
https://api.modworkshop.net
/mods/{mod_id}/files
requires authentication

Upload a new file to a mod.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/files" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \

Get File

GET
https://api.modworkshop.net
/files/{id}

Returns a file. If the mod it belongs to is accessible.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the file.

Example:
4
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/files/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Update File

PUT
PATCH
https://api.modworkshop.net
/files/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the file.

Example:
4

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/files/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"oaqmiacl\",
    \"label\": \"wyaq\",
    \"desc\": \"vdmeeigqeo\",
    \"version\": \"rduuotlwdjhwdflycxfoqgwur\",
    \"display_order\": 2,
    \"image_id\": 14
}"

Delete File

DELETE
https://api.modworkshop.net
/files/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the file.

Example:
4
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/files/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Download File

GET
https://api.modworkshop.net
/files/{file_id}/download

Begins a download of a file

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

file_id
integer
required

The ID of the file.

Example:
4
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/files/4/download" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Get File Version

GET
https://api.modworkshop.net
/files/{file_id}/version

Returns the version set for the file

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

file_id
integer
required

The ID of the file.

Example:
4
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/files/4/version" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Download First File

GET
https://api.modworkshop.net
/mods/{mod_id}/download

Downloads the first available file

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/1/download" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Delete All Mod FIles

DELETE
https://api.modworkshop.net
/mods/{mod_id}/files
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/mods/1/files" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Images


Get List of Mod Images

GET
https://api.modworkshop.net
/mods/{mod_id}/images

Returns images of the mod

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/1/images" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"limit\": 18,
    \"only_visible\": true
}"
Example response:

Upload Image

POST
https://api.modworkshop.net
/mods/{mod_id}/images

Upload a new image to the mod

Headers

Content-Type
Example:
multipart/form-data
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/images" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "file=@/tmp/phpBoAgjI" 

Get Image

GET
https://api.modworkshop.net
/images/{id}

Returns data about a single image

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the image.

Example:
18
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/images/18" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Delete an Image

DELETE
https://api.modworkshop.net
/images/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the image.

Example:
11
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/images/11" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Delete all Mod Images

DELETE
https://api.modworkshop.net
/mods/{mod_id}/images
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/mods/1/images" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

GET
https://api.modworkshop.net
/mods/{mod_id}/links

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/1/links" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"duvplnuziefslqex\",
    \"limit\": 12
}"
Example response:
POST
https://api.modworkshop.net
/mods/{mod_id}/links
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/links" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
GET
https://api.modworkshop.net
/links/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the link.

Example:
12
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/links/12" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
PUT
PATCH
https://api.modworkshop.net
/links/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the link.

Example:
11

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/links/11" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"btsocjdpdngrjveweq\",
    \"url\": \"http:\\/\\/www.witting.org\\/laboriosam-assumenda-voluptatem-voluptatem-rerum-sed-cupiditate-ratione\",
    \"desc\": \"so\",
    \"label\": \"hwpfkjwzjypffbbdkrgieny\",
    \"version\": \"bxplimflwhwdr\",
    \"image_id\": 3
}"
DELETE
https://api.modworkshop.net
/links/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the link.

Example:
3
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/links/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Get List of Mods

GET
https://api.modworkshop.net
/games/{game_id}/mods

Returns many mods, has a few options for searching the right mods

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/mods" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"idocdpotgdbebxl\",
    \"limit\": 23,
    \"game_id\": 49,
    \"category_id\": 43,
    \"tags\": [
        55
    ],
    \"liked\": false,
    \"categories\": [
        27
    ],
    \"block_tags\": [
        82
    ],
    \"user_id\": 77,
    \"collab\": false,
    \"ignore_blocked_users\": true,
    \"sort\": \"score\"
}"
Example response:

Create Mod

POST
https://api.modworkshop.net
/games/{game_id}/mods
requires authentication

Creates a new mod

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/mods" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"jtritucjgfmzqdrjikzzl\",
    \"desc\": \"pusxescbirmpdwogegrcc\",
    \"license\": \"flyerjaf\",
    \"changelog\": \"kenywrlu\",
    \"instructions\": \"lufrro\",
    \"short_desc\": \"mfcjpq\",
    \"donation\": \"sxwjwmwtvxyzldsnmsyky\",
    \"version\": \"fhktv\",
    \"visibility\": \"private\",
    \"category_id\": 57,
    \"thumbnail_id\": 42,
    \"background_id\": 53,
    \"background_opacity\": 1,
    \"game_id\": 39,
    \"banner_id\": 39,
    \"instructs_template_id\": 58,
    \"tag_ids\": [
        45
    ],
    \"download_id\": 18,
    \"allowed_storage\": 15,
    \"download_type\": \"file\",
    \"comments_disabled\": true,
    \"send_for_approval\": true,
    \"publish\": false,
    \"disable_mod_managers\": false
}"

Get Mod

GET
https://api.modworkshop.net
/mods/{id}

Returns a single mod

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Mod

PUT
PATCH
https://api.modworkshop.net
/mods/{id}
requires authentication

Updates data of a mod

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/mods/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"zwdjyxkmobijmvgqdjzvfpm\",
    \"desc\": \"jjjleykxrwf\",
    \"license\": \"qdkwoypdm\",
    \"changelog\": \"kjixvqiwudrvsggjfjzfkjfl\",
    \"instructions\": \"hywxxxgnojszznz\",
    \"short_desc\": \"i\",
    \"donation\": \"jwbxnrsvqyiqgiiv\",
    \"version\": \"veedscrrlsvgtirjqmcmppnh\",
    \"visibility\": \"private\",
    \"category_id\": 43,
    \"thumbnail_id\": 52,
    \"background_id\": 40,
    \"background_opacity\": 1,
    \"game_id\": 15,
    \"banner_id\": 82,
    \"instructs_template_id\": 4,
    \"tag_ids\": [
        84
    ],
    \"download_id\": 25,
    \"allowed_storage\": 25,
    \"download_type\": \"link\",
    \"comments_disabled\": true,
    \"send_for_approval\": true,
    \"publish\": true,
    \"disable_mod_managers\": false
}"

Delete Mod

DELETE
https://api.modworkshop.net
/mods/{id}
requires authentication

Deletes a mod and all of its contents.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/mods/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Transfer Ownership of a Mod

PATCH
https://api.modworkshop.net
/mods/{mod_id}/owner
requires authentication

Creates a transfer request, only once a user accepts can the mod be fully transfered.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/mods/1/owner" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"owner_id\": 65,
    \"keep_owner_level\": \"viewer\"
}"

Cancel Transfer Ownership Request

PATCH
https://api.modworkshop.net
/mods/{mod_id}/owner/cancel
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request PATCH \
    "https://api.modworkshop.net/mods/1/owner/cancel" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Accept Transfer Ownership Request

PATCH
https://api.modworkshop.net
/mods/{mod_id}/owner/accept
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/mods/1/owner/accept" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"accept\": false
}"

POST Register a View

POST
https://api.modworkshop.net
/mods/{mod_id}/register-view

Registers a view for a mod, doesn't let you 'view' it twice Works with guests

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/register-view" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Register Download

POST
https://api.modworkshop.net
/mods/{mod_id}/register-download

Registers a download for a mod, doesn't let you 'download' it twice Works with guests

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/register-download" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

List of Waiting for Approval Mods

GET
https://api.modworkshop.net
/mods/waiting
requires authentication

Returns mods waiting for approval (approval == null)

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/waiting" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"fkropzybalgctg\",
    \"limit\": 21,
    \"game_id\": 58,
    \"category_id\": 3,
    \"tags\": [
        24
    ],
    \"liked\": false,
    \"categories\": [
        87
    ],
    \"block_tags\": [
        60
    ],
    \"user_id\": 38,
    \"collab\": true,
    \"ignore_blocked_users\": true,
    \"sort\": \"views\"
}"
Example response:

List of Waiting for Approval Mods

GET
https://api.modworkshop.net
/games/{game_id}/mods/waiting
requires authentication

Returns mods waiting for approval (approval == null)

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/mods/waiting" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"dzadzcu\",
    \"limit\": 16,
    \"game_id\": 21,
    \"category_id\": 39,
    \"tags\": [
        5
    ],
    \"liked\": false,
    \"categories\": [
        21
    ],
    \"block_tags\": [
        41
    ],
    \"user_id\": 39,
    \"collab\": false,
    \"ignore_blocked_users\": true,
    \"sort\": \"bumped_at\"
}"
Example response:
GET
https://api.modworkshop.net
/games/{game_id}/popular-and-latest

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/popular-and-latest" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Get Mod Version

GET
https://api.modworkshop.net
/mods/{mod_id}/version

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/1/version" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Get Mod Versions

GET
https://api.modworkshop.net
/mods/versions

Returns a list of versions (Up to 100 mods) Convenient way of getting many versions at once and avoid sending too many requests

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/versions" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"mod_ids\": [
        22
    ]
}"
Example response:

Suspend Mod

PATCH
https://api.modworkshop.net
/mods/{mod_id}/suspended
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/mods/1/suspended" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": false,
    \"notify\": false,
    \"reason\": \"ceturxnfyhrjbmnnzv\"
}"

Approve Mod

PATCH
https://api.modworkshop.net
/mods/{mod_id}/approved
requires authentication

Approves a waiting for approval mod.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/mods/1/approved" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": true,
    \"notify\": true,
    \"reason\": \"ymcjyra\"
}"

Report Mod

POST
https://api.modworkshop.net
/mods/{mod_id}/reports
requires authentication

Reports the mod for moderators to look at it.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/reports" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Toggle Like

POST
https://api.modworkshop.net
/mods/{mod_id}/toggle-liked
requires authentication

Toggles the state of the like of the mod

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/toggle-liked" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Get List of Liked Mods

GET
https://api.modworkshop.net
/mods/liked
requires authentication

Returns mods the user liked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/liked" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"ltyyaue\",
    \"limit\": 15,
    \"game_id\": 5,
    \"category_id\": 24,
    \"tags\": [
        64
    ],
    \"liked\": false,
    \"categories\": [
        84
    ],
    \"block_tags\": [
        76
    ],
    \"user_id\": 1,
    \"collab\": false,
    \"ignore_blocked_users\": false,
    \"sort\": \"name\"
}"
Example response:

Members


Accept Member Request

PATCH
https://api.modworkshop.net
/mods/{mod_id}/members/accept
requires authentication

Accepts incoming member request and make it active or delete it if rejected.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/mods/1/members/accept" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"accept\": false
}"

Create Mod Member

POST
https://api.modworkshop.net
/mods/{mod_id}/members
requires authentication

Add someone to be a mod member, it sends them a notification so they can accept the request

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/members" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 42,
    \"level\": \"collaborator\"
}"

Edit Member

PUT
PATCH
https://api.modworkshop.net
/mods/{mod_id}/members/{id}

@authenticated

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
id
integer
required

The ID of the member.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/mods/1/members/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"level\": \"collaborator\"
}"

Remove Member

DELETE
https://api.modworkshop.net
/mods/{mod_id}/members/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
id
integer
required

The ID of the member.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/mods/1/members/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Dependencies


Create Dependency

POST
https://api.modworkshop.net
/mods/{mod_id}/dependencies
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/dependencies" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Edit Dependency

PUT
PATCH
https://api.modworkshop.net
/mods/{mod_id}/dependencies/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
id
integer
required

The ID of the dependency.

Example:
8
Example request:
curl --request PUT \
    "https://api.modworkshop.net/mods/1/dependencies/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Delete Dependency

DELETE
https://api.modworkshop.net
/mods/{mod_id}/dependencies/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
id
integer
required

The ID of the dependency.

Example:
13
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/mods/1/dependencies/13" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Comments


Get List of Comments

GET
https://api.modworkshop.net
/mods/{mod_id}/comments

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/mods/1/comments" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"vtdqucna\",
    \"limit\": 23
}"
Example response:

Create Comment

POST
https://api.modworkshop.net
/mods/{mod_id}/comments
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/comments" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Subscribe to Comment

POST
https://api.modworkshop.net
/mods/{mod_id}/comments/subscription
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/mods/1/comments/subscription" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Unsubscribe from Comment

DELETE
https://api.modworkshop.net
/mods/{mod_id}/comments/subscription
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

mod_id
integer
required

The ID of the mod.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/mods/1/comments/subscription" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Categories


Get List of Categories

GET
https://api.modworkshop.net
/games/{game_id}/categories

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"vulslpnm\",
    \"limit\": 8
}"
Example response:

Create Category

POST
https://api.modworkshop.net
/games/{game_id}/categories
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Get Category

GET
https://api.modworkshop.net
/categories/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the category.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/categories/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Category

PUT
PATCH
https://api.modworkshop.net
/categories/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the category.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/categories/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"bpslysinoqlccxmaezh\",
    \"desc\": \"jl\",
    \"game_id\": 80,
    \"parent_id\": 35,
    \"display_order\": 23,
    \"thumbnail_file\": \"axbsgcrbrfvqn\",
    \"approval_only\": false,
    \"webhook_url\": \"http:\\/\\/kunze.com\\/debitis-itaque-dicta-eaque-amet.html\",
    \"disable_mod_managers\": true
}"

Deletes Category. Only if it's empty

DELETE
https://api.modworkshop.net
/categories/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the category.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/categories/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Mass updates mods of a category, only used to move mods.

PATCH
https://api.modworkshop.net
/categories/{category_id}/mods

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

category_id
integer
required

The ID of the category.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/categories/1/mods" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"category_id\": 34,
    \"are_you_sure\": false
}"

Users

API routes for interacting with users

Get List of Users

GET
https://api.modworkshop.net
/games/{game_id}/users

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/users" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"vizeayjngcsmgfztf\",
    \"limit\": 3
}"
Example response:

Edit User

PUT
PATCH
https://api.modworkshop.net
/users/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the user.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/users/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"ekcqgvlmzwnhwrhypvwdjbcj\",
    \"unique_name\": \"djgebjb\",
    \"custom_color\": \"bl\",
    \"bio\": \"alurzj\",
    \"email\": \"corwin.madisyn@example.org\",
    \"custom_title\": \"uhkcswnexvxuebx\",
    \"private_profile\": false,
    \"invisible\": false,
    \"donation_url\": \"http:\\/\\/predovic.org\\/soluta-neque-et-quas-culpa-nobis-veniam-ea\",
    \"show_tag\": \"supporter_or_role\",
    \"password\": \"3l^NkBmjCb&BV\",
    \"extra\": {
        \"home_show_last_games\": true,
        \"home_show_mods\": false,
        \"home_show_threads\": false,
        \"game_show_mods\": false,
        \"game_show_threads\": false,
        \"auto_subscribe_to_mod\": false,
        \"auto_subscribe_to_thread\": true,
        \"background_opacity\": 1
    }
}"

Delete User

DELETE
https://api.modworkshop.net
/users/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the user.

Example:
1

Body Parameters

Example request:
curl --request DELETE \
    "https://api.modworkshop.net/users/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"unique_name\": \"grnlmbukpexajolzmkyqcadl\",
    \"are_you_sure\": true
}"

Get User

GET
https://api.modworkshop.net
/users/{user}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user
integer
required

The ID of the user

Example:
18
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/users/18" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

GET users/{user_id}/comments

GET
https://api.modworkshop.net
/users/{user_id}/comments

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_id
integer
required

The ID of the user.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/users/1/comments" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"iinxacdiidiumknfsnjhl\",
    \"limit\": 5
}"
Example response:

GET users/{user_id}/threads

GET
https://api.modworkshop.net
/users/{user_id}/threads

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_id
integer
required

The ID of the user.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/users/1/threads" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"ocvcditotdprglyyes\",
    \"limit\": 24,
    \"category_name\": \"qigruecpbr\",
    \"category_id\": 41,
    \"tags\": [
        55
    ],
    \"no_pins\": false,
    \"forum_id\": 70
}"
Example response:

Set User Roles

PATCH
https://api.modworkshop.net
/users/{user_id}/roles
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_id
integer
required

The ID of the user.

Example:
1

Body Parameters

Example request:
curl --request PATCH \
    "https://api.modworkshop.net/users/1/roles" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role_ids\": [
        86
    ]
}"

Delete User Mods

DELETE
https://api.modworkshop.net
/users/{user_id}/mods
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_id
integer
required

The ID of the user.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/users/1/mods" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Delete User Discussions

DELETE
https://api.modworkshop.net
/users/{user_id}/discussions
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_id
integer
required

The ID of the user.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/users/1/discussions" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

POST users/{user_id}/purge

POST
https://api.modworkshop.net
/users/{user_id}/purge

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_id
integer
required

The ID of the user.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/users/1/purge" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Report User

POST
https://api.modworkshop.net
/users/{user_id}/reports
requires authentication

Reports the user for moderators to look at it.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_id
integer
required

The ID of the user.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/users/1/reports" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Roles

Get Role

GET
https://api.modworkshop.net
/roles/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the role.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/roles/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Role

PUT
PATCH
https://api.modworkshop.net
/roles/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the role.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/roles/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"urkddhpyulhyy\",
    \"tag\": \"itzazy\",
    \"desc\": \"xezuhiuwp\",
    \"color\": \"rrhs\",
    \"is_vanity\": false,
    \"self_assignable\": false,
    \"order\": 24
}"

Delete Role

DELETE
https://api.modworkshop.net
/roles/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the role.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/roles/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Endpoints

Display a listing of the resource.

GET
https://api.modworkshop.net
/games/{game_id}/mod-managers

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/mod-managers" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"qjofwochzsbzfinkd\",
    \"limit\": 14
}"
Example response:

Store a newly created resource in storage.

POST
https://api.modworkshop.net
/games/{game_id}/mod-managers

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/mod-managers" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Tags

Tags

GET
https://api.modworkshop.net
/games/{game_id}/tags

Returns a list of tags

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/tags" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"vyehvgiig\",
    \"limit\": 19
}"
Example response:

Create Tag

POST
https://api.modworkshop.net
/games/{game_id}/tags
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/tags" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Get Tag

GET
https://api.modworkshop.net
/tags/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the tag.

Example:
17
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/tags/17" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Tag

PUT
PATCH
https://api.modworkshop.net
/tags/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the tag.

Example:
3

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/tags/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"pyzvybhlrxwfdmaytq\",
    \"color\": \"hjs\",
    \"notice\": \"ubksgqojg\",
    \"notice_type\": \"warning\",
    \"type\": \"forum\",
    \"notice_localized\": false
}"

Delete Tag

DELETE
https://api.modworkshop.net
/tags/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the tag.

Example:
8
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/tags/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Documents

Get List of Documents

GET
https://api.modworkshop.net
/games/{game_id}/documents

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/documents" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"rhkxnlxetqoag\",
    \"limit\": 8
}"
Example response:

Create Document

POST
https://api.modworkshop.net
/games/{game_id}/documents
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/documents" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Get Document

GET
https://api.modworkshop.net
/documents/{document}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

document
integer
required

The document.

Example:
8
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/documents/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Document

PUT
PATCH
https://api.modworkshop.net
/documents/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the document.

Example:
16

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/documents/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"igtxftqyzefxvait\",
    \"desc\": \"lcjr\",
    \"is_unlisted\": true,
    \"game_id\": 10,
    \"url_name\": \"vjhunrkogwvs\"
}"

Delete Document

DELETE
https://api.modworkshop.net
/documents/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the document.

Example:
19
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/documents/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Forum

Get Forum

GET
https://api.modworkshop.net
/forums/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the forum.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/forums/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Forums

Categories


Get List of Forum Categories

GET
https://api.modworkshop.net
/games/{game_id}/forum-categories

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/forum-categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"yecdctqupb\",
    \"limit\": 3
}"
Example response:

Create Forum Category

POST
https://api.modworkshop.net
/games/{game_id}/forum-categories
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/forum-categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Get Forum Category

GET
https://api.modworkshop.net
/forum-categories/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the forum category.

Example:
6
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/forum-categories/6" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Forum Category

PUT
PATCH
https://api.modworkshop.net
/forum-categories/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the forum category.

Example:
10

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/forum-categories/10" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"nhgqyeujlbhcpfpsnsfw\",
    \"emoji\": \"fqsisn\",
    \"desc\": \"bareufmvotpg\",
    \"is_private\": false,
    \"banned_can_post\": true,
    \"private_threads\": false,
    \"display_order\": 23
}"

Delete Forum Category

DELETE
https://api.modworkshop.net
/forum-categories/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the forum category.

Example:
15
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/forum-categories/15" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Instructions Templates

Get list of Instructions Templates

GET
https://api.modworkshop.net
/games/{game_id}/instructs-templates
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/instructs-templates" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"ecempxcvooafblqrjlpcy\",
    \"limit\": 20
}"
Example response:

Create Instructions Template

POST
https://api.modworkshop.net
/games/{game_id}/instructs-templates
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2
Example request:
curl --request POST \
    "https://api.modworkshop.net/games/2/instructs-templates" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Reports

Get List of Reports

GET
https://api.modworkshop.net
/games/{game_id}/reports
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

game_id
integer
required

The ID of the game.

Example:
2

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/games/2/reports" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"gwmndpm\",
    \"limit\": 22
}"
Example response:

Threads

Get List of Threads

GET
https://api.modworkshop.net
/forums/{forum_id}/threads

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

forum_id
integer
required

The ID of the forum.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/forums/1/threads" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"tdxek\",
    \"limit\": 7,
    \"category_name\": \"htntrorcmjo\",
    \"category_id\": 24,
    \"tags\": [
        56
    ],
    \"no_pins\": false,
    \"forum_id\": 52
}"
Example response:

Create Thread

POST
https://api.modworkshop.net
/forums/{forum_id}/threads
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

forum_id
integer
required

The ID of the forum.

Example:
1

Body Parameters

Example request:
curl --request POST \
    "https://api.modworkshop.net/forums/1/threads" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"awqznvkccnffkbstbizkeif\",
    \"content\": \"yfswvaxubbginaawfbcfb\",
    \"announce_until\": \"2024-07-19T00:21:26\",
    \"announce\": true,
    \"category_id\": 55
}"

Get Thread

GET
https://api.modworkshop.net
/threads/{id}

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the thread.

Example:
1
Example request:
curl --request GET \
    --get "https://api.modworkshop.net/threads/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:

Edit Thread

PUT
PATCH
https://api.modworkshop.net
/threads/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the thread.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://api.modworkshop.net/threads/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"wdoomnbduqqcifwgzbch\",
    \"content\": \"wdym\",
    \"category_id\": 76,
    \"answer_comment_id\": 13,
    \"announce_until\": \"2024-07-19T00:21:26\",
    \"announce\": true,
    \"tag_ids\": [
        81
    ],
    \"pinned\": true,
    \"locked\": true
}"

Delete Thread

DELETE
https://api.modworkshop.net
/threads/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the thread.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/threads/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Report Thread

POST
https://api.modworkshop.net
/threads/{thread_id}/reports
requires authentication

Reports the thread for moderators to look at it.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

thread_id
integer
required

The ID of the thread.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/threads/1/reports" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Comments


Get List of Thread Comments

GET
https://api.modworkshop.net
/threads/{thread_id}/comments

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

thread_id
integer
required

The ID of the thread.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.modworkshop.net/threads/1/comments" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"query\": \"lwmtfwqrewqgdbbmlldl\",
    \"limit\": 16
}"
Example response:

Create Thread Comment

POST
https://api.modworkshop.net
/threads/{thread_id}/comments
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

thread_id
integer
required

The ID of the thread.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/threads/1/comments" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Subscribe to Thread Comment

POST
https://api.modworkshop.net
/threads/{thread_id}/comments/subscription
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

thread_id
integer
required

The ID of the thread.

Example:
1
Example request:
curl --request POST \
    "https://api.modworkshop.net/threads/1/comments/subscription" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Unsubscribe to Thread Comment

DELETE
https://api.modworkshop.net
/threads/{thread_id}/comments/subscription
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

thread_id
integer
required

The ID of the thread.

Example:
1
Example request:
curl --request DELETE \
    "https://api.modworkshop.net/threads/1/comments/subscription" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"