Getting Started =============== This guide will help you get up and running with ValoPy. .. note:: ValoPy is an unofficial wrapper. It is not affiliated with or endorsed by Riot Games. Use at your own risk and ensure compliance with the unofficial Valorant API's terms of service. Installation ------------ ValoPy requires **Python 3.11+**. Install from PyPI: .. code-block:: bash pip install valopy Or with uv: .. code-block:: bash uv add valopy .. note:: Since the API changes frequently and this is a typed wrapper, it may not always work when the API updates. Currently compatible with **API v4.5.0**. What is the Unofficial Valorant API? ------------------------------------ ValoPy is a wrapper for the `Unofficial Valorant API `_ created by `Henrik-3 `_. The Unofficial Valorant API provides access to Valorant game data that isn't available through official channels. It aggregates data from various sources to provide information about: * **Player accounts** - Names, tags, levels, regions, and player cards * **Match history** - Detailed match data, scores, and statistics * **MMR & Ranks** - Competitive rankings and rating history * **Game content** - Characters (agents), maps, skins, sprays, and more * **Esports** - Tournament schedules and results * **Store** - Current store offers and rotations For more information about the API itself: * `API Repository `_ * `API Documentation `_ * `Discord Server `_ Getting an API Key ------------------ Before using ValoPy, you need to obtain an API key: 1. Go to the `API Dashboard `_ 2. Create an account or sign in 3. Generate a new API key 4. Read the **"Before using this API"** section in the API repository .. tip:: Keep your API key secure and never commit it to version control. Use environment variables or a ``.env`` file to store it. Quick Start ----------- Here's a minimal example to fetch account information: .. code-block:: python import asyncio from valopy import Client async def main(): async with Client(api_key="your-api-key") as client: # Fetch account information account = await client.get_account_v1("PlayerName", "TAG") print(f"Player: {account.name}#{account.tag}") print(f"Level: {account.account_level}") print(f"Region: {account.region}") asyncio.run(main())