make approach uniform and bring up to current api spec