/minecraft-api?username=Notch&type=all
application/json: java | bedrock | cached
Quick sail
Get UUID, skin, cape and name history fer any Minecraft player. One URL, JSON response. No signup needed.
Minecraft API
Fire one HTTPS GET with a name or gamertag. Ask for Java, Bedrock or both, then inspect which edition chest exists before takin' IDs and assets.
GET https://vrc.lol/minecraft-api?username=Notch&type=all
Accept: application/jsonGET + HTTPS
Use the profile port fer JSON cargo and the asset ports fer PNG treasure ready to show.
https://vrc.lol
/minecraft-api?username=Notch&type=allapplication/json: java | bedrock | cached
/head?username=Notch&type=java&size=128image/png: 8-512 px
/skin?username=Notch&type=javaimage/png: Java | Bedrock
/cape?hash=HASHimage/png: cape
/minecraft-api?suggest=Notch&limit=25application/json: [{ username, types }]
/skin_body?username=Notch&type=java&size=160image/png: 40-200 px
Name the identifier and edition plain when yer app needs a steady course.
usernamename | gamertag | UUID | XUID
typeall | java | bedrock
suggestsearch text + limit 1-100
updatetrue · 3600s profile cooldown
These calls use the Minecraft port and need no secret key, matey.
const response = await fetch('https://vrc.lol/minecraft-api?username=jeb_&type=all');
const profile = await response.json();
console.log(profile.java?.uuid);import requests
profile = requests.get('https://vrc.lol/minecraft-api', params={'username': 'jeb_', 'type': 'all'}).json()
print(profile.get('java', {}).get('uuid'))curl -sS 'https://vrc.lol/minecraft-api?username=jeb_&type=all'{
"success": true,
"cached": true,
"java": { "username": "jeb_", "uuid": "...", "skin_url": "...", "cape_url": "..." },
"bedrock": { "username": "...", "xuid_decimal": "...", "floodgate_uuid": "..." }
}java | bedrock: optional object; fields may be null
200 OKapplication/json | image/png
400 Bad Requestcode: MISSING_PARAMETER | INVALID_INPUT_FORMAT | INVALID_TYPE_FILTER
404 Not Foundcode: CACHE_PROFILE_NOT_FOUND | TEXTURE_NOT_FOUND | CAPE_NOT_FOUND
429 Too Many RequestsRetry-After
500 Internal Server Error{ "success": false, "error": "..." }
limit: ~180 / 60s / IPuncached_limit: 45 / 60s / IPupdate_cooldown: 3600s / profileHTTP 429 + Retry-AfterNay. The Minecraft Profile API be free and requires no key.
Use https://vrc.lol as yer harbour, then sail to /minecraft-api, /head, /skin, or /cape.
Put the UUID in the username cargo hold, for example /minecraft-api?username=853c80ef3e3740fdaa867b06307a3d4f.
Raw UUIDs and UUIDs with dashes both pass inspection.
/minecraft-api | /head
fetch() | application/json
permissions.json | cache
VRC.LOL · Discord
Ask fer help, share yer thoughts, and meet the VRC.LOL crew.