fetch, init, middleware