public void Persist(Events theEvents) { byte[] requestBody = theEvents.Encode(new Utf8JsonEncoder()); Uri pathToNewDocument = _couchDbDatabaseDetails.UriForANewDocument; HttpWebRequest request = new HttpWebRequestFactory(pathToNewDocument, HttpMethod.PUT) .WithBasicAuthorisation(_couchDbDatabaseDetails.CredentialsEncodedForBasicAuth) .WithContent(MimeType.APPLICATIONJSON, requestBody) .Build(); _requestGateway.SafelyMakeRequest(request).ThrowExceptionsForAnyFailures(HttpStatusCode.Created); }