always use a Buffer on data
updated simple api