public Document UploadSmallDocument(byte[] inputDocumentBytes, string itemPath, string userId) { try { MemoryStream memStream = new MemoryStream(inputDocumentBytes); var urlRoot = $"https://graph.microsoft.com/v1.0/"; var url = $"{urlRoot}/users/{userId}/drive/root:/{itemPath}:/content"; var byteContent = new ByteArrayContent(inputDocumentBytes); byteContent.Headers.ContentType = new MediaTypeHeaderValue("text/plain"); var response = _restClient.putResponse(url, byteContent); var responseBody = response.Content.ReadAsStringAsync().ConfigureAwait(false).GetAwaiter().GetResult(); if ((response.StatusCode != HttpStatusCode.Created) && (response.StatusCode != HttpStatusCode.OK)) { throw new Exception(responseBody); } var document = JsonConvert.DeserializeObject <Document>(responseBody); return(document); } catch (ServiceException ex) { Console.Error.WriteLine(ex); } return(null); }