add struct  api and models