IP intelligence, threat detection, and security lookups for your applications.
Get your API key from the ProtectCord Dashboard. The Minecraft plugin can also generate keys automatically.
Pass your API key as a query parameter:
GET https://api.protectcord.com/checkip/1.1.1.1?key=YOUR_API_KEY
Default: 32 requests/minute. Check response headers X-RateLimit-Remaining and X-RateLimit-Reset.
400 - Invalid parameters401 - Invalid/missing API key403 - Admin access required429 - Rate limit exceeded500 - Server errorNo authentication required.
System health status and diagnostics.
Public usage statistics and threat intelligence summary.
Get your public IP. Add ?detailed=true for full analysis.
Get latest Minecraft plugin version.
Require a valid API key.
Comprehensive IP analysis with security flags, geolocation, and company info.
Security flags: is_vpn, is_proxy, is_tor, is_datacenter, is_residential_vpn_or_proxy, is_abuser, is_whitelisted, is_blacklisted
GET /checkip/8.8.8.8?key=YOUR_KEY
Look up Discord user by ID.
GET /lookup/discord/123456789012345678?key=YOUR_KEY
Look up Minecraft player. Returns UUID, skin, cape, name history.
GET /lookup/minecraft/Notch?key=YOUR_KEY
Query Minecraft server status, players, MOTD.
GET /lookup/minecraft-server/mc.hypixel.net?key=YOUR_KEY
Look up FiveM player by identifier.
GET /lookup/fivem/steam:110000112345678?key=YOUR_KEY
Used by the Minecraft plugin to register servers and track players. Requires a valid API key (no admin needed). Accepts both GET (query params) and POST (JSON body).
Register or update a Minecraft server. Automatically links the server to your API key.
Parameters: name (required), ip_address (required), port (default 25565), server_type (paper/spigot/bungeecord/velocity/forge/folia/fabric)
GET /plugin/minecraft/server/register?key=YOUR_KEY&name=My+Server&ip_address=play.example.com&port=25565&server_type=paper
POST /plugin/minecraft/server/register?key=YOUR_KEY
Content-Type: application/json
{ "name": "My Server", "ip_address": "play.example.com", "port": 25565, "server_type": "paper" }
Response:
{ "server_id": 1, "name": "My Server", "created": true }
Check a player on join. Upserts the player record and links to the server. Returns flags and active status for blocking decisions.
Parameters: uuid (required, 32 hex chars), username (required), server_id (optional, from server/register)
GET /plugin/minecraft/player/check?key=YOUR_KEY&uuid=069a79f444e94726a5befca90e38aaf5&username=Notch&server_id=1
POST /plugin/minecraft/player/check?key=YOUR_KEY
Content-Type: application/json
{ "uuid": "069a79f444e94726a5befca90e38aaf5", "username": "Notch", "server_id": 1 }
Response:
{
"player_id": 42,
"uuid": "069a79f444e94726a5befca90e38aaf5",
"username": "Notch",
"is_active": true,
"flags": null,
"servers_seen_on": 3
}
Set flags on a player (e.g. "banned", "suspicious,alt-account"). Set to empty string to clear flags.
Parameters: uuid (required), flags (required, comma-separated string)
GET /plugin/minecraft/player/flag?key=YOUR_KEY&uuid=069a79f444e94726a5befca90e38aaf5&flags=banned,suspicious
POST /plugin/minecraft/player/flag?key=YOUR_KEY
Content-Type: application/json
{ "uuid": "069a79f444e94726a5befca90e38aaf5", "flags": "banned,suspicious" }
Response:
{ "success": true, "player_id": 42 }