{"files":{"SKILL.md":"---\nname: mineskin-api\ndescription: \"MineSkin API skill. Use when working with MineSkin for generate, get, validate. Covers 9 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# MineSkin API\nAPI version: 1.0.0\n\n## Auth\nBearer bearer\n\n## Base URL\nhttps://api.mineskin.org\n\n## Setup\n1. Set Authorization header with Bearer token\n2. GET /get/delay -- verify access\n3. POST /generate/url -- create first url\n\n## Endpoints\n9 endpoints across 3 groups. See references/api-spec.lap for full details.\n\n### Generate\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /generate/url |  |\n| POST | /generate/upload |  |\n| POST | /generate/user |  |\n\n### Get\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /get/delay |  |\n| GET | /get/id/{id} | Deprecated. Use /get/uuid instead. |\n| GET | /get/uuid/{uuid} |  |\n| GET | /get/list/{page} |  |\n\n### Validate\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /validate/name/{name} |  |\n| GET | /validate/uuid/{uuid} |  |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a url?\" -> POST /generate/url\n- \"Create a upload?\" -> POST /generate/upload\n- \"Create a user?\" -> POST /generate/user\n- \"List all delay?\" -> GET /get/delay\n- \"Get id details?\" -> GET /get/id/{id}\n- \"Get uuid details?\" -> GET /get/uuid/{uuid}\n- \"Get list details?\" -> GET /get/list/{page}\n- \"Get name details?\" -> GET /validate/name/{name}\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Paginated endpoints accept limit/offset or cursor parameters\n- Create/update endpoints return the modified resource on success\n- Error responses include status codes and descriptions in the spec\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api MineSkin API\n@base https://api.mineskin.org\n@version 1.0.0\n@auth Bearer bearer\n@common_fields {User-Agent: str # Custom User-Agent for your application, see [user-agent.dev](https://user-agent.dev/) for implementation examples}\n@endpoints 9\n@toc generate(3), get(4), validate(2)\n\n@group generate\n@endpoint POST /generate/url\n@optional {Authorization: str # API Key - Get your key from https://mineskin.org/apikey}\n@returns(200) Successfully generated skin info\n@errors {400: Response if an error occurred, 429: Response if the client sent a request too soon, 500: Response if an error occurred}\n@example_request {\"url\":\"https://i.imgur.com/kQPrtYw.png\",\"visibility\":0,\"name\":\"\",\"variant\":\"classic\"}\n\n@endpoint POST /generate/upload\n@optional {Authorization: str # API Key - Get your key from https://mineskin.org/apikey}\n@returns(200) Successfully generated skin info\n@errors {400: Response if an error occurred, 429: Response if the client sent a request too soon, 500: Response if an error occurred}\n\n@endpoint POST /generate/user\n@optional {Authorization: str # API Key - Get your key from https://mineskin.org/apikey}\n@returns(200) Successfully generated skin info\n@errors {400: Response if an error occurred, 429: Response if the client sent a request too soon, 500: Response if an error occurred}\n\n@endgroup\n\n@group get\n@endpoint GET /get/delay\n@optional {Authorization: str # API Key - Get your key from https://mineskin.org/apikey}\n@returns(200) {millis: int, seconds: int, nextRequest: map{time: int, relative: int}, lastRequest: map{time: int}}\n\n@endpoint GET /get/id/{id}\n@desc Deprecated. Use /get/uuid instead.\n@required {id: num(integer)}\n@returns(200) {id: int, idStr: str, uuid: str, name: str, model: str, variant: str, data: map{uuid: str, texture: map{value: str, signature: str, url: str}}, timestamp: num, duration: num, accountId: int, account: int, server: str, private: bool, views: num} # Skin Info\n\n@endpoint GET /get/uuid/{uuid}\n@required {uuid: str(uuid)}\n@optional {Authorization: str # API Key - Get your key from https://mineskin.org/apikey}\n@returns(200) {id: int, idStr: str, uuid: str, name: str, model: str, variant: str, data: map{uuid: str, texture: map{value: str, signature: str, url: str}}, timestamp: num, duration: num, accountId: int, account: int, server: str, private: bool, views: num} # Skin Info\n\n@endpoint GET /get/list/{page}\n@required {page: num(integer) # For reference pagination, the uuid of the last skin in the previous page. For numeric pagination (deprecated), the page number or 'start'.}\n@returns(200) {skins: [map], page: map{index: int, amount: int, total: int}, filter: str} # Skin Info List\n\n@endgroup\n\n@group validate\n@endpoint GET /validate/name/{name}\n@required {name: str}\n@returns(200) {valid: bool, uuid: str, name: str} # Validation info about the requested user\n\n@endpoint GET /validate/uuid/{uuid}\n@required {uuid: str}\n@returns(200) {valid: bool, uuid: str, name: str} # Validation info about the requested user\n\n@endgroup\n\n@end\n"}}