accept json, unmarshal into struct add to a list