unifying backend interaction