adding separated API solution