Taking a stab at the API...