An base abstract for api controller