plog api: use an interface

TBH I just don't know what I was thinking.