Implement challenge API endpoints