This page documents the full structure of a package entry inDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/joshuaKnauber/serpens_addon_market/llms.txt
Use this file to discover all available pages before exploring further.
packages.json. Entries are stored in the packages array, each representing a curated collection of custom Serpens nodes distributed by a community member. Packages extend Serpens with new node types — for example, custom interface nodes, scripting helpers, or animation utilities — and are always distributed via an external URL. Unlike addons and snippets, direct file upload is not supported for packages.
Root Structure
Fields
The display name of the package as it appears in the marketplace. Used by the bot to identify the entry when the submitter requests an update or removal. Example:
"Interface Extras".A short description of what the package contains — typically listing the custom node types it provides. Example:
"Custom Interface Nodes created by blanchsb".A free-form price string set by the submitter. Most marketplace packages are free, so this is often
"Free" or "FREE".The external download URL for the package. This must be a publicly accessible link — typically a Gumroad product page, a GitHub repository, or a Google Drive share link. Unlike addons and snippets, the bot does not accept direct file uploads for packages; submitters must paste a URL.
The display name of the package author. Set by the submitter during the upload flow.
The Discord user ID (snowflake) of the member who submitted the package. Used by the bot to gate update and removal operations so only the original submitter can modify their own entries.
Indicates which major version of Serpens this package targets. Valid values are
2 (Serpens 2.x) and 3 (Serpens 3.x). The bot automatically sets this to 3 for all new package submissions. Some older entries may omit this field entirely.Key Distinction: External URL Only
Unlike addons and snippets, packages support only external URL distribution. The bot’s upload flow for packages always concludes by asking the submitter to paste a link — there is no attachment upload step. This meansurl will always contain a third-party URL (Gumroad, GitHub, BlenderMarket, Google Drive, etc.) and never a Discord CDN link.
Example Entry
The following is a real entry frompackages.json for Interface Extras, a Serpens 3 package hosted on Gumroad:
version field:
The first entry in the
packages array is a placeholder record with "title": "placeholder" and "user": 0. This entry exists to pre-initialize the data file and should be ignored when reading or displaying marketplace listings. Any consumer of packages.json should filter out entries where user equals 0.