Hey everyone, I'm working on an intranet site for my company and one of the requests was to be able to dump contacts into a public folder when they are created or modified on the intranet. I am using ASP/VB.net 3.5. Here is the code I always seem to get a 400 error when it POSTS to the API can anyone help. Thanks
Dim Webrequest As HttpWebRequest
Dim Webresponse As HttpWebResponse = Nothing
Dim address As Uri
Dim post As String = "<?xml version=""1.0"" encoding=""UTF-8""?>" _
& "<contact>" _
& "<subject>" & LNametxt.Text & ", " & FNametxt.Text & "</subject>" _
& "<direct_ref>" & scalixDref.Value & "</direct_ref>" _
& "<message_class>IPM.Contact</message_class>" _
& "<display_name>" & FNametxt.Text & " " & MNametxt.Text & " " & LNametxt.Text & "</display_name>" _
& "<first_name>" & FNametxt.Text & "</first_name>" _
& "<middle_name>" & MNametxt.Text & "</middle_name>" _
& "<last_name>" & LNametxt.Text & "</last_name>" _
& "<company_name>" & Companytxt.Text & "</company_name>" _
& "<email1_address>" & Emailtxt.Text & "</email1_address>" _
& "<email1_address_with_comment>" & FNametxt.Text & " " & LNametxt.Text & "<""" & Emailtxt.Text & """></email1_address_with_comment>" _
& "<email1_display_name>" & Emailtxt.Text & "</email1_display_name>" _
& "<email1_address_type>SMTP</email1_address_type>" _
& "<work_phone_number>" & Phonetxt.Text & "</work_phone_number>" _
& "<fax1_address_type>FAX</fax1_address_type>" _
& "<work_fax_number>" & Faxtxt.Text & "</work_fax_number>" _
& "<mobile_phone_number>" & Celltxt.Text & "</mobile_phone_number>" _
& "<pager_phone_number>" & Pagertxt.Text & "</pager_phone_number>" _
& "<work_address_street>" & Addresstxt.Text & "</work_address_street>" _
& "<work_address_city>" & Citytxt.Text & "</work_address_city>" _
& "<work_address_state>" & Stateddl.SelectedValue & "</work_address_state>" _
& "<work_address_zip>" & Ziptxt.Text & "</work_address_zip>" _
& "<job_title>" & txtJobTitle.Text & "</job_title>" _
& "<mapi_charset>UTF8</mapi_charset>" _
& "<is_recurring>false</is_recurring>" _
& "<reminder_set>false</reminder_set>" _
& "<send_rich_info>false</send_rich_info>" _
& "<selected_mailing_address>2</selected_mailing_address>" _
& "</contact>"
address = New Uri("http://192.168.13.10/api/sguilford@muyo.net/mailbox/Public%20Folders/Contacts")
Webrequest = DirectCast(Net.WebRequest.Create(address), HttpWebRequest)
Webrequest.Credentials = New NetworkCredential("*************", "*****")
Dim data = New StringBuilder()
Dim byteData() As Byte
Dim reader As StreamReader
data.Append(HttpUtility.UrlEncode(post))
Webrequest.Method = "POST"
Webrequest.ProtocolVersion = HttpVersion.Version11
byteData = UTF8Encoding.UTF8.GetBytes(data.ToString())
Webrequest.ContentType = "application/scalix-properties"
Webrequest.ContentLength = byteData.Length
Dim postStream As Stream = Nothing
Try
postStream = Webrequest.GetRequestStream()
postStream.Write(byteData, 0, byteData.Length)
Finally
If Not postStream Is Nothing Then postStream.Close()
End Try
Try
Webresponse = DirectCast(Webrequest.GetResponse(), HttpWebResponse)
reader = New StreamReader(Webresponse.GetResponseStream())
lblError.Text = reader.ReadToEnd()
Finally
If Not Webresponse Is Nothing Then Webresponse.Close()
End Try