add json API, encoding only so far