rough cut of API3