Hooks
Hook events are pushed to client mods over the plugin channel and to backend apps over webhooks. Every event is gated by a backing read scope, and grouped here by who can see it.
Event envelope
Every hook event shares this envelope, whether it arrives on a client mod over the plugin channel or on a backend webhook. Only data changes per event type.
{
"id": "evt_01J...",
"type": "player.enchant_proc",
"version": 1,
"createdAt": "2026-06-04T00:00:00.000Z",
"serverScope": "aether",
"producer": { "kind": "minecraft_server", "id": "aether" },
"actor": { "playerId": "00000000-0000-0000-0000-000000000000" },
"subject": { "playerId": "00000000-0000-0000-0000-000000000000" },
"visibility": "self",
"requiredScopes": ["hooks.player.enchant_proc:read"],
"data": { /* event-specific fields */ }
}idstringGlobally unique, stable id. Delivery is at least once, so dedupe on this.
typestringThe event type from the catalog below, e.g. player.enchant_proc.
versionnumberPayload contract version. Branch on it when a payload shape changes.
createdAtISO 8601When the event occurred.
serverScopestringWhich server it happened on, e.g. aether or celestial.
producerobjectWhat emitted the event, as { kind, id }.
actorobjectWho caused it, with a playerId when a player is known.
subjectobjectWho or what the event is about — a player, gang, or the server.
visibilitystringself, gang, server, or app owner — who is allowed to receive it.
requiredScopesstring[]The scopes that gate this event.
dataobjectEvent-specific payload. Some events pass runtime data through unchanged — read it defensively.
Your player
Events about your own player, delivered only to the player who granted access.
Enchant proc
player.enchant_procFires when one of your enchants procs.
hooks.player.enchant_proc:readCooldowns changed
player.cooldowns.changedFires when your cooldowns change.
player.cooldowns:readEffects changed
player.effects.changedFires when your active effects change.
player.effects:readAbsorber used
player.absorber.usedFires when your absorber is used.
hooks.player.absorber:readCommand succeeded
player.command.succeededFires when one of your approved commands runs.
hooks.player.command:readPet changed
player.pet.changedFires when your active pet changes.
player.pets:readTrinket changed
player.trinket.changedFires when your trinkets change.
player.trinkets:readChat channel changed
player.chat_channel.changedFires when your active chat channel changes.
player.chat_channel:readBandit killed
bandit.killedFires when you kill a bandit.
hooks.bandit.kill:readLibrary changed
player.library.changedFires when your library, or a library shared with you, gains or loses items.
player.library:readLibrary access changed
player.library.access.changedFires when a library share you own or receive is added, changed or removed.
player.library:readVault contribution changed
player.vault.contribution.changedFires about once a second while your damage or rank in a mine vault raid changes, while you are in the top 25.
events:readEmblem changed
player.emblem.changedFires when your equipped emblem, its tier or your buffs toggle changes.
player.emblems:readEmblem progress changed
player.emblem.progress.changedFires at most every five seconds while your emblem progress changes.
player.emblems:readEmblem unlocked
player.emblem.unlockedFires when you unlock an emblem tier.
player.emblems:readTop credits changed
player.top_credits.changedFires when your Top Credit balance changes.
player.top_credits:readSatchel backpack changed
player.satchel_backpack.changedFires when one of your satchel backpacks changes contents or energy.
player.satchels:readCustom set changed
player.custom_set.changedFires when you complete or break a Death or Greed set.
player.custom_sets:readPayday changed
player.payday.changedFires when your Greed set payday starts or ends.
player.custom_sets:readDeath mark changed
player.death_mark.changedFires when a death mark is placed on you, cleared or expires.
player.custom_sets:readGround Zero points changed
player.ground_zero.points.changedFires about once a second while your Ground Zero points change.
player.ground_zero:readYour gang
Events shared with the members of your current gang.
Gang chat message
gang.chat.message.createdFires when a message is posted in your gang chat.
gang.messages:readGang ping
gang.ping.createdFires when a gang or truce ping is created.
gang.pings:readServer-wide
Live world events broadcast for the whole server.
Server event changed
server.event.changedFires when the current public server event changes.
events:readEvent schedule changed
server.event.schedule.changedFires when the server event schedule changes.
events:readMeteor landing changed
server.meteor.landing.changedFires when meteor landing information changes.
server.meteors:readMerchant spawned
server.merchant.spawnedFires when a merchant spawns.
server.merchants:readMerchant despawned
server.merchant.despawnedFires when a merchant despawns.
server.merchants:readGuards snapshot changed
server.guards.snapshot.changedFires when controlled guard status near you changes.
server.guards:readWeather changed
server.weather.changedFires when a weather event starts or ends.
events:readWeather surge changed
server.weather.surge.changedFires when a weather surge starts or ends.
events:readMine vault raid started
server.vault.raid.startedFires when a mine vault raid begins.
events:readMine vault raid ended
server.vault.raid.endedFires when a mine vault raid ends, with the outcome and top damagers.
events:readPrison Break phase changed
server.prisonbreak.phase.changedFires when the Prison Break match moves to a new phase.
events:readTop credit checkpoint paid
server.top_credit.checkpoint.completedFires when a Top Credit checkpoint pays out, with the awarded ranks.
player.top_credits:readGround Zero reset changed
server.ground_zero.reset.changedFires when a Ground Zero reset is scheduled, starts, completes or retries.
player.ground_zero:readApp owner
Operational events about your app's sessions, delivered to webhooks.
Session connected
mod.session.connectedFires when a player connects with your mod.
mod.sessions:readSession disconnected
mod.session.disconnectedFires when a player disconnects from your mod.
mod.sessions:read