Skip to content

Create a project

POST
/project

Authorizations

Request Body

New project

object
data
required
object
project_type
required
string
Allowed values: mod modpack
modpack
initial_versions

A list of initial versions to upload with the created project. Deprecated - please upload version files after initial upload.

Array
object
name

The name of this version

string
Version 1.0.0
version_number

The version number. Ideally will follow semantic versioning

string
1.0.0
changelog

The changelog for this version

string
nullable
List of changes in this version: ...
dependencies

A list of specific versions of projects that this version depends on

Array<object>
object
version_id

The ID of the version that this version depends on

string
nullable
IIJJKKLL
project_id

The ID of the project that this version depends on

string
nullable
QQRRSSTT
file_name

The file name of the dependency, mostly used for showing external dependencies on modpacks

string
nullable
sodium-fabric-mc1.19-0.4.2+build.16.jar
dependency_type
required

The type of dependency that this version has

string
Allowed values: required optional incompatible embedded
required
game_versions

A list of versions of Minecraft that this version supports

Array<string>
[
"1.16.5",
"1.17.1"
]
version_type

The release channel for this version

string
Allowed values: release beta alpha
release
loaders

The mod loaders that this version supports. In case of resource packs, use “minecraft”

Array<string>
[
"fabric",
"forge",
"minecraft"
]
featured

Whether the version is featured or not

boolean
true
status
string
Allowed values: listed archived draft unlisted scheduled unknown
listed
requested_status
string
nullable
Allowed values: listed archived draft unlisted
primary_file

The hash format and the hash of the new primary file

Array<string>
[
"sha1",
"aaaabbbbccccddddeeeeffffgggghhhhiiiijjjj"
]
file_types

A list of file_types to edit

Array<object>
object
algorithm
required

The hash algorithm of the hash specified in the hash field

string
sha1
hash
required

The hash of the file you’re editing

string
aaaabbbbccccddddeeeeffffgggghhhhiiiijjjj
file_type
required

The hash algorithm of the file you’re editing

string
nullable
Allowed values: required-resource-pack optional-resource-pack
required-resource-pack
is_draft

Whether the project should be saved as a draft instead of being sent to moderation for review. Deprecated - please always mark this as true.

boolean
true
gallery_items

Gallery images to be uploaded with the created project. Deprecated - please upload gallery images after initial upload.

Array<object>
object
item

The name of the multipart item where the gallery media is located

string
featured

Whether the image is featured in the gallery

boolean
true
title

The title of the gallery image

string
nullable
My awesome screenshot!
description

The description of the gallery image

string
nullable
This awesome screenshot shows all of the blocks in my mod!
ordering

The order of the gallery image. Gallery images are sorted by this field and then alphabetically by title.

integer
0
icon

Project icon file

string format: binary
Allowed values: *.png *.jpg *.jpeg *.bmp *.gif *.webp *.svg *.svgz *.rgb

Responses

200

Expected response to a valid request

object
id
required

The ID of the project, encoded as a base62 string

string
AABBCCDD
team
required

The ID of the team that has ownership of this project

string
MMNNOOPP
body_url

The link to the long description of the project. Always null, only kept for legacy compatibility.

string
nullable
moderator_message

A message that a moderator sent regarding the project

object
message

The message that a moderator has left for the project

string
body

The longer body of the message that a moderator has left for the project

string
nullable
published
required

The date the project was published

string format: ISO-8601
updated
required

The date the project was last updated

string format: ISO-8601
approved

The date the project’s status was set to an approved status

string format: ISO-8601
nullable
queued

The date the project’s status was submitted to moderators for review

string format: ISO-8601
nullable
followers
required

The total number of users following the project

integer
license

The license of the project

object
id

The SPDX license ID of a project

string
LGPL-3.0-or-later
name

The long name of a license

string
GNU Lesser General Public License v3 or later
url

The URL to this license

string
nullable
versions

A list of the version IDs of the project (will never be empty unless draft status)

Array<string>
[
"IIJJKKLL",
"QQRRSSTT"
]
game_versions

A list of all of the game versions supported by the project

Array<string>
[
"1.19",
"1.19.1",
"1.19.2",
"1.19.3"
]
loaders

A list of all of the loaders supported by the project

Array<string>
[
"forge",
"fabric",
"quilt"
]
gallery

A list of images that have been uploaded to the project’s gallery

Array<object>
object
url
required

The URL of the gallery image

string
https://cdn.modrinth.com/data/AABBCCDD/images/009b7d8d6e8bf04968a29421117c59b3efe2351a.png
featured
required

Whether the image is featured in the gallery

boolean
true
title

The title of the gallery image

string
nullable
My awesome screenshot!
description

The description of the gallery image

string
nullable
This awesome screenshot shows all of the blocks in my mod!
created
required

The date and time the gallery image was created

string format: ISO-8601
ordering

The order of the gallery image. Gallery images are sorted by this field and then alphabetically by title.

integer
0

400

Request was invalid, see given error

object
error
required

The name of the error

string
invalid_input
description
required

The contents of the error

string
Error while parsing multipart payload

401

Incorrect token scopes or no authorization to access the requested item(s)

object
error
required

The name of the error

string
unauthorized
description
required

The contents of the error

string
Authentication Error: Invalid Authentication Credentials