accept json object as single data arg