Hi, (Using VB.Net 2010)
I found an HttpWebRequest example for VB.Net here:
http://www.808.dk/?code-vbnet-httpwebrequest
I've copied the significant parts.
When I run it, I receive a "415 Unsupported Media Type" error on request.GetResponse()
Here is my code:
Dim strURI As String = "https://api.constantcontact.com/ws/customers/mycustomername/lists"
Dim strCredentials As String = strCC_AppKey & "%" & strCC_LoginName
Dim strListsURI As New Uri(strURI)
Dim strXML As String = GetCreateListXML()
Dim request As HttpWebRequest = WebRequest.Create(strListsURI)
request.Credentials = New NetworkCredential((strCredentials), strCC_Password)
request.ContentType = "application/x-www-form-urlencoded"
request.Method = "POST"
Dim encoding As New Text.UTF8Encoding() 'Use UTF8Encoding for XML requests
Dim postByteArray() As Byte = encoding.GetBytes(strXML)
request.ContentLength = postByteArray.Length
Dim postStream As IO.Stream = request.GetRequestStream()
postStream.Write(postByteArray, 0, postByteArray.Length)
postStream.Close()
Dim response As HttpWebResponse = request.GetResponse()
The strXML string looks like this:
<entry xmlns="http://www.w3.org/2005/Atom">
<id>http://api.constantcontact.com/ws/customers/cascadedsdev/lists</id>
<title type="text">Contact Lists for Customer cascadedsdev</title>
<author />
<updated>2012-10-29</updated>
<content type="application/vnd.ctct+xml">
<ContactList xmlns="http://ws.constantcontact.com/ns/1.0/">
<OptInDefault>true</OptInDefault>
<Name>My New List</Name>
<SortOrder>0</SortOrder>
</ContactList>
</content>
</entry>
I've reviewed the post that talks about the 415 error but I'm at a loss as to what the problem might be. Everything looks correct
I would greatly appreciate any assistance.
Regards,
Chris
Solved! Go to Solution.
Hi Chris,
It looks like the issue is that you're setting the wrong content type to add a contact list. You want to set your Content type to "application/atom+xml".
I hope that helps!
Best Regards,
Shannon W.
API Support Specialist.