ability to make requests sync or async