Generate a skin
POST/v2/generate
Note: this endpoint is not recommended. You should use the queue endpoints instead to submit jobs and check on their status periodically.
Queue skin generation and wait for the result.
Request
Header Parameters
Custom User-Agent for your application, see user-agent.dev for implementation examples. Alternatively you can also use the 'MineSkin-User-Agent' header.
API key from account.mineskin.org
- application/json
- multipart/form-data
Body
required
- UrlGenerateBody
- UserGenerateBody
oneOf
URL Generate Request Body
Possible values: [classic
, slim
, unknown
]
unknown
Possible values: <= 20 characters
Possible values: [public
, unlisted
, private
]
public
User Generate Request Body
Possible values: [classic
, slim
, unknown
]
unknown
Possible values: <= 20 characters
Possible values: [public
, unlisted
, private
]
public
Player UUID
Possible values: >= 32 characters
and <= 36 characters
Body
required
- UploadGenerateBody
- UrlGenerateBody
- UserGenerateBody
oneOf
File Upload Generate Request Body
Possible values: [classic
, slim
, unknown
]
unknown
Possible values: <= 20 characters
Possible values: [public
, unlisted
, private
]
public
PNG image file to upload. You should use a client library like MineSkin Java Client to properly handle file uploads. See github/examples
URL Generate Request Body
Possible values: [classic
, slim
, unknown
]
unknown
Possible values: <= 20 characters
Possible values: [public
, unlisted
, private
]
public
User Generate Request Body
Possible values: [classic
, slim
, unknown
]
unknown
Possible values: <= 20 characters
Possible values: [public
, unlisted
, private
]
public
Player UUID
Possible values: >= 32 characters
and <= 36 characters
Responses
- 200
- 400
- 429
- 500
Generator Success
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Array [
]
Array [
]
skin
object
required
Possible values: [public
, unlisted
, private
]
public
Possible values: [classic
, slim
, unknown
]
unknown
texture
object
required
data
object
required
Skin Value
Skin Signature
hash
object
required
Skin Hash
(optional) Cape Hash
url
object
required
Skin Texture Url
(optional) Cape Texture Url
generator
object
required
rateLimit
object
next
object
required
Absolute timestamp (in milliseconds) after which the next request can be made
1726829503123
Relative delay (in milliseconds) after which the next request can be made
800
delay
object
required
Delay between requests (in milliseconds) - depends on the API key used for this request
1200
Delay between requests (in seconds) - depends on the API key used for this request
1.2
limit
object
Limit of requests in the current window (usually 1 minute). Same as the 'X-RateLimit-Limit' header
60
Remaining requests in the current window. Same as the 'X-RateLimit-Remaining' header
58
usage
object
credits
object
Credits used for this request
1
Remaining credits
23
metered
object
Number of metered units used for this request
1
true
errors
object[]
warnings
object[]
messages
object[]
links
object
Links to related resources
{
"skin": {
"uuid": "c891dfac4cd247a2a55743e7e82ce76f",
"name": "Test Skin",
"visibility": "public",
"variant": "classic",
"views": 1,
"duplicate": false
},
"rateLimit": {
"next": {
"absolute": 1726829503123,
"relative": 800
},
"delay": {
"millis": 1200,
"seconds": 1.2
},
"limit": {
"limit": 60,
"remaining": 58
}
},
"usage": {
"credits": {
"used": 1,
"remaining": 23
},
"metered": {
"used": 1
}
},
"success": true,
"errors": [],
"warnings": [
{
"code": "string",
"message": "string"
}
],
"messages": [
{
"code": "ok",
"message": "All good!"
}
],
"links": {
"self": "string"
}
}
Bad Request
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Array [
]
Array [
]
false
errors
object[]
warnings
object[]
messages
object[]
links
object
Links to related resources
rateLimit
object
next
object
required
Absolute timestamp (in milliseconds) after which the next request can be made
1726829503123
Relative delay (in milliseconds) after which the next request can be made
800
delay
object
required
Delay between requests (in milliseconds) - depends on the API key used for this request
1200
Delay between requests (in seconds) - depends on the API key used for this request
1.2
limit
object
Limit of requests in the current window (usually 1 minute). Same as the 'X-RateLimit-Limit' header
60
Remaining requests in the current window. Same as the 'X-RateLimit-Remaining' header
58
{
"success": false,
"errors": [
{
"code": "generic_error",
"message": "Something went wrong"
}
],
"warnings": [
{
"code": "string",
"message": "string"
}
],
"messages": [
{
"code": "string",
"message": "string"
}
],
"links": {
"self": "string"
},
"rateLimit": {
"next": {
"absolute": 1726829503123,
"relative": 800
},
"delay": {
"millis": 1200,
"seconds": 1.2
},
"limit": {
"limit": 60,
"remaining": 58
}
}
}
Rate Limited
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Array [
]
Array [
]
false
errors
object[]
warnings
object[]
messages
object[]
links
object
Links to related resources
rateLimit
object
next
object
required
Absolute timestamp (in milliseconds) after which the next request can be made
1726829503123
Relative delay (in milliseconds) after which the next request can be made
800
delay
object
required
Delay between requests (in milliseconds) - depends on the API key used for this request
1200
Delay between requests (in seconds) - depends on the API key used for this request
1.2
limit
object
Limit of requests in the current window (usually 1 minute). Same as the 'X-RateLimit-Limit' header
60
Remaining requests in the current window. Same as the 'X-RateLimit-Remaining' header
58
{
"success": false,
"errors": [
{
"code": "generic_error",
"message": "Something went wrong"
}
],
"warnings": [
{
"code": "string",
"message": "string"
}
],
"messages": [
{
"code": "string",
"message": "string"
}
],
"links": {
"self": "string"
},
"rateLimit": {
"next": {
"absolute": 1726829503123,
"relative": 800
},
"delay": {
"millis": 1200,
"seconds": 1.2
},
"limit": {
"limit": 60,
"remaining": 58
}
}
}
Generator Error
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Array [
]
Array [
]
false
errors
object[]
warnings
object[]
messages
object[]
links
object
Links to related resources
rateLimit
object
next
object
required
Absolute timestamp (in milliseconds) after which the next request can be made
1726829503123
Relative delay (in milliseconds) after which the next request can be made
800
delay
object
required
Delay between requests (in milliseconds) - depends on the API key used for this request
1200
Delay between requests (in seconds) - depends on the API key used for this request
1.2
limit
object
Limit of requests in the current window (usually 1 minute). Same as the 'X-RateLimit-Limit' header
60
Remaining requests in the current window. Same as the 'X-RateLimit-Remaining' header
58
{
"success": false,
"errors": [
{
"code": "generic_error",
"message": "Something went wrong"
}
],
"warnings": [
{
"code": "string",
"message": "string"
}
],
"messages": [
{
"code": "string",
"message": "string"
}
],
"links": {
"self": "string"
},
"rateLimit": {
"next": {
"absolute": 1726829503123,
"relative": 800
},
"delay": {
"millis": 1200,
"seconds": 1.2
},
"limit": {
"limit": 60,
"remaining": 58
}
}
}