Rework API method construction