Exigo Web Services API v2022.12.19.1

GetCustomReport

Returns a custom report in dataset format.

Input Properties

GetCustomReportRequest
PropertyData TypeNotes
ReportID Int32Unique Report ID.
Parameters ParameterRequest[]
ParameterRequest
PropertyData TypeNotes
ParameterNameStringOptional.
ValueObject

Output Properties

GetCustomReportResponse
PropertyData TypeNotes
ReportDataDataSet

Http Request

GET https://yourcompany-api.exigo.com/3.0/report?reportID=1
  &parameters[0][ParameterName]=1
  &parameters[0][Value]=1
Authorization: Basic base64Encoded
                            

Http Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: length

{ "reportData": null, "result": null }

Soap Request

The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.

POST /3.0/ExigoApi.asmx HTTP/1.1
Host: api.exigo.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://api.exigo.com/GetCustomReport"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <ApiAuthentication xmlns="http://api.exigo.com/"> <LoginName>string</LoginName> <Password>string</Password> <Company>string</Company> <Identity>string</Identity> <RequestTimeUtc>dateTime</RequestTimeUtc> <Signature>string</Signature> </ApiAuthentication> </soap:Header> <soap:Body> <GetCustomReportRequest xmlns="http://api.exigo.com/"> <ReportID>int</ReportID> <Parameters> <ParameterRequest> <ParameterName>string</ParameterName> <Value /> </ParameterRequest> </Parameters> </GetCustomReportRequest> </soap:Body> </soap:Envelope>

Soap Response

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetCustomReportResult xmlns="http://api.exigo.com/"> <ReportData> <xsd:schema>schema</xsd:schema>xml</ReportData> </GetCustomReportResult> </soap:Body> </soap:Envelope>

C# Rest Client

Install Nuget package Exigo.Api.Client

try

{

    //Create Api Client

    var api = new ExigoApiClient("yourcmpany", "yourlogin", "yourpassword");

 

    //Create Request

    var req = new GetCustomReportRequest();

 

    req.ReportID = 1;               //Unique Report ID

 

    //Add Parameters

    var parameters = new List<ParameterRequest>();

 

    var parameter1 = new ParameterRequest();

    parameter1.ParameterName = "1";

    parameter1.Value = 1;

    parameters.Add(parameter1);

 

    var parameter2 = new ParameterRequest();

    parameter2.ParameterName = "2";

    parameter2.Value = 2;

    parameters.Add(parameter2);

 

    //Now attach the list to the request

    req.Parameters = parameters.ToArray();

 

    //Send Request to Server and Get Response

    var res = await api.GetCustomReportAsync(req);

 

    //Now examine the results:

    Console.WriteLine("ReportData: {0}", res.ReportData);

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

C# Soap Client

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.LoginName = "yourLoginName";

    auth.Password = "yourPassword";

    auth.Company = "yourCompany";

    api.ApiAuthenticationValue = auth;

 

    //Create Request

    GetCustomReportRequest req = new GetCustomReportRequest();

 

    req.ReportID = 1;               //Unique Report ID

 

    //Add Parameters

    List<ParameterRequest> parameters = new List<ParameterRequest>();

 

    ParameterRequest parameter1 = new ParameterRequest();

    parameter1.ParameterName = "1";

    parameter1.Value = 1;

    parameters.Add(parameter1);

 

    ParameterRequest parameter2 = new ParameterRequest();

    parameter2.ParameterName = "2";

    parameter2.Value = 2;

    parameters.Add(parameter2);

 

    //Now attach the list to the request

    req.Parameters = parameters.ToArray();

 

    //Send Request to Server and Get Response

    GetCustomReportResponse res = api.GetCustomReport(req);

 

    //Now examine the results:

    Console.WriteLine("ReportData: {0}", res.ReportData);

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

VB.Net

Try

    'Create Main API Context Object

    Dim api as new ExigoApi()

 

    'Create Authentication Header

    Dim auth as new ApiAuthentication()

    auth.LoginName = "yourLoginName"

    auth.Password = "yourPassword"

    auth.Company = "yourCompany"

    api.ApiAuthenticationValue = auth

 

    'Create Request

    Dim req as new GetCustomReportRequest()

 

    req.ReportID = 1

 

    'Add Parameters

    Dim parameters As New List(Of ParameterRequest)()

 

    Dim parameter1 as new ParameterRequest()

    parameter1.ParameterName = "1"

    parameter1.Value = 1

    parameters.Add(parameter1)

 

    Dim parameter2 as new ParameterRequest()

    parameter2.ParameterName = "2"

    parameter2.Value = 2

    parameters.Add(parameter2)

 

    'Now attach the list to the request

    req.Parameters = parameters.ToArray()

 

    'Send Request to Server and Get Response

    Dim res As GetCustomReportResponse = api.GetCustomReport(req)

 

    'Now examine the results:

    Console.WriteLine("ReportData: {0}", res.ReportData)

Catch ex As Exception

    Console.WriteLine("Error: " & ex.Message)

End Try

PHP

Note: PHP is not officially supported.

<?php

try

{

    //Setup the SoapClient and Authentication

    $api = new SoapClient("http://api.exigo.com/3.0/ExigoApi.asmx?WSDL");

    $ns = "http://api.exigo.com/";

    $auth = array()

    $auth["LoginName"] = new SoapVar("yourLoginName",XSD_STRING,null,null,null,$ns);

    $auth["Password"] = new SoapVar("yourPassword",XSD_STRING,null,null,null,$ns);

    $auth["Company"] = new SoapVar("yourCompany",XSD_STRING,null,null,null,$ns);

    $headerBody = new SoapVar($auth, SOAP_ENC_OBJECT);

    $header = new SoapHeader($ns, 'ApiAuthentication', $headerBody);

    $api->__setSoapHeaders(array($header));

 

    //Create Request

 

    $req->ReportID = 1;

 

    //Add Parameters

 

    $parameter1->ParameterName = "1";

    $parameter1->Value = 1;

 

    $parameter2->ParameterName = "2";

    $parameter2->Value = 2;

 

    //Now attach the list to the request

    req.Parameters = array(parameter1,parameter2);

 

    //Send Request to Server and Get Response

    $res = $api.GetCustomReport($req);

 

    //Now examine the results:

}

catch (SoapFault $ex)

{

    echo "Error: ", $ex->getMessage();

}

?>

Java

Note: Java is not officially supported.

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.setLoginName("yourLoginName");

    auth.setPassword("yourPassword");

    auth.setCompany("yourCompany");

    api.setApiAuthenticationValue(auth);

 

    //Create Request

    GetCustomReportRequest req = new GetCustomReportRequest();

 

    req.setReportID(1);

 

    //Add Parameters

    ArrayOfParameterRequest parameters = new ArrayOfParameterRequest();

 

    ParameterRequest parameter1 = new ParameterRequest();

    parameter1.setParameterName("1");

    parameter1.setValue(1);

    parameters.Add(parameter1);

 

    ParameterRequest parameter2 = new ParameterRequest();

    parameter2.setParameterName("2");

    parameter2.setValue(2);

    parameters.Add(parameter2);

 

    //Now attach the list to the request

    req.setParameters(parameters);

 

    //Send Request to Server and Get Response

    GetCustomReportResponse res = api.getExigoApiSoap().getCustomReport(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

    System.out.println("Error: " + ex.getMessage());

}

CSV

This method supports CSV output.

HTTP Get Request:
https://api.exigo.com/3.0/csv/customreport.aspx
?ApiLoginName=String
&ApiPassword=String
&ApiCompany=String
&ReportID=Int32
&ParamName1=ParamValue
&ParamName2=ParamValue

Response Fields
FieldHeader1,FieldHeader2,FieldHeader3
FieldValue1,FieldValue2,FieldValue3