I have a similar program I run that does this stuff for United flights:
https://github.com/ejcx/uwc/blob/master/uwc.go
The code is horrendous but it has worked for years and I guess when I wrote it originally I didn't want to use a go struct for some reason?