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)
| File | Size | Uploaded | |
|---|---|---|---|
| elytra_ms-0.7.3.tar.gz | 21.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|