I was trying to do this the easy way with C#, but apparently that is not the tool of choice from looking at the code samples :) private bool PutData(string sURL, string sData, out string sResponse) { try { System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding(); byte[] arr = encoding.GetBytes(sData); HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(sURL); request.Credentials = new NetworkCredential(" ", " "); request.Method = "PUT"; request.ContentType = "text/xml"; request.ContentLength = arr.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(arr, 0, arr.Length); dataStream.Close(); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream respStream = ...