initial api call implementation