Create a Minecraft profile
This endpoint allows a user with a redeemed giftcode on their account to create a Minecraft profile.
This endpoint has a ratelimit of 6 requests per account and 60 requests per IP.
Request
- Method:
POST
- Endpoint:
/minecraft/profile
- Full URL:
https://api.minecraftservices.com/minecraft/profile
- Headers:
Accept: application/json
Authorization: Bearer [JWT/auth token here]
As the POST body, simply supply your desired username.
{
"profileName" : "Desired_IGN"
}
Response
200: OK
Successfully created a new profile! Here is a sample response:
{
"id" : "cdb5aee80f904fdda63ba16d38cd6b3b", // UUID of account
"name" : "lukethehacker23", // username
"skins" : [ {
"id" : "7800ee13-f75d-40e5-a5b2-9197c3e0125a", // skin ID - always will be the same for this skin
"state" : "ACTIVE", // if skin is enabled or not
"url" : "http://textures.minecraft.net/texture/3b60a1f6d562f52aaebbf1434f1de147933a3affe0e764fa49ea057536623cd3", // skin texture URL
"variant" : "SLIM", // model of skin (steve/alex aka CLASSIC/SLIM)
"alias" : "ALEX" // assuming this is only for STEVE/ALEX skin. doesn't show up for some reason for some accounts.
} ],
"capes" : [ {
"id" : "2d4de64a-da1b-4196-8e37-20740f6941ad", // cape ID - always will be the same for this cape
"state" : "ACTIVE", // if cape is enabled or not (inactive = disabled)
"url" : "http://textures.minecraft.net/texture/a2e8d97ec79100e90a75d369d1b3ba81273c4f82bc1b737e934eed4a854be1b6", // cape texture URL
"alias" : "Minecon2012" // cape name
} ]
}
400: Bad Request
Something went wrong while creating the profile. Perhaps you already own a copy of Minecraft: Java Edition, or you supplied an invalid username, or something else. Here are the errors we've stumbled into:
// if you already own a copy of Minecraft: Java Edition
{
"path" : "/minecraft/profile",
"errorType" : "BAD_REQUEST",
"error" : "BAD_REQUEST",
"details" : {
"status" : "ALREADY_REGISTERED"
}
}
// if you don't own a copy of Minecraft: Java Edition
{
"path" : "/minecraft/profile",
"errorType" : "BAD_REQUEST",
"error" : "BAD_REQUEST",
"details" : {
"status" : "NOT_ENTITLED"
}
}
// if you supply a username that already exists
{
"path" : "/minecraft/profile",
"errorType" : "BAD_REQUEST",
"error" : "BAD_REQUEST",
"details" : {
"status" : "DUPLICATE"
}
}
// if you supply a username that is blocked by Mojang's username filter
{
"path" : "/minecraft/profile",
"errorType" : "BAD_REQUEST",
"error" : "BAD_REQUEST",
"details" : {
"status" : "NOT_ALLOWED"
}
}
// if you supplied a username of invalid length
{
"path" : "/minecraft/profile",
"errorType" : "CONSTRAINT_VIOLATION",
"error" : "CONSTRAINT_VIOLATION",
"errorMessage" : "createProfile.publicCreateProfileDTO.profileName: size must be between 3 and 16, createProfile.publicCreateProfileDTO.profileName: Invalid profile name",
"developerMessage" : "createProfile.publicCreateProfileDTO.profileName: size must be between 3 and 16, createProfile.publicCreateProfileDTO.profileName: Invalid profile name"
}
// if you supplied a username with invalid characters
{
"path": "/minecraft/profile",
"errorType": "CONSTRAINT_VIOLATION",
"error": "CONSTRAINT_VIOLATION",
"errorMessage": "createProfile.publicCreateProfileDTO.profileName: Invalid profile name",
"developerMessage": "createProfile.publicCreateProfileDTO.profileName: Invalid profile name"
}
401: Unauthorized
You have not provided a valid JWT / auth token, or you have neglected to provide the Authorization
header at all.
{
"path" : "/minecraft/profile",
"errorType" : "UnauthorizedOperationException",
"error" : "UnauthorizedOperationException",
"errorMessage" : "Unauthorized",
"developerMessage" : "Unauthorized"
}
429: Too Many Requests
You have exceeded the endpoint's ratelimit. Wait 60 seconds, then try again.
{
"path" : "/minecraft/profile",
"errorType" : "TooManyRequestsException",
"error" : "TooManyRequestsException",
"errorMessage" : "The client has sent too many requests within a certain amount of time",
"developerMessage" : "The client has sent too many requests within a certain amount of time"
}
500: Internal Server Error
If this status code is returned, the API is most likely being overloaded.
{
"path" : "/minecraft/profile",
"errorType" : "Connect Error: Acquire operation took longer then configured maximum time",
"error" : "Connect Error: Acquire operation took longer then configured maximum time"
}
{
"path" : "/minecraft/profile",
"errorType" : "Connect Error: Too many outstanding acquire operations",
"error" : "Connect Error: Too many outstanding acquire operations"
}