Resource Versions
Manage versions and files for marketplace resources.
Base Endpoint
Section titled “Base Endpoint”All version endpoints are prefixed with /resources/:resourceId/versions
Create Version
Section titled “Create Version”POST /resources/:resourceId/versionsCreate a new version for a resource.
Authentication: Required (must be owner or contributor)
URL Parameters:
resourceId(string) - Resource ID
Request Body:
{ "version": "1.0.0", "changelog": "Initial release", "hytaleVersionIds": ["hytale-version-id-1"], "isPreRelease": false}Response:
{ "id": "version-id", "resourceId": "resource-id", "version": "1.0.0", "changelog": "Initial release", "downloadCount": 0, "isPreRelease": false, "createdAt": "2024-01-01T00:00:00Z"}Get All Versions
Section titled “Get All Versions”GET /resources/:resourceId/versionsGet all versions for a resource.
Authentication: Not required
URL Parameters:
resourceId(string) - Resource ID
Response:
{ "versions": [ { "id": "version-id", "version": "1.0.0", "changelog": "Initial release", "downloadCount": 150, "fileCount": 2, "primaryFileId": "file-id", "isPreRelease": false, "createdAt": "2024-01-01T00:00:00Z", "hytaleVersions": [...] } ]}Get Version by ID
Section titled “Get Version by ID”GET /resources/:resourceId/versions/:versionIdGet details of a specific version.
Authentication: Not required
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version ID
Response:
{ "version": { "id": "version-id", "version": "1.0.0", "changelog": "Initial release", "downloadCount": 150, "files": [...], "primaryFileId": "file-id", "hytaleVersions": [...] }}Update Version
Section titled “Update Version”PATCH /resources/:resourceId/versions/:versionIdUpdate a version’s details.
Authentication: Required (must be owner or contributor)
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version ID
Request Body: (all fields optional)
{ "version": "1.0.1", "changelog": "Bug fixes", "hytaleVersionIds": ["version-id"], "isPreRelease": false}Delete Version
Section titled “Delete Version”DELETE /resources/:resourceId/versions/:versionIdDelete a version.
Authentication: Required (must be owner or contributor)
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version ID
Response:
{ "message": "Version deleted successfully"}Version Files
Section titled “Version Files”Upload Version File
Section titled “Upload Version File”POST /resources/:resourceId/versions/:versionId/filesUpload a file for a version.
Authentication: Required (must be owner or contributor)
Content-Type: multipart/form-data
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version ID
Form Data:
file(file) - File to upload (JAR, ZIP, etc.)displayName(string, optional) - Custom display name for the file
Response:
{ "id": "file-id", "versionId": "version-id", "fileName": "my-mod-1.0.0.jar", "displayName": "Main File", "fileSize": 1048576, "downloadCount": 0, "isPrimary": false, "downloadUrl": "https://...", "createdAt": "2024-01-01T00:00:00Z"}Delete Version File
Section titled “Delete Version File”DELETE /resources/:resourceId/versions/:versionId/files/:fileIdDelete a file from a version.
Authentication: Required (must be owner or contributor)
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version IDfileId(string) - File ID
Set Primary File
Section titled “Set Primary File”PATCH /resources/:resourceId/versions/:versionId/files/primarySet a file as the primary download for a version.
Authentication: Required (must be owner or contributor)
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version ID
Request Body:
{ "fileId": "file-id"}Download
Section titled “Download”Download Specific File
Section titled “Download Specific File”GET /resources/:resourceId/versions/:versionId/download/:fileIdDownload a specific file from a version. This endpoint redirects to the actual download URL.
Authentication: Not required (but recommended for download tracking)
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version IDfileId(string) - File ID
Response: HTTP 302 redirect to download URL
Download Primary File
Section titled “Download Primary File”GET /resources/:resourceId/versions/:versionId/downloadDownload the primary file of a version. This endpoint redirects to the actual download URL.
Authentication: Not required (but recommended for download tracking)
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version ID
Response: HTTP 302 redirect to download URL
Version Management
Section titled “Version Management”Set as Latest Version
Section titled “Set as Latest Version”PATCH /resources/:resourceId/versions/:versionId/set-latestMark this version as the latest version for the resource.
Authentication: Required (must be owner or contributor)
URL Parameters:
resourceId(string) - Resource IDversionId(string) - Version ID
Response:
{ "message": "Version set as latest", "version": { "id": "version-id", "isLatest": true }}