for

fortnitepy

Async python library for interacting with Fortnite's API and XMPP services.

Showing:

Popularity

Downloads/wk

0

GitHub Stars

86

Maintenance

Last Commit

1mo ago

Contributors

9

Package

Dependencies

0

License

MIT

Categories

Readme

fortnitepy

Supported py versions Current pypi version Donate link

Asynchronous library for interacting with Fortnite and EpicGames' API and XMPP services.

Note: This library is still under developement so breaking changes might happen at any time.

Some key features:

  • Full support for Friends.
  • Support for XMPP events including friend and party messages + many more.
  • Support for Parties.
  • Support for Battle Royale stats.

Documentation

https://fortnitepy.readthedocs.io/en/latest/

Installing

# windows
py -3 -m pip install -U fortnitepy

# linux
python3 -m pip install -U fortnitepy

Basic usage

import fortnitepy
import json
import os

from fortnitepy.ext import commands

email = 'email@email.com'
password = 'password1'
filename = 'device_auths.json'

def get_device_auth_details():
    if os.path.isfile(filename):
        with open(filename, 'r') as fp:
            return json.load(fp)
    return {}

def store_device_auth_details(email, details):
    existing = get_device_auth_details()
    existing[email] = details

    with open(filename, 'w') as fp:
        json.dump(existing, fp)

device_auth_details = get_device_auth_details().get(email, {})
bot = commands.Bot(
    command_prefix='!',
    auth=fortnitepy.AdvancedAuth(
        email=email,
        password=password,
        prompt_authorization_code=True,
        prompt_code_if_invalid=True,
        delete_existing_device_auths=True,
        **device_auth_details
    )
)

@bot.event
async def event_device_auth_generate(details, email):
    store_device_auth_details(email, details)

@bot.event
async def event_ready():
    print('----------------')
    print('Bot ready as')
    print(bot.user.display_name)
    print(bot.user.id)
    print('----------------')

@bot.event
async def event_friend_request(request):
    await request.accept()

@bot.command()
async def hello(ctx):
    await ctx.send('Hello!')

bot.run()

Authorization

How to get a one time authorization code:

  1. Log into the epic games account of your choice here.
  2. Copy the hex part from the url that shows up as showcased by the image below:

Authorization Code

Credit

Thanks to Kysune, iXyles, Vrekt and amrsatrio for ideas and/or work that this library is built upon.

Also thanks to discord.py for much inspiration code-wise.

Need help?

If you need more help feel free to join this discord server.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial