Typed pypercache-based wrapper for the public Valorant API.
Project description
Valorant Assets API
Typed Python wrapper for the public Valorant API built on pypercache.
Read the docs
from valorant_assets_api import ValorantAPI
api = ValorantAPI()
for agent in api.list_agents(playable_only=True):
print(agent.display_name, "-", agent.role.display_name if agent.role else "No role")
current_season = api.get_current_season()
version = api.get_version()
Features
- Typed
@apimodelresources for the main/v1endpoints - Built-in response caching via
pypercache - Optional request logging
- UUID lookups and collection methods
- Convenience helpers for playable agents, name-based lookup, active events, current season, and flattened contract rewards
Endpoint Coverage Matrix
list_* and get_* methods map directly to public /v1 endpoints. Helper methods compose those endpoint calls into higher-level lookups.
| Endpoint | Collection | Detail | Helpers | language support |
Notes |
|---|---|---|---|---|---|
/agents |
list_agents() |
get_agent() |
find_agent() |
Yes | list_agents(playable_only=True) adds isPlayableCharacter=True |
/buddies |
list_buddies() |
get_buddy() |
- | Yes | Direct endpoint coverage |
/bundles |
list_bundles() |
get_bundle() |
- | Yes | Direct endpoint coverage |
/ceremonies |
list_ceremonies() |
get_ceremony() |
- | No | Direct endpoint coverage |
/competitivetiers |
list_competitive_tiers() |
get_competitive_tier_set() |
- | No | Direct endpoint coverage |
/contenttiers |
list_content_tiers() |
get_content_tier() |
- | Yes | Direct endpoint coverage |
/contracts |
list_contracts() |
get_contract() |
list_contract_rewards() |
Yes | Rewards helper flattens chapter levels from one contract |
/currencies |
list_currencies() |
get_currency() |
- | Yes | Direct endpoint coverage |
/events |
list_events() |
get_event() |
get_active_events() |
Yes | Active-events helper filters by start_time and end_time |
/gamemodes |
list_gamemodes() |
get_gamemode() |
- | Yes | Direct endpoint coverage |
/gear |
list_gear() |
get_gear() |
- | Yes | Direct endpoint coverage |
/levelborders |
list_level_borders() |
get_level_border() |
- | Yes | Direct endpoint coverage |
/maps |
list_maps() |
get_map() |
find_map() |
Yes | Name helper matches exact name first, then partial match |
/missions |
list_missions() |
get_mission() |
- | No | Direct endpoint coverage |
/objectives |
list_objectives() |
get_objective() |
- | No | Direct endpoint coverage |
/playercards |
list_player_cards() |
get_player_card() |
- | Yes | Direct endpoint coverage |
/playertitles |
list_player_titles() |
get_player_title() |
- | Yes | Direct endpoint coverage |
/seasons |
list_seasons() |
get_season() |
get_current_season() |
Yes | Current-season helper selects the active season for a given time |
/sprays |
list_sprays() |
get_spray() |
- | Yes | Direct endpoint coverage |
/themes |
list_themes() |
get_theme() |
- | Yes | Direct endpoint coverage |
/weapons |
list_weapons() |
get_weapon() |
find_weapon() |
Yes | Name helper matches exact name first, then partial match |
/version |
- | get_version() |
- | No | Detail-style singleton endpoint |
The live cache hydration tests in tests/test_live_endpoints.py exercise every direct list_*/get_* mapping above, plus find_agent(), find_map(), find_weapon(), list_contract_rewards(), get_active_events(), get_current_season(), and get_version().
Install
pip install valorant-assets-api
For local development:
pip install -e .[test]
Tutorial Notebook
See notebooks/valorant_assets_api_tutorial.ipynb for a step-by-step walkthrough of the client API, including setup, localization, UUID lookups, convenience helpers, and cache configuration.
Documentation
For the Markdown docs reader path, start at docs/index.md.
Use the docs for onboarding, usage patterns, and generated reference pages. Use the notebook when you want a guided, interactive walkthrough instead of quick lookup.
Release Checklist
- Add a real
LICENSEfile and declare the matchingproject.license/project.license-filesmetadata inpyproject.toml - Add
authorsand/ormaintainersmetadata - Add
[project.urls]for homepage, repository, issues, and documentation - Build distributions with
python -m build - Validate package metadata and README rendering with
python -m twine check dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file valorant_assets_api-0.1.0.tar.gz.
File metadata
- Download URL: valorant_assets_api-0.1.0.tar.gz
- Upload date:
- Size: 25.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec57602ce99101cef85a060ee5b8de273bb7f8eb7280e94f39876a164cadf4d9
|
|
| MD5 |
40cab3fb2a3eb01472f8a64457a59163
|
|
| BLAKE2b-256 |
75e0c2a3180757bd175f9d5c7759c362f4d27a8a5c916c402bc267c685cbc6a2
|
File details
Details for the file valorant_assets_api-0.1.0-py3-none-any.whl.
File metadata
- Download URL: valorant_assets_api-0.1.0-py3-none-any.whl
- Upload date:
- Size: 19.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4b2fba2e83474bd825eeeb7c49fb9fd3bf2d7cc4f20d667a1be210f0ee4c76c
|
|
| MD5 |
c9333953663fe5f0d8b29f9dc2959262
|
|
| BLAKE2b-256 |
2a776816e3b0ee2c88a92d2303e22a4a02af7ab29784fc0028e2e1077204518f
|