add request hook