Skip to main content

elytra-ms

A Python Library for various Microsoft APIs, including the Xbox and Bedrock Realms APIs.

Note: this library is a work in progress! This currently only supports the workflow the Realms Playerlist Bot does, but it is planned to be expanded in the future.

Usage

import anyio  # or asyncio, or trio
import elytra


async def main():
    xbox_api = await elytra.XboxAPI.from_file(
        "CLIENT_ID", "CLIENT_SECRET", oauth_path="oauth.json"
    )
    print(await xbox_api.fetch_profile_by_gamertag("SomeGamertag"))
    await xbox_api.close()


anyio.run(main)

Setup

TODO: actually do this section.

Install Package

Requires Python 3.10+.

pip install -U elytra-ms

Make An Application

Taken from xbox-webapi-python for now, copyright 2020 OpenXbox under MIT.

Authentication is supported via OAuth2.

  • Register a new application in Azure AD.
    • Name your app.
    • Select "Personal Microsoft accounts only" under supported account types.
    • Add http://localhost/auth/callback as a Redirect URI of type "Web."
  • Copy your Application (client) ID for later use.
  • On the App Page, navigate to "Certificates & secrets."
    • Generate a new client secret and save for later use.

Get OAuth/Token Data

In your terminal, run:

elytra-authenticate --client-id CLIENT_ID_FROM_ABOVE --client-secret CLIENT_SECRET_FROM_ABOVE

This will create a file called oauth.json in the directory this is run in. This file alone works with all APIs currently supported.

Metadata

Release files for elytra-ms 0.7.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for elytra-ms 0.7.3
File Size Uploaded
elytra_ms-0.7.3.tar.gz 21.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for elytra-ms 0.7.3
File Interpreter ABI Platform
elytra_ms-0.7.3-py3-none-any.whl Python 3 none any Details

Total release size: 62.0 kB

Release files / elytra_ms-0.7.3.tar.gz

Download URL elytra_ms-0.7.3.tar.gz
Size 21.8 kB
Tags Source
SHA-256 checksum
How to use checksums
9e07e07433ea89a476cd7f15727d2283c7eb3baa0565ec6f815d6c12ae36090d
BLAKE2b-256 checksum
How to use checksums
0b70d392791f41fdc7d8b694a41c902aecd9f3453a72050e8e7479e6495c6c13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.27.2

Release files / elytra_ms-0.7.3-py3-none-any.whl

Download URL elytra_ms-0.7.3-py3-none-any.whl
Size 40.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c7dc38d1c6eef6c7cef5a61e0a067f302535c63f8a76880f121e2c54ac330b2d
BLAKE2b-256 checksum
How to use checksums
fd4976959b394eaa7998126e132f13ecf210a922cb1c130dc5fafbef88691875
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.27.2

Release history Release notifications | RSS feed

This release

0.7.3 This release

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page