dataclass-wizard. This gives you attribute access, IDE autocomplete, and type safety.
If you’d rather work with plain dictionaries — for example, to forward the response directly to another service — you can enable raw data mode.
Enabling raw data mode
Passraw_data=True when initializing the client:
Typed vs raw
Typed (default):When to use raw mode
Use raw mode when:- You’re forwarding the response directly to another service or API
- You want the exact JSON structure as Riot returns it
- You’re debugging and want to inspect the raw response
- You want IDE autocomplete and type checking
- You’re building an application that works with the data
Error handling
Error handling works the same in both modes —RiotAPIResponseError is raised regardless.

