major update on api; fully configurable ajax request