A transport layer abstraction for talking to service APIs