VB.NET
VB.NET
effectconnect Read Orderlist
See more effectconnect Examples
Get a set of orders filtered by the parameters in the XML payload.Chilkat VB.NET Downloads
Dim success As Boolean = False
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim fullUri As String = "https://submit.effectconnect.com/orderlist"
Dim uri As String = "/orderlist"
Dim apiVersion As String = "2.0"
Dim http As New Chilkat.Http
' Use your effectconnect public key here..
http.SetRequestHeader("KEY","PUBLIC_KEY")
http.SetRequestHeader("VERSION",apiVersion)
http.SetRequestHeader("URI",uri)
http.SetRequestHeader("RESPONSETYPE","XML")
http.SetRequestHeader("RESPONSELANGUAGE","en")
' Get the current date/time in timestamp format.
Dim dt As New Chilkat.CkDateTime
dt.SetFromCurrentSystemTime()
Dim timestamp As String = dt.GetAsTimestamp(True)
http.SetRequestHeader("TIME",timestamp)
Debug.WriteLine("timestamp = " & timestamp)
' Create the following XML request body:
' <?xml version="1.0" encoding="utf-8"?>
' <list>
' <filters>
' <fromDateFilter>
' <filterValue>2018-09-14T12:12:12+01:00</filterValue>
' </fromDateFilter>
' <toDateFilter>
' <filterValue>2019-04-13T23:59:59+01:00</filterValue>
' </toDateFilter>
' <hasStatusFilter>
' <filterValue>paid</filterValue>
' </hasStatusFilter>
' <hasTagFilter>
' <filterValue>
' <tagName>Test</tagName>
' <exclude>false</exclude>
' </filterValue>
' </hasTagFilter>
' </filters>
' </list>
' Use this online tool to generate the code from sample XML:
' Generate Code to Create XML
Dim xml As New Chilkat.Xml
xml.Tag = "list"
xml.UpdateChildContent("filters|fromDateFilter|filterValue","2018-09-14T12:12:12+01:00")
xml.UpdateChildContent("filters|toDateFilter|filterValue","2019-04-13T23:59:59+01:00")
xml.UpdateChildContent("filters|hasStatusFilter|filterValue","paid")
xml.UpdateChildContent("filters|hasTagFilter|filterValue|tagName","Test")
xml.UpdateChildContent("filters|hasTagFilter|filterValue|exclude","false")
xml.EmitCompact = True
Dim sbXml As New Chilkat.StringBuilder
xml.GetXmlSb(sbXml)
' Build a string-to-sign and sign it using our effectconnect private key
Dim sbStringToSign As New Chilkat.StringBuilder
sbStringToSign.AppendInt(sbXml.Length)
sbStringToSign.Append("POST")
sbStringToSign.Append(uri)
sbStringToSign.Append(apiVersion)
sbStringToSign.Append(timestamp)
Dim crypt As New Chilkat.Crypt2
crypt.MacAlgorithm = "hmac"
crypt.HashAlgorithm = "sha512"
crypt.EncodingMode = "base64"
' Use your effectconnect private key here:
crypt.SetMacKeyString("PRIVATE_KEY")
http.SetRequestHeader("SIGNATURE",crypt.MacStringENC(sbStringToSign.GetAsString()))
' Send the POST..
Dim resp As New Chilkat.HttpResponse
success = http.HttpStr("POST",fullUri,xml.GetXml(),"utf-8","application/xml",resp)
If (success = False) Then
Debug.WriteLine(http.LastErrorText)
Exit Sub
End If
Debug.WriteLine("response status code = " & resp.StatusCode)
' Examine the response. The response status code can be 200 for both errors and success.
' The success or error is based on the XML returned in the response body.
Dim xmlResp As New Chilkat.Xml
xmlResp.LoadXml(resp.BodyStr)
Debug.WriteLine("response body:")
Debug.WriteLine(xmlResp.GetXml())
' Remove previously set headers (unless we want the same headers for the next request,
' in which case we may remove or update individual headers by calling SetRequestHeader.
http.ClearHeaders()