provide a api for fetch pattern