def put(self, pack_config_content, pack_ref, requester_user, show_secrets=False):
        """
        Create a new config for a pack.

        Handles requests:
            POST /configs/<pack_ref>
        """

        try:
            config_api = ConfigAPI(pack=pack_ref, values=vars(pack_config_content))
            config_api.validate(validate_against_schema=True)
        except jsonschema.ValidationError as e:
            raise ValueValidationException(six.text_type(e))
        except ValueValidationException as e:
            raise ValueValidationException(six.text_type(e))

        self._dump_config_to_disk(config_api)

        config_db = ConfigsRegistrar.save_model(config_api)

        mask_secrets = self._get_mask_secrets(requester_user, show_secrets=show_secrets)
        return ConfigAPI.from_model(config_db, mask_secrets=mask_secrets)

        Create a new config for a pack.

        Handles requests:
            POST /configs/<pack_ref>
        
st2api/st2api/controllers/v1/pack_configs.py