Relations

Everything that can be attached to a content item — what each attachment is, which items take it, and how to manage it.

A content item on its own is a name and a body. Everything else it carries is a relation: a row attached to it, of one of the kinds on this page.

The relations are shared across item types — the same media table serves a mod’s screenshots and a community’s gallery — which is why an item’s tabs look the same wherever you are.

The catalogue

Releases and files

Versions, and the files people actually download. Plus how uploads, scanning and size limits work.

Media

Screenshots and videos, uploaded or external — and who is allowed to contribute them.

Links

Website, Discord, GitHub, Steam, YouTube and the rest.

Dependencies

Required, optional, recommended — and conflicts, which are the reason the feature is shaped this way.

Contributors and credits

Who worked on it, including people who have no account here.

Permissions and usage policy

Two different things with similar names: what others may DO with your work, and who may EDIT it.

Ratings, reviews and comments

The engagement set, and the switches that govern it.

Follows and favourites

“Tell me when this changes” versus “keep this on a list”.

External sources

Where else this item is published — and the repo it is built from.

Boards

Discussions, feedback, bug tracker, roadmap and changelog — the five boards an item can run.

Which items take which

Relation Mod Asset Server Community Article Collection Group
Tags
Categories
Media
Releases
Links
Sources
Items
Dependencies
Contributors
Usage policy
Ratings
Reviews
Comments
Follows
Favourites
Boards

The API exposes a narrower set as sub-resources — tags, media, releases, links, sources, items. See the availability table for exactly which.

Managing them

Through the browser, each relation is a tab on the item’s edit form.

Through the API there are two ways, and the difference matters:

  • Inline on the item body. The array you send is the complete set. Sending "media": [...] replaces the gallery wholesale; omitting the key leaves it alone. There is no way to say “add one” inline.
  • On the relation’s own sub-resource. POST adds, PUT replaces, DELETE removes named members.

The sub-resource is usually what you want. See Relations through the API.