Guild Wars 2 API client written in Kotlin
This repository contains code for Guild Wars 2 API client based on documentation.
Client operates on API version v2.
JDK | Gwatlin |
---|---|
21 | 1.9.2 and above |
17 | 1.9.1 and below |
It seems that not all api features are documented on wiki page, so feel free to create issues for missing features. Issue should contain example json response for given endpoint.
Category | Finished |
---|---|
Account | ✔️ |
Achievements | ✔️ |
Characters | ✔️ |
Commerce | ✔️ |
Daily Rewards | ✔️ |
Game Mechanics | ✔️ |
Guild | ✔️ |
Home Instance | ✔️ |
Items | ✔️ |
Map Information | ✔️ |
Miscellaneous | ✔️ |
Story | ✔️ |
Structured PvP | ✔️ |
Trading Post | ✔️ |
World vs. World | ✔️ |
Artifact is available on Maven Central repository.
For full code documentation visit documentation page
// Client without API KEY
val wvwClient = GWWvwClient()
val wvwRank = wvwClient.getRanks(listOf(1))
println(wvwRank)
// WvwRank(id=1, minRank=1, title=Invader)
// Client with API KEY
val tokenInfoClient = GWTokenClient("API KEY here")
val tokenInfo = tokenInfoClient.getTokenInfo()
println(tokenInfo)
// Token(id=ABCDE02B-8888-FEBA-1234-DE98765C7DEF, name=My API Key, permissions=[account, characters, tradingpost, unlocks, build], type=null, expiresAt=null, issuedAt=null, urls=null)
To release new version, increment project.version
property in build file. Next, run release script to create new tag and push it to GitHub or create and push new tag manually. New package version will be deployed to Maven repository by GitHub Actions.