solution & api