Add configuration options to support PRM APN_ID tagging
- Dominant language
- Python
- Stars
- 17.3k
- Forks
- 4.6k
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 13
Description
### Describe the feature
This feature adds configuration options to allow users to specify an APN Martketplace Product code, which is included in the user agent string on CLI calls that matches the format required for PRM compliance.
### Use Case
As part of the changes for AWS Partners for PRM attribution (See: https://docs.aws.amazon.com/PRM/latest/aws-prm-onboarding-guide/user-agent-string.html) we now need ways to be able to tag resources as well as API calls for certain services.
This is possible with custom clients and with botocore directly, but the CLI uses guards to protect data sent in the user agent string. The PRM instructions in the docs suggests using the existing botocore `sdk_ua_app_id` option, however the format required is mangled because it contains it's own prefix.
### Proposed Solution
This solution adds a global CLI argument `--apn-id` and matching config option, as well as support for using an environment variable `AWS_APN_ID` to set a marketplace product code (or revenue attribution id) for use in tagging.
### Other Information
_No response_
### Acknowledgements
- [x] I may be able to implement this feature request
- [ ] This feature might incur a breaking change
### CLI version used
2.32.34
### Environment details (OS name and version, etc.)
Python/3.13.11 Windows/11 exe/AMD64
Contributor guide
Assessment
This issue has not been assessed yet.