---
title: "POST /v1/mods"
method: POST
path: "/v1/mods"
tags: ["Mods"]
---

# POST /v1/mods

`POST /v1/mods`

Get a list of mods belonging the the same game.

## Request body

- GetExpandedModsByIdsListRequestBody
  - `modIds` integer[]
  - `devModIds` integer[]
  - `filterPcOnly` boolean, nullable

## Response `200`

- ApiResponseOfListOfModDto
  - `data` ModDto[] — The response data
    - `id` integer — The mod id
    - `gameId` integer — 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
      - `websiteUrl` string
      - `wikiUrl` string
      - `issuesUrl` string
      - `sourceUrl` string
    - `summary` string — Mod summary
    - `status` 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 — 1 = New 2 = ChangesRequired 3 = UnderSoftReview 4 = Approved 5 = Rejected 6 = ChangesMade 7 = Inactive 8 = Abandoned 9 = Deleted 10 = UnderReview
    - `downloadCount` integer — Number of downloads for the mod
    - `isFeatured` boolean — Whether the mod is included in the featured mods list
    - `primaryCategoryId` integer — 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
      - `id` integer — The category id
      - `gameId` integer — 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, nullable — A top level category for other categories
      - `classId` integer, nullable — The class id of the category, meaning - the class of which this category is under
      - `parentCategoryId` integer, nullable — The parent category for this category
      - `displayIndex` integer, nullable — The display index for this category
    - `classId` integer, nullable — The class id this mod belongs to
    - `authors` ModAuthor[] — List of the mod's authors
      - `id` integer
      - `name` string
      - `url` string
      - `avatarUrl` string
    - `logo` ModAsset
      - `id` integer
      - `modId` integer
      - `title` string
      - `description` string
      - `thumbnailUrl` string
      - `url` string
    - `videos` ModAsset[] — List of videos assets
      - `id` integer
      - `modId` integer
      - `title` string
      - `description` string
      - `thumbnailUrl` string
      - `url` string
    - `mainFileId` integer — The id of the main file of the mod
    - `latestFiles` File[] — List of latest files of the mod
      - `id` integer — The file id
      - `gameId` integer — The game id related to the mod that this file belongs to
      - `modId` integer — 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` 1 | 2 | 3 — 1 = Release 2 = Beta 3 = Alpha
      - `fileStatus` 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 — 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
      - `hashes` FileHash[] — The file hash (i.e. md5 or sha1)
        - `value` string
        - `algo` 1 | 2 — 1 = Sha1 2 = Md5
      - `fileDate` string, date-time — The file timestamp
      - `fileLength` integer — The file length in bytes
      - `downloadCount` integer — The number of downloads for the file
      - `fileSizeOnDisk` integer, nullable — 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
        - `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, nullable — Game version type id
      - `dependencies` FileDependency[] — List of dependencies files
        - `modId` integer
        - `relationType` 1 | 2 | 3 | 4 | 5 | 6 — 1 = EmbeddedLibrary 2 = OptionalDependency 3 = RequiredDependency 4 = Tool 5 = Incompatible 6 = Include
      - `exposeAsAlternative` boolean, nullable
      - `parentProjectFileId` integer, nullable
      - `alternateFileId` integer, nullable
      - `isServerPack` boolean, nullable
      - `serverPackFileId` integer, nullable
      - `isEarlyAccessContent` boolean, nullable
      - `earlyAccessEndDate` string, date-time, nullable
      - `fileFingerprint` integer
      - `modules` FileModule[]
        - `name` string
        - `fingerprint` integer
      - `cookingInfo` CookerInfo
        - `cookerVersion` string
        - `cookerRevision` string
    - `supportsCrossPlatform` boolean, nullable
    - `latestFilesIndexes` FileIndex[] — List of file related details for the latest files of the mod
      - `gameVersion` string
      - `fileId` integer
      - `filename` string
      - `releaseType` 1 | 2 | 3 — 1 = Release 2 = Beta 3 = Alpha
      - `gameVersionTypeId` integer, nullable
      - `modLoader` 0 | 1 | 2 | 3 | 4 | 5 | 6 — 0 = Any 1 = Forge 2 = Cauldron 3 = LiteLoader 4 = Fabric 5 = Quilt 6 = NeoForge
    - `latestEarlyAccessFilesIndexes` FileIndex[] — List of file related details for the latest early access files of the mod
      - `gameVersion` string
      - `fileId` integer
      - `filename` string
      - `releaseType` 1 | 2 | 3 — 1 = Release 2 = Beta 3 = Alpha
      - `gameVersionTypeId` integer, nullable
      - `modLoader` 0 | 1 | 2 | 3 | 4 | 5 | 6 — 0 = Any 1 = Forge 2 = Cauldron 3 = LiteLoader 4 = Fabric 5 = Quilt 6 = NeoForge
    - `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, nullable — Is mod allowed to be distributed
    - `gamePopularityRank` integer — 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
    - `hasCommentsEnabled` boolean, nullable — Does the mod enable comments
    - `thumbsUpCount` integer — The mod's thumbs up count
    - `ratingDetails` RatingDetails
      - `rating` number, nullable
      - `totalRatings` integer, nullable
      - `positiveRatings` integer, nullable
      - `score` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 — 0 = NotEnoughReviews 1 = OverwhelminglyPositive 2 = VeryPositive 3 = Positive 4 = MostlyPositive 5 = Mixed 6 = MostlyNegative 7 = Negative 8 = VeryNegative 9 = OverwhelminglyNegative
    - `serverAffiliation` ServerAffiliation
      - `isEnabled` boolean
      - `isDefaultBanner` boolean
      - `hasDiscount` boolean
      - `affiliationService` 1 — 1 = Bisect
      - `defaultBannerCustomTitle` string
      - `customImageUrl` string
      - `affiliationLink` string
    - `socialLinks` SocialLink[] — The mod's social links
      - `type` 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 — 1 = Mastodon 2 = Discord 3 = Website 4 = Facebook 5 = Twitter 6 = Instagram 7 = Patreon 8 = Twitch 9 = Reddit 10 = Youtube 11 = TikTok 12 = Pinterest 13 = Github 14 = Bsky 15 = Paypal 16 = PaypalHosted 17 = GithubSponsors 18 = Kofi 19 = BuyMeACoffee
      - `url` string
    - `featuredProjectTag` 0 | 1 | 2 | 3 — 0 = None 1 = Sponsored 2 = HiddenGem 3 = Popular
    - `screenshots` ModAsset[] — List of screenshots assets
      - `id` integer
      - `modId` integer
      - `title` string
      - `description` string
      - `thumbnailUrl` string
      - `url` string

## Other responses

- `400`
- `500`

---

[API](https://skmtc.net/curseforge/apis/curseforge-core-api.md) · [All operations](https://skmtc.net/curseforge/apis/curseforge-core-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/curseforge/curseforge-core-api/versions/fc4b8d905e07/schema)
