A Java API for interacting with Pokémon GO servers, enabling programmatic gameplay and data access.
PokeGOAPI-Java is a Java library that acts as an unofficial API for the Pokémon GO game servers. It enables developers to programmatically interact with the game, allowing actions like catching Pokémon, managing inventory, and accessing player data. The library provides both high-level methods and low-level request handling for building custom Pokémon GO clients or automation tools.
Java developers interested in building Pokémon GO bots, automation scripts, data analysis tools, or custom game clients. It is also relevant for Android developers looking to integrate Pokémon GO functionality into their apps, though with threading and authentication considerations.
Developers choose PokeGOAPI-Java for its comprehensive Java implementation of the Pokémon GO API, offering direct server communication, configurable gameplay options, and community-driven support. It provides a programmatic alternative to manual gameplay, enabling automation and custom tooling where official APIs are unavailable.
Pokemon Go API
Supports both Google and Pokémon Trainer Club (PTC) logins with token management, allowing for persistent sessions as shown in the usage example with refresh tokens.
Provides high-level methods for catching Pokémon, managing inventories, and setting player location, enabling full automation of in-game actions.
Offers direct access to send and parse server requests using protobuf, useful for custom implementations and reverse engineering, as demonstrated with LevelUpRewardsMessage.
Includes CatchOptions and AsyncCatchOptions for detailed control over catch behavior, such as berry usage and ball selection, with fallback mechanisms.
Active contributor list and a Slack channel for support, fostering ongoing updates and collaboration, as noted in the README.
The README explicitly warns that the API doesn't perfectly mimic the official client, making it prone to detection and softbans by Niantic, which can last 10-30 minutes.
Requires building from source, managing JAR files manually, and handling authentication tokens, which can be error-prone and time-consuming for new users.
Cannot use Android's native Google sign-in due to SHA1 fingerprint restrictions, forcing developers to rely on WebView workarounds, as explained in the Android Dev FAQ.
Relies on third-party hashing providers like PokeHash, which may incur costs or downtime, adding an external point of failure for functionality.
The Pokémon API
:cyclone: A Pokedex app using ViewModel, ViewBinding, LiveData, Room and Navigation
Pokemon Go API lib
Pokemon GO api node.js library
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.