I spent quite a bit of time searching and trying to set it up. There are a number of responses that suggest using ethtool --change <interface> wol g, but this is only a temporary solution and the WoL setting is reset after system is suspended.
Since I use smart home automation to put my PC to sleep and wake it, I need WoL to be enabled permanently. Some places suggest to setup a systemd service to run the above command, but it’s quite tricky to ensure that the command runs when resuming from wake. Furthermore, I noticed that sometimes the WoL setting is still overriden by some other part of the system.
Ultimately using nmcli worked best for me. I am posting this question mostly to answer it myself and help others looking for this information.