Language

WebMarket - A powerful web-based global market plugin, synchronously supporting in-game GUI operatio

SpigotMC

compatible with mobile devices and offline use, cross-server functionality

19 downloads
latest v2026-03-31 SpigotMC
1.20 – 26.1

Purchase link:*
https://www.patreon.com/posts/154367931

中国用户可在
爱发电购买




Click to view video demo


Click to view demo site



WebMarket



A powerful Minecraft web marketplace plugin, compatible with mobile display, and supports in-game GUI operations (including display of custom items like CraftEngine).



Supports 1.20+ Paper / Folia / Spigot / Bukkit / Purpur servers.



Supports offline operations (buying, listing, auctioning, etc.).



Supports cross-server functionality, configurable for server-isolated or global sharing.



Supports PlayerPoints and Vault currency transactions. Player market, buy requests, auctions, official shop, buff shop, special item shop can all be priced and settled separately in currency and points.



Supports mixed modpacks (icon resources and localization for mod items need to be manually added to the web directory; includes an exe tool to automate part of the resource addition).



---



Features



- Offline Support



When players are offline, inventory data is synced to the database in real-time, allowing full operations (listing, purchasing, selling, etc.) via the web interface.



- Full NBT Support



Durability, enchantments, enchanted book effects, potion effects, custom names, detailed contents of containers (shulker boxes, bundles) are all preserved and displayed on the web page. Prioritizes custom name images, falls back to item texture images (automatically excludes player-renamed items).



- Container Listing



One-click listing of full shulker boxes/bundles, real-time preview of container contents on the web page, and support for container preview in the in-game GUI.



- Official Shop Dynamic Pricing



Formula: dynamic price = base price × (1 + sigmoid(3-day trend) × sensitivity × trend weight)



- Buff Shop + Special Items/Rights Area



Buff Shop allows purchasing buffs by the second, requires players to be online.



Special Items/Rights Area: executes one or more custom commands upon purchase, supports variable {player}, convenient for purchasing rights.



Once a special item is created, accounts with admin permissions can modify all its information directly on the web page.



- Market Buy Requests



Can be created in two ways:



① Create a buy request for the item in hand via command /sg <quantity> <unit price> – records full NBT data (recommended)



② Create a buy request directly on the web page – downside: only supports basic attribute items (no enchantments, potion effects, lore, etc.)



---



Market System



| Module | Description |



|----------------------|-----------------------------------------------------------------------------|



| Player Market | Players can freely list, buy requests, purchase others' items. Supports custom transaction fees, whitelist/blacklist modes. |



| Auction House | Auction area, supports custom transaction fees, whitelist/blacklist modes. |



| Official Shop | Official Sell Area & Official Buy (Recycle) Area & Buff Area & Special Item Area. Dynamic pricing can be enabled for the official sell+recycle areas. |



---



Inventory Management



- Real-time web view of online/offline player inventories.



- Displays durability, enchantments, lore, container contents.



- One-click sell of inventory items to the market or auction house.



---



Leaderboards



| Leaderboard | Description |



|--------------------|--------------------------------------|



| Wealth Leaderboard | Richest players on the server. |



| Transaction Leaderboard | Players with highest transaction volume. |



| Selling Leaderboard | Players who have sold the most. |



| Buying Leaderboard | Players who have bought the most. |



---



Account System



- Supports AuthMe, login via username or email. After login, account is automatically bound and cannot be unbound.



- In-game registration via /wm register &lt;email&gt; &lt;password&gt; [username] – automatically binds and cannot be unbound. Username optional, defaults to in-game name.



- Web page registration via email – requires manual binding to a game account, can be unbound.



- API key authentication without login.



---



Command List



All commands start with /wm. You can also omit /wm and use shorthand commands.



| Command <required> [optional] | Description |



|-------------------------------|-------------|



| /wm gui or /market | Opens the in-game shop GUI. Can be disabled via permission node webmarket.gui. |



| /wm or /wm help | View command help available to your permissions. |



| /wm bind &lt;verification code&gt; | Bind a web account to a game account. |



| /wm register &lt;email&gt; &lt;password&gt; [username] | Register a web account in-game, auto-bind and cannot be unbound. Username optional, defaults to in-game name. |



| /wm claim | Claim items purchased on the web (for offline players or when online player inventory is full). |



| /wm sj &lt;quantity&gt; &lt;unit price&gt; [currency/points] | Quickly list the item in hand (player use, supports batch listing). |



| /wm sg &lt;quantity&gt; &lt;unit price&gt; [currency/points] | Quickly create a buy request for the item in hand (player use). |



| /wm pm &lt;quantity&gt; &lt;starting bid&gt; &lt;time (1-48 hours)&gt; [buyout price] [currency/points] | Quickly auction the item in hand (player use, supports batch auction). |



| /wm sell &lt;unit price&gt; [personal limit] [total stock] [personal limit reset period (h)] [currency/points] [cross-server/this-server] | OP only – list the item in hand in the official shop sell area (records full NBT, including quantity, so it's recommended to hold 1 item). Default: only purchasable on this server; add 'cross-server' to allow purchase from other servers. Personal limit: leave empty or -1 for no limit. Total stock: leave empty or -1 for no limit. Personal limit reset period in hours; 0 or empty means no reset. |



| /wm recycle &lt;unit price&gt; [personal limit] [total recycle amount] [personal limit reset period (h)] [currency/points] [cross-server/this-server] | OP only – add the item in hand to the official shop recycle area (records full NBT, including quantity, so it's recommended to hold 1 item). Default: only recyclable on this server; add 'cross-server' to allow recycling from other servers. Personal limit: leave empty or -1 for no limit. Total recycle amount: leave empty or -1 for no limit. Personal limit reset period in hours; 0 or empty means no reset. |



| /wm buff &lt;buff type&gt; &lt;level&gt; &lt;price per second&gt; [minimum seconds] [maximum seconds] [personal limit seconds] [total stock seconds] [reset time (h)] [currency/points] [cross-server/this-server] | OP only – add an item to the official shop buff area. Default: only purchasable on this server; add 'cross-server' to allow purchase from other servers. Type /buff in-game for detailed help. |



| /wm specialitem &lt;name&gt; &lt;description&gt; &lt;price&gt; &lt;icon material&gt; &lt;command1 command2 ...&gt; [personal limit] [total stock] [reset time (h)] [currency/points] [cross-server/this-server] | OP only – add an item to the official shop special item area. Default: only purchasable on this server; add 'cross-server' to allow purchase from other servers. Supports variable {player}, separate multiple commands with a pipe symbol. Type /specialitem in-game for detailed help. |



| /wm root &lt;email&gt; | OP only – grant admin privileges to the user with the specified email (can remove any player's items, delete official shop items). |



| /wm unroot &lt;email&gt; | OP only – revoke admin privileges from the user with the specified email. |



| /wm resetpassword &lt;email&gt; | OP only – reset the password for the user with the specified email. The user can then change it on the web page. |



| /wm marketlogs me | Query your own transaction records. Filter conditions: -type: type parameter (buy: all purchase records (player market + official shop + buy request fulfillment); sell: all sales records (official shop recycle + buy request fulfillment); list: player market listing records; delist: player market delisting records; auction: auction records; request: buy request related records (creation/cancellation/expiry); buff: Buff purchase records; special: special item purchase records; shop: all shop purchase records; all: all records). -time: time parameter (today: today; yesterday: yesterday; week: last 7 days; month: last 30 days; custom:yyyy-MM-dd: from specified date; custom:yyyy-MM-dd:yyyy-MM-dd: specified date range). |



| /wm marketlogs &lt;player name&gt; [page] [filter conditions] | OP only – query transaction records of a specified player. Filter conditions: -type: type parameter (buy: all purchase records; sell: all sales records; list: player market listing records; delist: player market delisting records; auction: auction records; request: buy request related records; buff: Buff purchase records; special: special item purchase records; shop: all shop purchase records; all: all records). -time: time parameter (today, yesterday, week, month, custom:yyyy-MM-dd, custom:yyyy-MM-dd:yyyy-MM-dd). Type /marketlogs in-game to open GUI. |



| /wm marketlogs-material &lt;item material&gt; [page] [filter conditions] | OP only – query transaction records for a specified item material. Filter conditions: -type: type parameter (market: player market records; auction: auction records; buy_request: buy request records; official_buy: official shop purchase records; official_sell: official shop recycle records; all: all records). -time: time parameter (today, yesterday, week, month, custom:yyyy-MM-dd, custom:yyyy-MM-dd:yyyy-MM-dd). Type /marketlogs-material in-game to open GUI. |



| /wm restrict | OP only – restrict a player from using market listing, buy request creation, or auction creation features. Type /restrict in-game for detailed help. |



| /wm blockitem | OP only – block the item in hand from being listed, used in buy requests, or auctioned, to prevent certain menu items from being put on the market. Type /blockitem in-game for detailed help. |



| Built-in Economy Commands (prefix /wm money or /wm bal) | Description |



|------------------------------------------------------------|-------------|



| /wm money help | View WebMarket economy system help. |



| /wm money | Check balance. |



| /wm money &lt;player&gt; | Check another player's balance. |



| /wm money pay &lt;player&gt; &lt;amount&gt; [reason] | Transfer money. |



| /wm money top [page] | Wealth leaderboard. |



| /wm money history [player] [page] | Transaction history. |



| /wm money set &lt;player&gt; &lt;amount&gt; [reason] | OP only – set balance. |



| /wm money give &lt;player&gt; &lt;amount&gt; [reason] | OP only – give money. |



| /wm money take &lt;player&gt; &lt;amount&gt; [reason] | OP only – take money. |



---



Permission Nodes



| Node | Purpose |



|------|---------|



| webmarket.sell | Use /sell |



| webmarket.recycle | Use /recycle |



| webmarket.root | Use /root and /unroot |



| webmarket.resetpassword | Use /resetpassword |



| webmarket.marketlogs | Use /marketlogs and /marketlogs-material |



| webmarket.marketlogs.self | Query own transaction records (/marketlogs me or open GUI without parameters) |



| webmarket.restrict | Use /restrict |



| webmarket.buff | Use /buff |



| webmarket.specialitem | Use /specialitem |



| webmarket.blockitem | Use /blockitem |



| webmarket.gui | Use /wm gui |



| webmarket.use | Some basic command permissions |



| webmarket.publish.points | Allow listing/creating buy requests/auctions with points. Enabled by default if LuckPerms is not installed; otherwise managed by the permissions plugin. |



| webmarket.money.balance | Check own balance |



| webmarket.money.others | Check other players' balances |



| webmarket.money.pay | Transfer money to other players |



| <a href="https://webmarket.money.top" target="_blank" class="externalLink" rel="nofollow">webmarket.money.top</a> | View wealth leaderboard |



| webmarket.money.history | View own transaction history |



| webmarket.money.history.others | View other players' transaction history |



| webmarket.money.admin | Admin economy commands (set/give/take) |



---



PlaceholderAPI Placeholders



After installing PlaceholderAPI, the plugin automatically registers %webmarket_*% placeholders.



Currently supported wealth/balance placeholders:



| Placeholder | Description |



|-------------|-------------|



| %webmarket_balance% | Current player's currency balance, numeric format. |



| %webmarket_balance_formatted% | Current player's currency balance, formatted according to the economy system. |



| %webmarket_rank% | Current player's rank on the wealth leaderboard, returns 0 if not ranked. |



| %webmarket_top_1_name% | Name of the 1st place player on the wealth leaderboard. |



| %webmarket_top_1_player% | Same as %webmarket_top_1_name%. |



| %webmarket_top_1_balance% | Balance of the 1st place player, numeric format. |



| %webmarket_top_1_balance_formatted% | Balance of the 1st place player, formatted. |



| %webmarket_top_1_rank% | Returns the rank itself, e.g., 1 for 1st place. |



Note:



- The 1 in the above can be replaced with any rank, e.g., %webmarket_top_5_name%, %webmarket_top_10_balance%.



- These placeholders are based on the currency wealth leaderboard by default, not including points.



- To avoid repeated database scans during scoreboard refresh, wealth leaderboard placeholders use a cache. The cache time is configurable via placeholderapi.wealth_cache_seconds, default 60 seconds. Setting it to 0 disables caching, triggering an async refresh on each request.



---



Player Customization (Permission Group Support)



Individual players can have custom settings for listing limits, tax rates, validity days, etc., via permission groups.



Selling System



- webmarket.limit.market.sell.max_listings.&lt;value&gt; – Maximum number of listings.



- webmarket.limit.market.sell.max_duration_days.&lt;days&gt; – Maximum duration in days.



- webmarket.tax.market.sell.money.&lt;rate&gt; – Tax rate for currency sales.



- webmarket.tax.market.sell.points.&lt;rate&gt; – Tax rate for point sales.



Buy Request System



- webmarket.limit.market.buy.max_requests.&lt;value&gt; – Maximum number of active buy requests.



- webmarket.limit.market.buy.max_duration_days.&lt;days&gt; – Maximum duration in days.



- webmarket.tax.market.buy.money.&lt;rate&gt; – Tax rate for currency buy requests.



- webmarket.tax.market.buy.points.&lt;rate&gt; – Tax rate for point buy requests.



Auction House



- webmarket.limit.auction.max_listings.&lt;value&gt; – Maximum number of active auctions.



- webmarket.limit.auction.max_duration_hours.&lt;hours&gt; – Maximum auction duration in hours.



- webmarket.tax.auction.money.&lt;rate&gt; – Tax rate for currency auctions.



- webmarket.tax.auction.points.&lt;rate&gt; – Tax rate for point auctions.



---



Cross-Server Configuration



Cross-server behavior can be controlled via config.yml:



- Cross-server functionality only supports *
MySQL*. If database.type is not MySQL, it will be automatically disabled at runtime even if cross_server.enabled: true.



- cross_server.mode: isolated = market/auction data is separate per server; shared = market/auction data is shared across servers, with purchased items going into a claim area.



- cross_server.server_name: Unique identifier for the current server.



- cross_server.server_aliases: List of old names for the current server. If you change server_name, you can put the old names here for compatibility with old offline inventory keys and old server_name data.



- cross_server.master_server_name: In shared mode, the name of the master server. Market/auction related configurations are synced from the master server.



- cross_server.item_sync_enabled: Whether an external cross-server item sync solution is enabled. When disabled, the plugin maintains server-isolated offline inventory snapshots. When enabled, the plugin stops relying on its own offline inventory snapshots and disables certain player offline item operations to avoid conflicts with external sync solutions.



- cross_server.known_servers: List of known servers for server filters in the web interface and GUI.



- When cross-server is enabled, certain global tasks like dynamic price resets/daily refreshes are only executed by the server designated as master_server_name to avoid duplicate updates across servers.



---



Purchase and Activation



1. Purchase on Afdian.



2. Send your Afdian order number to QQ 1758426625 or email
<span class="__cf_email__" data-cfemail="99a8aeaca1adabafafabacd9e8e8b7faf6f4">[email&nbsp;protected]</span></a> to get an activation code.



3. Fill in the activation code in the config file under activation_code to start using the plugin.



---



Purchase Notes



1. The plugin requires an activation code to use. Each activation code is limited to one IP address at a time.



2. If activation fails after changing your IP, please wait at least 40 minutes before trying again.



3. If your activation code is abused, the developer has the right to disable it.



---



bStats



![bStats](
https://bstats.org/signatures/bukkit/webmarket.svg)



---



[config.yml]



activation_code: "" # Activation code




Plugin language setting

# Options: zh_cn, en_us



language: "zh_cn"




Database configuration

database:



type: "SQLite" # SQLite or MySQL



# MySQL configuration (use this for many players, requires 8.0+)



host: "localhost"



port: 3306



database: "webmarket"



username: "root"



password: ""



# Connection pool settings



pool:



max_size: 10



min_idle: 2



connection_timeout: 30000



idle_timeout: 600000



max_lifetime: 1800000



leak_detection_threshold: 60000




API server configuration

api:



enabled: true # Whether to enable HTTP API / Web service



enable_on_secondary_shared_server: false # In shared mode, whether secondary servers also start the HTTP service; usually only the master server needs it



port: 8880 # Server listening port



host: "0.0.0.0" # Server binding address, "0.0.0.0" means listen on all network interfaces



worker_threads: 4 # Number of threads for API request processing



queue_capacity: 1600 # Request queue capacity




Web frontend configuration

# For custom logo icon, place image in plugins/WebMarket/web-assets/logo/logo.png



web:



# Website logo text



logo_text: 'WebMarket'



# Whether to prioritize custom name image resources. Place in plugins/WebMarket/web-assets/custom-images/<custom_name>.png (no color codes needed)



# When enabled, tries to get custom name image first; falls back to item texture image (excludes player-renamed items)



use_custom_name_image: true



# Whether to allow custom name to override the item material name. When enabled, displays custom name instead of the "Custom Name" line (excludes player-renamed items)



use_custom_name_override: true



# Cross-server configuration



cross_server:



enabled: false # Whether to enable cross-server support (MySQL only; automatically disabled for SQLite)



mode: "isolated" # isolated = separate per server (only aggregates items), shared = full server interoperability



server_name: "server-1" # Unique name for the current server



server_aliases: [] # List of old server name aliases. If you change server_name, put old names here for compatibility with old offline inventory and old server_name records



master_server_name: "server-1" # Master server name



item_sync_enabled: false # Whether an external cross-server item sync solution is installed. Enabling this disables the plugin's built-in offline inventory snapshot mechanism: no longer saves/restores offline inventory, and prevents players from performing operations that require direct inventory item deduction while offline (e.g., market listing, creating auctions, selling to buy requests, official shop recycling)



economy_sync_enabled: false # Whether economy balance is shared across servers. In isolated mode, when set to false, currency balance and wealth leaderboard are stored and calculated per server; points are read directly from the local PlayerPoints database, unaffected by this setting



transaction_sync_enabled: false # Whether transaction statistics are shared across servers. In isolated mode, when set to false, leaderboard transaction/sale/purchase statistics are isolated per server



known_servers: # List of servers selectable in the frontend/GUI



- "server-1"



# Built-in economy system configuration



simple_economy:



# For cross-server, it is recommended to use the built-in economy first



# Whether to enable the built-in Vault economy system (used when no external economy plugin like CMI, Essentials is present)



# If you enable this while having an external economy plugin, this plugin will still use the built-in economy for processing



# You can also disable CMI's economy and enable this plugin's economy, both are compatible



enabled: false



starting_balance: 100.0 # Initial balance for new players



max_balance: 999999999.0 # Maximum balance limit



min_transfer: 0.01 # Minimum transfer amount



currency_singular: "Coin" # Currency singular name



currency_plural: "Coins" # Currency plural name



# Transaction history retention days (-1 for permanent)



transaction_history_days: 30




Market settings

market:



enabled: true # Global player market toggle



tax_payer: "seller" # Who pays the tax: seller = seller pays (buyer pays listed price), buyer = buyer pays (buyer pays listed price + tax)



tax_rates:



money: 0.01 # Currency transaction tax rate



points: 0.00 # Points transaction tax rate (points are integer; non-zero rates are rounded to nearest integer tax)



max_items_per_page: 24 # Number of items loaded per page on slow load



max_listing_duration: 14 # Maximum listing duration in days



max_listings_per_player: 10 # Maximum number of listings per player



listing_cooldown_seconds: 1 # Listing cooldown in seconds



# Item listing restrictions



item_restrictions:



# Item restriction mode:



# - "none": No restrictions (default)



# - "whitelist": Only allow items in the list to be listed



# - "blacklist": Prohibit items in the list from being listed



mode: "none"



# Restriction list (determines whitelist or blacklist based on mode)



items:



# Item ID (format: minecraft:item_id or just ITEM_ID)



- "minecraft:bedrock"



- "minecraft:command_block"



# Buy request configuration



buy_request:



enabled: true # Whether to enable buy request function



tax_payer: "seller" # Who pays the tax: seller = seller pays (seller receives listed price - tax), buyer = buyer pays (seller receives listed price)



tax_rates:



money: 0.02 # Currency buy request transaction tax rate



points: 0.00 # Points buy request transaction tax rate (points are integer; taxes are rounded)



max_requests_per_player: 3 # Maximum number of active buy requests per player



max_request_duration: 7 # Maximum buy request duration in days



request_cooldown_seconds: 1 # Buy request creation cooldown in seconds



# Buy request item restrictions



item_restrictions:



mode: "none" # none, whitelist, blacklist



# Restriction list (determines whitelist or blacklist based on mode)



items:



- "minecraft:bedrock"



- "minecraft:command_block"




Auction house configuration

auction:



enabled: true # Global auction house toggle



tax_payer: "seller" # Who pays the tax: seller = seller pays (buyer pays listed price), buyer = buyer pays (buyer pays listed price + tax)



tax_rates:



money: 0.03 # Currency auction tax rate



points: 0.00 # Points auction tax rate (points are integer; taxes are rounded)



max_items_per_page: 24 # Number of items loaded per page on slow load



max_listings_per_player: 10 # Maximum number of concurrent auctions per player



listing_cooldown_seconds: 1 # Listing cooldown in seconds



max_duration_hours: 48 # Maximum auction duration in hours



# Auction listing restrictions



item_restrictions:



mode: "none" # none, whitelist, blacklist



# Restriction list (determines whitelist or blacklist based on mode)



items:



# Item ID (format: minecraft:item_id or just ITEM_ID)



- "minecraft:bedrock"



- "minecraft:command_block"




Offline inventory configuration

offline_inventory:



enabled: true # Whether to enable offline inventory




Official shop configuration

official_shop:



# Dynamic pricing system configuration



dynamic_pricing:



# Whether to enable the dynamic pricing system



# Uses 3-day weighted average and sigmoid function for smooth changes



# Dynamic price = base price × (1 + sigmoid(3-day trend) × sensitivity × trend weight)



enabled: true



# Price reset strategy



# false: No reset (prices continue to change based on transaction volume)



# daily: Daily reset (resets to base price after first check at 00:00 each day)



# weekly: Weekly reset (resets to base price every Monday)



# monthly: Monthly reset (resets to base price on the 1st of each month)



restart: false



# Transaction activity algorithm configuration



activity:



# Sensitivity (0.01-1.0)



# Higher values make price more sensitive to transaction volume changes



# Recommended range: 0.05-0.2



sensitivity: 0.1



# Daily transaction volume threshold



# Price fluctuations are only calculated when daily volume reaches this threshold



# Prevents drastic fluctuations from a few transactions; recommended 1-10



daily_volume_threshold: 1



# Global price protection (final price limits)



price_protection:



# Whether to enable price floor



enable_floor: true



# Minimum price multiplier (relative to base price)



# Adjusted dynamically based on price volatility:



# - High volatility (>30%): limits to 0.7-1.5x base price



# - Medium volatility (>10%): limits to 0.5-2.0x base price



# - Low volatility: uses configured multiplier



min_price_multiplier: 0.5



# Whether to enable price ceiling



enable_ceiling: true



# Maximum price multiplier (relative to base price)



# Also adjusted dynamically based on volatility



max_price_multiplier: 2.0




Item related configuration

items:



# Item max stack size check



max_stack_size_check: true



# Minimum allowed quantity for a single listing



min_quantity: 1



# Maximum allowed quantity for a single listing



max_quantity: 2304



# Price limits



min_price: 0.01



max_price: 1000000.0



security:



# API key default validity period (days)



api_key_expiry_days: 7



# Password encryption strength (iteration count; higher is more secure but consumes more performance)



encryption_iterations: 10000



# Whether to enable email whitelist (only allows registration from whitelisted domains)



email_whitelist_enabled: false



# Email domain whitelist (domain only, without @)



# Example: ["
qq.com", "
gmail.com"]



email_whitelist_domains:



- "
qq.com"



# Registration limit per IP (maximum accounts per IP, 0 for unlimited)



registration_limit_per_ip: 2



# Whether to allow registration via web form (if disabled, only AuthMe registration/login is allowed)



allow_web_registration: true




AuthMe

authme_login:



# Whether to enable AuthMe login (login via username or email. Account cannot be unbound)



enabled: false



# Email domain used when AuthMe has no registered email (final email: <playername>@<domain>)



fallback_email_domain: "authme.local"



# External AuthMe database (for proxy/login servers where AuthMe is not on this server)



# When enabled, no need to install AuthMe plugin on this server; connects directly to remote AuthMe database for authentication



# Only supports MySQL/MariaDB; password algorithms support SHA256 (AuthMe default) and bcrypt



external_database:



enabled: false



host: "localhost"



port: 3306



database: "authme"



username: "root"



password: ""



table_name: "authme" # AuthMe table name



password_column: "password" # Password column name



username_column: "username" # Username column name



email_column: "email" # Email column name



# ---------------Generally no need to modify below--------------- #




Logging configuration

logging:



log_market_actions: true # Whether to log market operations



log_auth_actions: true # Whether to log authentication operations



log_binding_actions: true # Whether to log binding/unbinding operations



log_official_shop_actions: true # Whether to log official shop operations



log_password_change: true # Whether to log password changes



log_auction_actions: true # Whether to log auction operations



log_buy_request_actions: true # Whether to log buy request operations



log_retention_days: 30 # Log retention days




Cache configuration

cache:



expire_after_write: 300 # Cache expiration time after write (seconds)



maximum_size: 100000 # Maximum cache size




Leaderboard configuration

leaderboard:



fetch_interval_minutes: 30 # Leaderboard data cache/refresh interval (minutes). Within the interval, repeated requests return cached results directly




PlaceholderAPI configuration

placeholderapi:



wealth_cache_seconds: 60 # Wealth leaderboard placeholder cache time (seconds), 0 means no cache, triggers async refresh on each request




Binding related configuration

binding:



code_expiry_minutes: 5 # Binding code validity period (minutes)



rate_limiting:



# Global API rate limiting (e.g., 100 requests per minute)



global:



requests: 100



period: 1



unit: MINUTES



# Rate limiting for authentication endpoints (login/register)



auth:



requests: 5



period: 1



unit: MINUTES



license:



cloud:



# Whether to ignore HTTPS certificate validation



ignore_ssl_errors: true




Update checker configuration

update_checker:



# Whether to enable update checking



enabled: true



# Gist version check URL



version_check_url: "
https://gist.githubusercontent.com/intellectmind/325d2817045df2f44882de01fd2057e6/raw/WebMarket"



# Check interval (hours)



check_interval_hours: 48



# Whether to notify admins of updates when players join



notify_admins_on_join: true



debug:



# Whether to enable SQL query logging (for debugging only)



log_sql_queries: false



# API request/response log level



api_log_level: "INFO" # DEBUG, INFO, WARN, ERROR

Versions

Release
2026-03-31
·
9

Comments 0

No comments yet. Be the first to share your thoughts.

Download WebMarket - A powerful web-based global market plugin, synchronously supporting in-game GUI operatio

Files are served directly from the original source. Modgrid does not host or modify them.