Resources
Manage marketplace resources including mods, plugins, tools, and scripts.
Base Endpoint
Section titled “Base Endpoint”All resource endpoints are prefixed with /resources
Resource Management
Section titled “Resource Management”Get All Resources
Section titled “Get All Resources”GET /resourcesGet all approved resources with optional filters for the public marketplace.
Authentication: Not required (public endpoint)
Query Parameters:
type(string, optional) - Filter by resource type (MOD, PLUGIN, TEXTURE_PACK, TOOLS_SCRIPTS)search(string, optional) - Search query for resource nametags(array, optional) - Filter by tag IDscategories(array, optional) - Filter by category IDsversions(array, optional) - Filter by Hytale version IDssort(string, optional) - Sort order (newest, popular, downloads)limit(number, optional) - Number of results per pageoffset(number, optional) - Pagination offset
Response:
{ "resources": [...], "total": 100}Get Resource Categories
Section titled “Get Resource Categories”GET /resources/categoriesGet categories filtered by resource type.
Authentication: Not required (public endpoint)
Query Parameters:
type(string, optional) - Filter categories by resource type
Create Resource
Section titled “Create Resource”POST /resourcesCreate a new resource.
Authentication: Required
Request Body:
{ "name": "My Resource", "slug": "my-resource", "shortDescription": "A brief description", "description": "Full markdown description", "type": "MOD", "categoryIds": ["cat-id-1", "cat-id-2"], "tagIds": ["tag-id-1", "tag-id-2"], "hytaleVersionIds": ["version-id-1"], "ownerId": "user-or-team-id", "ownerType": "USER"}Get My Resources
Section titled “Get My Resources”GET /resources/meGet resources owned by the authenticated user.
Authentication: Required
Query Parameters:
page(number, optional) - Page numberlimit(number, optional) - Results per page
Get Resource by ID
Section titled “Get Resource by ID”GET /resources/:idGet a specific resource by its ID.
Authentication: Not required
URL Parameters:
id(string) - Resource ID
Get Resource by Slug
Section titled “Get Resource by Slug”GET /resources/slug/:slugGet a resource by its unique slug.
Authentication: Optional (returns additional data if authenticated)
URL Parameters:
slug(string) - Resource slug
Update Resource
Section titled “Update Resource”PATCH /resources/:idUpdate an existing resource.
Authentication: Required (must be owner or contributor)
URL Parameters:
id(string) - Resource ID
Request Body: (all fields optional)
{ "name": "Updated Name", "shortDescription": "Updated description", "description": "Updated full description", "categoryIds": ["new-cat-id"], "tagIds": ["new-tag-id"], "hytaleVersionIds": ["version-id"]}Delete Resource
Section titled “Delete Resource”DELETE /resources/:idDelete a resource.
Authentication: Required (must be owner)
URL Parameters:
id(string) - Resource ID
Resource Files
Section titled “Resource Files”Upload Resource Icon
Section titled “Upload Resource Icon”POST /resources/:id/iconUpload an icon image for a resource.
Authentication: Required (must be owner or contributor)
Content-Type: multipart/form-data
Form Data:
icon(file) - Image file (PNG, JPG, WEBP)
URL Parameters:
id(string) - Resource ID
Upload Resource Banner
Section titled “Upload Resource Banner”POST /resources/:id/bannerUpload a banner image for a resource.
Authentication: Required (must be owner or contributor)
Content-Type: multipart/form-data
Form Data:
banner(file) - Image file (PNG, JPG, WEBP)
URL Parameters:
id(string) - Resource ID
User/Team Resources
Section titled “User/Team Resources”Get User Resources
Section titled “Get User Resources”GET /resources/user/:userIdGet all resources created by a specific user.
Authentication: Not required
URL Parameters:
userId(string) - User ID
Query Parameters:
page(number, optional) - Page numberlimit(number, optional) - Results per page
Get Team Resources
Section titled “Get Team Resources”GET /resources/team/:teamIdGet all resources created by a specific team.
Authentication: Not required
URL Parameters:
teamId(string) - Team ID
Query Parameters:
page(number, optional) - Page numberlimit(number, optional) - Results per page
Moderation
Section titled “Moderation”Get Pending Resources
Section titled “Get Pending Resources”GET /resources/moderation/pendingGet resources pending moderation approval.
Authentication: Required (Moderator, Admin, or Super Admin)
Query Parameters:
page(number, optional) - Page numberlimit(number, optional) - Results per page
Get Resources by Status
Section titled “Get Resources by Status”GET /resources/moderation/status/:statusGet resources filtered by moderation status.
Authentication: Required (Moderator, Admin, or Super Admin)
URL Parameters:
status(string) - Resource status (PENDING, APPROVED, REJECTED, SUSPENDED)
Query Parameters:
page(number, optional) - Page numberlimit(number, optional) - Results per page
Moderate Resource
Section titled “Moderate Resource”PATCH /resources/moderation/:id/moderateApprove, reject, or suspend a resource.
Authentication: Required (Moderator, Admin, or Super Admin)
URL Parameters:
id(string) - Resource ID
Request Body:
{ "action": "APPROVE", "reason": "Optional moderation note"}Actions: APPROVE, REJECT, SUSPEND, UNSUSPEND
Get Resource Moderation History
Section titled “Get Resource Moderation History”GET /resources/moderation/:id/historyGet the moderation history for a resource.
Authentication: Required (Moderator, Admin, or Super Admin)
URL Parameters:
id(string) - Resource ID
External Links
Section titled “External Links”Get External Links
Section titled “Get External Links”GET /resources/:id/external-linksGet all external links for a resource.
Authentication: Not required
URL Parameters:
id(string) - Resource ID
Create External Link
Section titled “Create External Link”POST /resources/:id/external-linksAdd an external link to a resource.
Authentication: Required (must be owner or contributor)
URL Parameters:
id(string) - Resource ID
Request Body:
{ "title": "GitHub Repository", "url": "https://github.com/user/repo", "type": "GITHUB"}Link Types: GITHUB, DISCORD, WEBSITE, DOCUMENTATION, OTHER
Reorder External Links
Section titled “Reorder External Links”PATCH /resources/:id/external-links/reorderReorder external links by changing their display order.
Authentication: Required (must be owner or contributor)
URL Parameters:
id(string) - Resource ID
Request Body:
{ "linkIds": ["link-id-1", "link-id-2", "link-id-3"]}Update External Link
Section titled “Update External Link”PATCH /resources/:id/external-links/:linkIdUpdate an external link.
Authentication: Required (must be owner or contributor)
URL Parameters:
id(string) - Resource IDlinkId(string) - Link ID
Request Body:
{ "title": "Updated Title", "url": "https://new-url.com"}Delete External Link
Section titled “Delete External Link”DELETE /resources/:id/external-links/:linkIdDelete an external link.
Authentication: Required (must be owner or contributor)
URL Parameters:
id(string) - Resource IDlinkId(string) - Link ID