fortnite_2 1.0.3 copy "fortnite_2: ^1.0.3" to clipboard
fortnite_2: ^1.0.3 copied to clipboard

A Package for using the unofficial Epicgames/Fortnite API. Perform user user specific actions and get user data like skins etc..

example/example.dart

import "dart:io";
import "dart:convert";
import 'package:fortnite_2/fortnite_2.dart';

final File deviceAuthFile = File("device_auth.json");

// main function
void main() async {
  DeviceAuth deviceAuth;

  if (!(await deviceAuthFile.exists())) {
    /// get an authorization code url
    String authorizationCodeURL = getAuthorizationCodeURL();

    /// print the url to the console
    print("Get an authorization code from here: $authorizationCodeURL");

    stdout.write("Enter an authorization code: ");
    String authorizationCode = stdin.readLineSync() ?? "";

    /// get an authorization code from previous url and use it to create a device auth.
    /// a device auth dont gets invalid until you forcefully delete it or change your password.
    deviceAuth = await authenticateWithAuthorizationCode(
      authorizationCode, // authorization code
    );

    /// write the device auth to a file
    await deviceAuthFile.writeAsString(
      JsonEncoder().convert({
        "accountId": deviceAuth.accountId,
        "deviceId": deviceAuth.deviceId,
        "secret": deviceAuth.secret,
        "displayName": deviceAuth.displayName,
      }),
    );
  }

  /// read the device auth from the file
  final Map<String, dynamic> deviceAuthDetails =
      jsonDecode(await deviceAuthFile.readAsString());

  /// create the device object
  deviceAuth = DeviceAuth.fromJson(deviceAuthDetails);

  /// create the client object
  final Client client = Client(
    options: ClientOptions(
      log: true,
      deviceAuth: deviceAuth,
      logLevel: Level.ALL,
    ),
    overrideSession: "",
  )..onSessionUpdate.listen((update) {
      print("Session updated for ${update.accountId}");

      /// Any function you want to do with updated session.
    });

  /// initialize the common core profile for the client
  await client.commonCore.init();

  /// print vbucks from common core profile data
  print(
      "${client.displayName} you have ${client.commonCore.totalVbucks} V-Bucks");
}
2
likes
110
pub points
19%
popularity

Publisher

unverified uploader

A Package for using the unofficial Epicgames/Fortnite API. Perform user user specific actions and get user data like skins etc..

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (LICENSE)

Dependencies

dio, http, logging, numeral

More

Packages that depend on fortnite_2