Missing 'Expires' option on the API Key creation process
Currently, the NewAPIKey function doesn't include an option to set an Expiration date. Because the Default is 'never expires' and Octopus Deploy doesn't allow you to create an API key for longer than your current key is valid, it means you can't create API Keys using an API that expires. It seems that since the create process and return process both rely on the same object, the expiration date is also never returned.
The NewAPIKey function should be updated to include an optional Expires param.
https://github.com/OctopusDeploy/go-octopusdeploy/blob/413e63704a34311173a3a7be0ffbca94bbba54ef/octopusdeploy/api_key.go#L25
The APIKey struct should include an Expires key. https://github.com/OctopusDeploy/go-octopusdeploy/blob/413e63704a34311173a3a7be0ffbca94bbba54ef/octopusdeploy/api_key.go#L15