A method for an extensible key management system to perform extensible key management for application program interfaces (APIs), the method comprising the extensible key management system: obtaining a first master key from a first third party provider service and a second master key from a second third party provider service, wherein the first master key is an API key for identifying the extensible key management system to a first external API of the first third party provider service and is for use by the extensible key management system to obtain sub-keys from the first third party provider service, and wherein the second master key is an API key for identifying the extensible key management system to a second external API of the second third party provider service and is for use by the extensible key management system to obtain sub-keys from the second third party provider service; associating, via a developer services portal, an application with a first API proxy for the first external API and with a second API proxy for the second external API; obtaining and storing, by a processor, a first sub-key for the first external API automatically when the application is associated with the first API proxy and a second sub-key for the second external API automatically when the application is associated with the second API proxy, wherein obtaining and storing the first sub-key for the first external API comprises transmitting a first request to the first third party provider service for the first sub-key that includes the first master key, and wherein obtaining and storing the second sub-key for the second external API comprises transmitting a second request to the second third party provider service for the second sub-key that includes the second master key; receiving a first service call message from the application for the first external API that includes a developer API key of a developer of the application and receiving a second service call message from the application for the second external API that includes said developer API key, wherein developer API keys are uniquely assigned to each developer associated with the extensible key management system, said developer API key of the developer of the application being an API key used by the developer in the application to call all external APIs that require an API key; replacing, by the processor, the developer API key with the first sub-key in the first service call message based on a first association, stored by the extensible key management system, of the developer API key with the obtained first sub-key, the application and the first external API; and replacing, by the processor, the developer API key with the second sub-key in the second service call message based on a second association, stored by the extensible key management system, of the developer API key with the obtained second sub-key, the application and the second external API. obtaining a first master key from a first third party provider service and a second master key from a second third party provider service, wherein the first master key is an API key for identifying the extensible key management system to a first external API of the first third party provider service and is for use by the extensible key management system to obtain sub-keys from the first third party provider service, and wherein the second master key is an API key for identifying the extensible key management system to a second external API of the second third party provider service and is for use by the extensible key management system to obtain sub-keys from the second third party provider service; associating, via a developer services portal, an application with a first API proxy for the first external API and with a second API proxy for the second external API; obtaining and storing, by a processor, a first sub-key for the first external API automatically when the application is associated with the first API proxy and a second sub-key for the second external API automatically when the application is associated with the second API proxy, wherein obtaining and storing the first sub-key for the first external API comprises transmitting a first request to the first third party provider service for the first sub-key that includes the first master key, and wherein obtaining and storing the second sub-key for the second external API comprises transmitting a second request to the second third party provider service for the second sub-key that includes the second master key; receiving a first service call message from the application for the first external API that includes a developer API key of a developer of the application and receiving a second service call message from the application for the second external API that includes said developer API key, wherein developer API keys are uniquely assigned to each developer associated with the extensible key management system, said developer API key of the developer of the application being an API key used by the developer in the application to call all external APIs that require an API key; replacing, by the processor, the developer API key with the first sub-key in the first service call message based on a first association, stored by the extensible key management system, of the developer API key with the obtained first sub-key, the application and the first external API; and replacing, by the processor, the developer API key with the second sub-key in the second service call message based on a second association, stored by the extensible key management system, of the developer API key with the obtained second sub-key, the application and the second external API.