Enable parameters in TeamCity plugin
The API key field in TeamCity should be able to be set by a TeamCity parameter. This way the API key can be set as a global parameter within TeamCity to be used by multiple projects.
This can be done, we use it in a number of places ourselves. The UI doesn't necessarily make it obvious, but the API Key field will accept a parameter reference. For example, if you have a parameter called MyApiKey and you type %MyApiKey% into the ApiKey field, it will resolve the value at runtime. The password field * characters admittedly don't make this easy to discover or easy to enter.
Will P commented
Either globally or at a project level, either way, it will make life easier, though there is a workaround in using the additional commandline parameters, but it would be better if it was a native feature. I'm using an older version of Octopus at the moment, but I haven't seen anything about this having been fixed.