Minecraft-auth is a package to authenticate and get minecraft access tokens.
Authentication Types:
Mojang API:
Package contains MojangApi class which can be used to fetch other users skins, uuids, check server status and more.
Version 2.0.0 changes how Microsoft Authentication works.
Mobile and desktop applications
typeAll authentication errors are thrown by using AuthenticationError or OwnershipError classes they all extend Error class.
AuthenticationError also contains additionalInfo: string
npm i --save minecraft-auth
Importing:
import * as minecraftAuth from "./src/index";
//or
const minecraftAuth = require("./src/index.ts");
const MicrosoftAuth = minecraftAuth.MicrosoftAuth;
let account = new minecraftAuth.MicrosoftAccount(); MicrosoftAuth.setup({appID:"747bf062-ab9c-4690-842d-a77d18d4cf82"}); //https://github.com/dommilosz/minecraft-auth/wiki/How-to-setup-Microsoft-Auth let code = await MicrosoftAuth.listenForCode();
if(code !== undefined){ await account.authFlow(code); }
* Microsoft Authentication ([don't have specified lifetimes](https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow#refresh-the-access-token)):
```javascript
const MicrosoftAuth = minecraftAuth.MicrosoftAuth;
let account = new minecraftAuth.MicrosoftAccount();
MicrosoftAuth.setup({appID:"YOUR APP ID", appSecret:"YOUR APP SECRET"}); //https://github.com/dommilosz/minecraft-auth/wiki/How-to-setup-Microsoft-Auth
let code = await MicrosoftAuth.listenForCode();
if(code !== undefined){
await account.authFlow(code);
}
Mojang Authentication (obsolete due to migration):
let account = new minecraftAuth.MojangAccount();
await account.Login("email","password");
Cracked Authentication:
let account = new minecraftAuth.CrackedAccount("username");
//any type of authentication eg. from above examples
console.log(account.accessToken);
await account.getProfile();
console.log(account.username); //Username of the account
console.log(account.uuid); //UUID of the account (without dashes)
console.log(account.ownership); //Does account even have minecraft
console.log(account.profile) //User profile - skins, capes, uuid, username
console.log(account.profile.skins[0].url) //URL of the 1st skin.
AccountsStorage is a storage for your accounts.
You can add new account with AccountsStorage::addAccount(account)
You can remove account with AccountsStorage::removeAccount(account)
You can get accounts with:
getAccount(index)
getAccountByName(name)
getAccountByUUID(uuid)
serialize
converts storage to JSON string to save in filedeserialize
converts string to AccountStorage object