Skip to main content

An async python wrapper for Mojangs API and Authentication API

Project description

Mojang-API-Wrapper

Overview

  • Pythonic wrapper making use of await and asnyc
  • 100% Coverage of Mojang's API and Authentication API

Examples

Accessing a players skin

from MojangAPI import Client
import asyncio

async def main():
    user = await Client.User.createUser('Minecraft playername')
    profile = await user.getProfile()
    print(profile.skin) # Will print the skins URL

loop = asyncio.get_event_loop()
loop.run_until_complete(main())

Changing a players skin

Note

Please note that Mojang's API may not trust your IP. To check if this is the case run the following code:

from MojangAPI import Client
import asyncio

async def main():
    user = await Client.User.createUser('Minecraft playername')
    await user.authenticate('Mojang Email', 'Mojang password')
    await user.checkForSecurityQuestions() 
    # Will raise an error if untrusted

If your IP is untrusted you can complete security challenges to become trusted (I believe you only need to do this once). To get the security questions your Mojang account will need them active (refer to https://help.minecraft.net/hc/en-us/articles/360034686852-Resetting-Security-Questions). After which run questions = await user.getSecurityQuestions() to get the questions, and then await user.sendSecurityAnswers(answers) with the answers in the form refered to in the API's documentation (https://wiki.vg/Mojang_API#Send_back_the_answers).

from MojangAPI import Client
import asyncio

async def main():
    user = await Client.User.createUser('Minecraft playername')
    await user.authenticate('Mojang Email', 'Mojang password')
    await user.changeSkin('Skin url', slim_model = True)

loop = asyncio.get_event_loop()
loop.run_until_complete(main())

Getting sales data

from MojangAPI import DataService
import asyncio

async def main():
    data = await DataService.Data.getStatistics(prepaid_card_redeemed_minecraft=True)
    # Valid keyword arguments can be found at https://wiki.vg/Mojang_API#Payload_4
    print(data)

loop = asyncio.get_event_loop()
loop.run_until_complete(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

MojangAPI-0.0.5.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

MojangAPI-0.0.5-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file MojangAPI-0.0.5.tar.gz.

File metadata

  • Download URL: MojangAPI-0.0.5.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.2

File hashes

Hashes for MojangAPI-0.0.5.tar.gz
Algorithm Hash digest
SHA256 6eaa1e40425523ee81be67ea54db0e7d0e765fb795828639398562b34dd27257
MD5 b1d379f5501d84c1ad5956df13d69aa8
BLAKE2b-256 b34a2d2c51e89317e359433c0eb13b5b683968f1d58ec7fff565b949d94bc033

See more details on using hashes here.

File details

Details for the file MojangAPI-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: MojangAPI-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.2

File hashes

Hashes for MojangAPI-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e027977373d254045a1e40c0157449a9a0fb3593cc78db42995bc3d7b92bba4e
MD5 97517b3f8fdfa8604e40f3172ec12019
BLAKE2b-256 d63f77585954279d07fbdfb0907afc29205bb1254edd47dee3136e69bf55fdc4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page