Overview | EssentialsC

The EssentialsC API lets other plugins interact with EssentialsC systems at runtime. Retrieve the root API instance via APIProvider.getAPI() and navigate to the relevant sub-system interface.

EssentialsCAPI api = APIProvider.getAPI();
if (api != null) {
    boolean afk = api.getAFKApi().isAFK(player);
}

Add the api module as a compileOnly dependency and declare EssentialsC as a soft-depend or hard-depend in your plugin.yml.

API Sections

interface AFKApi Read and manipulate the AFK state of players — check status, get durations, set or toggle AFK manually, and record activity from external plugins.
interface BackApi Read and manipulate player back locations — check and set saved positions, trigger or cancel warmup teleports, manage cooldowns, and query back config settings.
interface ChatApi Query the state of the LuckPerms chat system and run messages through the full format pipeline — group formats, PlaceholderAPI, prefix/suffix substitution.
interface DiscordApi Check DiscordSRV connection state and push ban, kick, mute, and home event embeds to the configured Discord channel from external plugins.
interface AuctionApi Query active listings, player auctions, and transaction history. Programmatically create listings, process purchases, cancel auctions, and claim expired items.
interface EconomyApi Query and modify player balances, create accounts, retrieve the top balance leaderboard, and format currency amounts. Vault hook state is also exposed.
interface KitApi Look up kit definitions, check player eligibility and cooldowns, query claim history, and give kits directly bypassing permission checks.
interface NickApi Look up, set, and remove player nicknames. Apply or clear display names visually and check whether a nickname is already taken.
interface PunishmentApi Issue, query, and revoke bans and mutes. Retrieve individual entries or the full list of all active punishments.
interface LanguageApi Resolve localised message components for any sender, manage per-player language overrides, and query the server default language.
interface ReplyApi Read, set, and clear the private message reply target for any player. Useful for integrating custom messaging systems with /r.
interface HomeApi Look up, create, update, and delete player homes. Trigger the full warmup/cooldown teleport pipeline and query cooldown state.
interface HomeApi Look up, create, update, and delete player homes. Trigger the full warmup/cooldown teleport pipeline and query cooldown state.
interface RtpApi Query RTP state, trigger random teleports, check per-world configuration, cooldowns, and permissions without depending on internal classes.
interface FlyApi Check, enable, disable, and toggle flight for players. Manage the persistent fly set that restores flight across sessions on next join.
interface RulesApi Read-only access to server rules loaded from rules.txt with MiniMessage formatting support. Retrieve rule entries and trigger reloads.
interface SchedulesApi Query and control scheduled tasks loaded from schedules.yml. Supports time-based and interval-based triggering with pause/resume controls and manual execution.
interface ScoreboardApi Control per-player scoreboard visibility and global system state. Toggle individual player boards and reload configuration with placeholder support.
interface ShopApi GUI-based shop system with categories, stock management, and SQLite transaction logging. Query items, open menus, and process async buy/sell transactions.
interface SpawnApi Manage server spawn location with warmup/cooldown teleportation, immediate teleport bypass, and first-join spawning persisted to spawn.yml.
interface TabApi Manage player tab list names with LuckPerms integration for prefixes/suffixes, AFK indicators, nickname display, and TAB plugin delegation.
interface TpaApi Manage teleport requests between players with TPA and TPAHere support. Handle requests, accept/deny/cancel, toggle blocking, and manage warmup/cooldown with safety checks.
interface VanishApi Manage player invisibility with configurable effects (night vision, collisions, mob targeting) and permission-based visibility for staff members.
interface WarpApi Manage named teleport locations with permissions, economy costs, categories, and usage tracking persisted to SQLite.

Entry Points

interface EssentialsCAPI Root interface. Returns each sub-system API.
class APIProvider Static holder — call APIProvider.getAPI() to obtain the EssentialsCAPI instance.