nicehash fee is 4%, is it hardcoded to 3%?
No, it is not hardcoded. Can be changeable via config "fee" key.
if used on another pool, will it override what is provided by api?
Fee can be set in config, but if pool provides its value in API, it will be overwritten. Nicehash doesn't have fee in API reporting, so it should be set manually.