I would start by taking a look at the current gwca standalone code.
Then I would view a larger project using it being toolbox.
Also it can be helpful to look at old outdated gwca versions as it was more crude but easier to understand imo.
The up to date gwca git has a few simple examples that would be worth looking into and testing. The most straight forward route to a simple api would be to get a .dll injector, make a .dll project, and add pattern matching for known patterns to start mapping out simple in game statistics. The two major functions to hook would be a high call count function that would be the game loop and the packet send function.