WCF REST Service – Available Processes
Note: All SmartConnect web service processes require passing of client credentials to the service along with the parameters defined for the request.
The following requests are available through the SmartConnect WCF REST service. Each method is documented with its Service URI, web.config on/off flag, security setting, return type, implementation notes, and sample VB.NET and C# code.
1. Get Map Methods
Methods for retrieving map lists and column definitions from SmartConnect.
Get Map List
Returns a list of runnable maps to the calling client.
|
Service URI |
SmartConnect.svc/getmaplist |
|
web.config Flag |
AllowGetMaps |
|
Security Setting |
GetMaps |
|
Return Type |
MapList |
Implementation Details
|
• |
If the username is not recognized by SmartConnect, only runnable maps that have ‘allow any user to run this map’ checked are returned. |
|
• |
If the username is recognized and the user is not an admin, runnable maps assigned to the user through map permissions, plus maps with ‘allow any user’ checked, are returned. |
|
• |
If the username is recognized and the user is an admin, all runnable maps are returned. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmaplist") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmaplist"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Get Extender Map List
Returns a list of runnable maps with an Extender object as the data source to the calling client.
|
Service URI |
SmartConnect.svc/getmaplist?type={extenderType} |
|
web.config Flag |
AllowGetMaps |
|
Security Setting |
GetMaps |
|
Return Type |
MapList |
Implementation Details
|
• |
If the username is not recognized by SmartConnect, only runnable maps with data sources of the Extender type supplied that have ‘allow any user to run this map’ checked are returned. |
|
• |
If the username is recognized and the user is not an admin, runnable maps of the Extender type supplied that have been assigned to the user through map permissions, as well as maps with ‘allow any user’ checked, are returned. |
|
• |
If the username is recognized and the user is an admin, all runnable maps of the Extender type supplied are returned. |
Sample Usage – VB.NET
|
‘ return maps with Extender forms as the data source |
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmaplist?type=2") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
// return maps with Extender windows as the data source |
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmaplist?type=1"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Get SmartList Map List
Returns a list of maps with a SmartList as the data source to the calling client.
|
Service URI |
SmartConnect.svc/getmapsmartlist |
|
web.config Flag |
AllowGetMaps |
|
Security Setting |
GetMaps |
|
Return Type |
MapList |
Implementation Details
|
• |
If the username is not recognized by SmartConnect, only maps with SmartList data sources that have ‘allow any user to run this map’ checked are returned. |
|
• |
If the username is recognized and the user is not an admin, maps with SmartList data sources assigned to the user through map permissions, plus maps with ‘allow any user’ checked, are returned. |
|
• |
If the username is recognized and the user is an admin, all maps with a SmartList data source are returned. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmapsmartlist") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmapsmartlist"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Get Map Columns
Returns a list of columns for the specified map.
|
Service URI |
SmartConnect.svc/getmapcolumns?map={map} |
|
web.config Flag |
AllowGetMapColumns |
|
Security Setting |
GetMaps |
|
Return Type |
MapColumnList |
Implementation Details
|
• |
The credentials of the user configured to run the WCF REST service are used to access SmartConnect and return the columns associated with the specified map. |
Sample Usage – VB.NET
|
‘ return columns for a map of id TEST |
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmapcolumns?map=TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
// return columns for a map of id GP_ACC |
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getmapcolumns?map=GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
2. Map Runs
Methods for executing SmartConnect maps, with options for standard, data table, XML, and InfoPath data sources.
Run Map
Runs the specified map and returns the run results.
|
Service URI |
SmartConnect.svc/runmap/{mapId} |
|
web.config Flag |
AllowRunMap |
|
Security Setting |
Run Map |
|
Return Type |
RunMapResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to run the map, the credentials provided with the service call are used to determine access to the map. |
|
• |
Add request.Accept = "application/json" to receive JSON back from the service instead of XML. |
Sample Usage – VB.NET
|
‘ runs a map with an id of TEST |
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmap/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
// runs a map with an id of GP_ACC |
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmap/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Run Map Data Table
Runs the specified map using the data provided in the data table XML and returns the results.
|
Service URI |
SmartConnect.svc/runmapdatatable/{mapId} |
|
web.config Flag |
AllowRunMapDataTable |
|
Security Setting |
Run Map With Data Table |
|
Return Type |
RunMapResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to run the map, the credentials provided with the service call are used to determine access to the map. |
|
• |
Add request.Accept = "application/json" to receive JSON back from the service instead of XML. |
|
• |
This method requires the data passed to the service to be a DataTable in either XML or JSON format. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapdatatable/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
request.Method = "POST" |
|
Using writer As New StringWriter() |
|
dataTable.DataSet.WriteXml(writer, XmlWriteMode.WriteSchema) |
|
End Using |
|
Dim xml As String = writer.ToString() |
|
request.ContentLength = xml.Length |
|
request.ContentType = "text/xml" |
|
Using reqStream As Stream = request.GetRequestStream() |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length) |
|
End Using |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapdatatable/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
request.Method = "POST"; |
|
using(StringWriter writer = new StringWriter()) |
|
{ |
|
dataTable.DataSet.WriteXml(writer, XmlWriteMode.WriteSchema); |
|
} |
|
string xml = writer.ToString(); |
|
request.ContentLength = xml.Length; |
|
request.ContentType = "text/xml"; |
|
using(Stream reqStream = request.GetRequestStream()) |
|
{ |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length); |
|
} |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Sample Data XML
|
<NewDataSet> |
|
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" |
|
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> |
|
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> |
|
<xs:complexType> |
|
<xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="Table"> |
|
<xs:complexType> |
|
<xs:sequence> |
|
<xs:element name="CustomerName" type="xs:string" minOccurs="0" /> |
|
<xs:element name="CustomerID" type="xs:string" minOccurs="0" /> |
|
<xs:element name="PhoneNumber" type="xs:string" minOccurs="0" /> |
|
<xs:element name="Contact" type="xs:string" minOccurs="0" /> |
|
</xs:sequence> |
|
</xs:complexType> |
|
</xs:element> |
|
</xs:choice> |
|
</xs:complexType> |
|
</xs:element> |
|
</xs:schema> |
|
<Table> |
|
<CustomerName>Name</CustomerName> |
|
<CustomerID>ID</CustomerID> |
|
<PhoneNumber>Phone</PhoneNumber> |
|
<Contact>Contact</Contact> |
|
</Table> |
|
</NewDataSet> |
Run Map XML
Runs the specified map using the data provided in the XML string and returns the results.
|
Service URI |
SmartConnect.svc/runmapxml/{mapId} |
|
web.config Flag |
AllowRunMapXml |
|
Security Setting |
Run Map With Xml |
|
Return Type |
RunMapResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to run the map, the credentials provided with the service call are used to determine access to the map. |
|
• |
Add request.Accept = "application/json" to receive JSON back from the service instead of XML. |
|
• |
This method requires the data passed to the service to be XML. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapxml/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
request.Method = "POST" |
|
Dim xml As String = "<Root><Row><CustomerName>Name</CustomerName></Row></Root>" |
|
request.ContentLength = xml.Length |
|
request.ContentType = "text/xml" |
|
Using reqStream As Stream = request.GetRequestStream() |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length) |
|
End Using |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapxml/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
request.Method = "POST"; |
|
string xml = "<Root><Row><CustomerName>Name</CustomerName></Row></Root>"; |
|
request.ContentLength = xml.Length; |
|
request.ContentType = "text/xml"; |
|
using(Stream reqStream = request.GetRequestStream()) |
|
{ |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length); |
|
} |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Run Map Info Path
Runs an InfoPath map and passes a data table as the data source.
|
Service URI |
SmartConnect.svc/runmapinfopath/{mapId} |
|
web.config Flag |
AllowRunMapInfoPath |
|
Security Setting |
Run Map With InfoPath |
|
Return Type |
RunMapResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to run the map, the credentials provided with the service call are used to determine access to the map. |
|
• |
This method requires the data passed to the service to be a DataTable in XML format. |
|
• |
Used specifically for maps configured to use an InfoPath XSD data source. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapinfopath/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
request.Method = "POST" |
|
Using writer As New StringWriter() |
|
dataTable.DataSet.WriteXml(writer, XmlWriteMode.WriteSchema) |
|
End Using |
|
Dim xml As String = writer.ToString() |
|
request.ContentLength = xml.Length |
|
request.ContentType = "text/xml" |
|
Using reqStream As Stream = request.GetRequestStream() |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length) |
|
End Using |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapinfopath/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
request.Method = "POST"; |
|
using(StringWriter writer = new StringWriter()) |
|
{ |
|
dataTable.DataSet.WriteXml(writer, XmlWriteMode.WriteSchema); |
|
} |
|
string xml = writer.ToString(); |
|
request.ContentLength = xml.Length; |
|
request.ContentType = "text/xml"; |
|
using(Stream reqStream = request.GetRequestStream()) |
|
{ |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length); |
|
} |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
3. Return Output XML
Variants of map run methods that additionally return the output XML generated by the map alongside the standard run results.
XML Output – Run Map
Runs a map and returns the output XML from the map in addition to the standard run results.
|
Service URI |
SmartConnect.svc/runmapoutputxml/{mapId} |
|
web.config Flag |
AllowRunMapOutputXml |
|
Security Setting |
Run Map With Output Xml |
|
Return Type |
RunMapXmlResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to run the map, the credentials provided with the service call are used to determine access to the map. |
|
• |
The output XML is returned alongside the standard run results. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapoutputxml/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapoutputxml/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
XML Output – Run Map Data Table
Runs a map, sends a data table as the data source, and returns the output XML from the map.
|
Service URI |
SmartConnect.svc/runmapdatatableoutputxml/{mapId} |
|
web.config Flag |
AllowRunMapDataTableOutputXml |
|
Security Setting |
Run Map With Data Table Output Xml |
|
Return Type |
RunMapXmlResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to run the map, the credentials provided with the service call are used to determine access to the map. |
|
• |
This method requires the data passed to the service to be a DataTable in either XML or JSON format. |
|
• |
Both the run results and the output XML generated by the map are returned. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapdatatableoutputxml/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
request.Method = "POST" |
|
Using writer As New StringWriter() |
|
dataTable.DataSet.WriteXml(writer, XmlWriteMode.WriteSchema) |
|
End Using |
|
Dim xml As String = writer.ToString() |
|
request.ContentLength = xml.Length |
|
request.ContentType = "text/xml" |
|
Using reqStream As Stream = request.GetRequestStream() |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length) |
|
End Using |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapdatatableoutputxml/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
request.Method = "POST"; |
|
using(StringWriter writer = new StringWriter()) |
|
{ |
|
dataTable.DataSet.WriteXml(writer, XmlWriteMode.WriteSchema); |
|
} |
|
string xml = writer.ToString(); |
|
request.ContentLength = xml.Length; |
|
request.ContentType = "text/xml"; |
|
using(Stream reqStream = request.GetRequestStream()) |
|
{ |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length); |
|
} |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Sample Data XML
|
<NewDataSet> |
|
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" |
|
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> |
|
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> |
|
<xs:complexType> |
|
<xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="Table"> |
|
<xs:complexType> |
|
<xs:sequence> |
|
<xs:element name="CustomerName" type="xs:string" minOccurs="0" /> |
|
<xs:element name="CustomerID" type="xs:string" minOccurs="0" /> |
|
<xs:element name="PhoneNumber" type="xs:string" minOccurs="0" /> |
|
<xs:element name="Contact" type="xs:string" minOccurs="0" /> |
|
</xs:sequence> |
|
</xs:complexType> |
|
</xs:element> |
|
</xs:choice> |
|
</xs:complexType> |
|
</xs:element> |
|
</xs:schema> |
|
<Table> |
|
<CustomerName>Name</CustomerName> |
|
<CustomerID>ID</CustomerID> |
|
<PhoneNumber>Phone</PhoneNumber> |
|
<Contact>Contact</Contact> |
|
</Table> |
|
</NewDataSet> |
XML Output – Run Map XML
Runs a map, sends an XML file as the data source, and returns the output XML from the map.
|
Service URI |
SmartConnect.svc/runmapxmloutputxml/{mapId} |
|
web.config Flag |
AllowRunMapXmlOutputXml |
|
Security Setting |
Run Map With Xml Output Xml |
|
Return Type |
RunMapXmlResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to run the map, the credentials provided with the service call are used to determine access to the map. |
|
• |
This method requires the data passed to the service to be XML. |
|
• |
Both the run results and the output XML generated by the map are returned. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapxmloutputxml/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
request.Method = "POST" |
|
Dim xml As String = "<Root><Row><CustomerName>Name</CustomerName></Row></Root>" |
|
request.ContentLength = xml.Length |
|
request.ContentType = "text/xml" |
|
Using reqStream As Stream = request.GetRequestStream() |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length) |
|
End Using |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/runmapxmloutputxml/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
request.Method = "POST"; |
|
string xml = "<Root><Row><CustomerName>Name</CustomerName></Row></Root>"; |
|
request.ContentLength = xml.Length; |
|
request.ContentType = "text/xml"; |
|
using(Stream reqStream = request.GetRequestStream()) |
|
{ |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length); |
|
} |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Save Process Errors
Saves map processing errors to the SmartConnect database.
|
Service URI |
SmartConnect.svc/saveprocesserrors |
|
web.config Flag |
AllowSaveProcessErrors |
|
Security Setting |
Save Process Errors |
|
Return Type |
SaveProcessErrorsResponse |
Implementation Details
|
• |
The credentials of the user configured to run the WCF REST service are used to connect to the SmartConnect database to save the errors. |
|
• |
Errors are passed to the service as a POST body in XML format. |
|
• |
This method is typically called after a client-side run to persist error records. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/saveprocesserrors") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
request.Method = "POST" |
|
Dim xml As String = "<Root><Row><CustomerName>Name</CustomerName></Row></Root>" |
|
request.ContentLength = xml.Length |
|
request.ContentType = "text/xml" |
|
Using reqStream As Stream = request.GetRequestStream() |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length) |
|
End Using |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/saveprocesserrors"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
request.Method = "POST"; |
|
string xml = "<Root><Row><CustomerName>Name</CustomerName></Row></Root>"; |
|
request.ContentLength = xml.Length; |
|
request.ContentType = "text/xml"; |
|
using(Stream reqStream = request.GetRequestStream()) |
|
{ |
|
reqStream.Write(Encoding.ASCII.GetBytes(xml), 0, xml.Length); |
|
} |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
4. Get Data
Method for retrieving the data from a map’s data source without running the map.
Get Data
Gets the data from the data source associated with a map.
|
Service URI |
SmartConnect.svc/getdata/{mapId} |
|
web.config Flag |
AllowGetData |
|
Security Setting |
Get Data |
|
Return Type |
GetDataResponse |
Implementation Details
|
• |
While the credentials of the user configured to run the SmartConnect WCF REST service are used to access the data source, the credentials provided with the service call are used to determine access to the map. |
|
• |
Returns data in the same format as would be processed by the map (XML or JSON depending on request Accept header). |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getdata/TEST") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/getdata/GP_ACC"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
5. Validation
Methods to verify service availability and database connectivity.
Validate Connection
Ensures that a connection can be made to the WCF REST service.
|
Service URI |
SmartConnect.svc/validateconnection |
|
web.config Flag |
AllowValidateConnection |
|
Security Setting |
Validate Connection |
|
Return Type |
ValidateConnectionResponse |
Implementation Details
|
• |
This call verifies that the WCF REST service is running and accessible. |
|
• |
Does not require a connection to the SmartConnect MSSQL database — it tests service availability only. |
|
• |
Returns a simple success/failure response with a message. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/validateconnection") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/validateconnection"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |
Validate Session
Ensures that the WCF REST service can connect to the SmartConnect MSSQL database.
|
Service URI |
SmartConnect.svc/validatesession |
|
web.config Flag |
AllowValidateSession |
|
Security Setting |
Validate Session |
|
Return Type |
ValidateSessionResponse |
Implementation Details
|
• |
This call verifies the full connection chain: service availability and the ability to reach the SmartConnect MSSQL database. |
|
• |
Returns a success/failure response. If the database is unreachable, the response will indicate the failure reason. |
|
• |
Use this call during setup and troubleshooting to confirm that the service is fully operational. |
Sample Usage – VB.NET
|
Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/validatesession") |
|
request.Credentials = New System.Net.NetworkCredential("username", "password") |
|
Dim response As System.Net.WebResponse = request.GetResponse() |
|
Dim result As String = String.Empty |
|
Using responseStream As New System.IO.StreamReader(response.GetResponseStream()) |
|
Dim result As String = responseStream.ReadToEnd() |
|
End Using |
|
Dim doc As New XmlDocument() |
|
doc.LoadXml(result) |
|
Return doc |
Sample Usage – C#.NET
|
System.Net.WebRequest request = System.Net.WebRequest.Create("webservice.eonesolutions.com/SmartConnect.svc/validatesession"); |
|
request.Credentials = new System.Net.NetworkCredential("username", "password"); |
|
System.Net.WebResponse response = request.GetResponse(); |
|
string result = string.Empty; |
|
using(System.IO.StreamReader responseStream = new System.IO.StreamReader(response.GetResponseStream())) |
|
{ |
|
string result = responseStream.ReadToEnd(); |
|
} |
|
XmlDocument doc = new XmlDocument(); |
|
doc.LoadXml(result); |
|
return doc; |