Exigo Web Services API v2022.12.19.1

GetRealTimeCommissions

Returns realtime commissions available for open periods.

Input Properties

GetRealTimeCommissionsRequest
PropertyData TypeNotes
CustomerIDInt32Unique numeric identifier for customer record.
CustomerKeyStringOptional. Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided.

Output Properties

GetRealTimeCommissionsResponse
PropertyData TypeNotes
CommissionsCommissionResponse[]
CommissionResponse
PropertyData TypeNotes
CustomerIDInt32Unique numeric identifier for a customer record.
PeriodType Int32
PeriodID Int32
PeriodDescriptionString
CurrencyCode String
CommissionTotalDecimal
BonusesCommissionBonusResponse[]
CustomerKeyStringUnique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided.
CommissionBonusResponse
PropertyData TypeNotes
DescriptionString
AmountDecimal
BonusIDInt32

Http Request

GET https://yourcompany-api.exigo.com/3.0/commissions/realtime?customerID=1
  &customerKey=1
Authorization: Basic base64Encoded
                            

Http Response

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

{ "commissions": 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/GetRealTimeCommissions"

<?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> <GetRealTimeCommissionsRequest xmlns="http://api.exigo.com/"> <CustomerID>int</CustomerID> <CustomerKey>string</CustomerKey> </GetRealTimeCommissionsRequest> </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> <GetRealTimeCommissionsResult xmlns="http://api.exigo.com/"> <Commissions> <CommissionResponse> <CustomerID>int</CustomerID> <PeriodType>int</PeriodType> <PeriodID>int</PeriodID> <PeriodDescription>string</PeriodDescription> <CurrencyCode>string</CurrencyCode> <CommissionTotal>decimal</CommissionTotal> <Bonuses> <CommissionBonusResponse> <Description>string</Description> <Amount>decimal</Amount> <BonusID>int</BonusID> </CommissionBonusResponse> </Bonuses> <CustomerKey>string</CustomerKey> </CommissionResponse> </Commissions> </GetRealTimeCommissionsResult> </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 GetRealTimeCommissionsRequest();

 

    req.CustomerID = 1;             //Unique numeric identifier for customer record.

    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided.

 

    //Send Request to Server and Get Response

    var res = await api.GetRealTimeCommissionsAsync(req);

 

    //Now examine the results:

 

    foreach (var commission in res.Commissions)

    {

        Console.WriteLine("CustomerID: {0}", commission.CustomerID);

        Console.WriteLine("PeriodType: {0}", commission.PeriodType);

        Console.WriteLine("PeriodID: {0}", commission.PeriodID);

        Console.WriteLine("PeriodDescription: {0}", commission.PeriodDescription);

        Console.WriteLine("CurrencyCode: {0}", commission.CurrencyCode);

        Console.WriteLine("CommissionTotal: {0}", commission.CommissionTotal);

 

        foreach (var commissionBonus in commission.Bonuses)

        {

            Console.WriteLine("Description: {0}", commissionBonus.Description);

            Console.WriteLine("Amount: {0}", commissionBonus.Amount);

            Console.WriteLine("BonusID: {0}", commissionBonus.BonusID);

        }

        Console.WriteLine("CustomerKey: {0}", commission.CustomerKey);

    }

}

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

    GetRealTimeCommissionsRequest req = new GetRealTimeCommissionsRequest();

 

    req.CustomerID = 1;             //Unique numeric identifier for customer record.

    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided.

 

    //Send Request to Server and Get Response

    GetRealTimeCommissionsResponse res = api.GetRealTimeCommissions(req);

 

    //Now examine the results:

 

    foreach (CommissionResponse commission in res.Commissions)

    {

        Console.WriteLine("CustomerID: {0}", commission.CustomerID);

        Console.WriteLine("PeriodType: {0}", commission.PeriodType);

        Console.WriteLine("PeriodID: {0}", commission.PeriodID);

        Console.WriteLine("PeriodDescription: {0}", commission.PeriodDescription);

        Console.WriteLine("CurrencyCode: {0}", commission.CurrencyCode);

        Console.WriteLine("CommissionTotal: {0}", commission.CommissionTotal);

 

        foreach (CommissionBonusResponse commissionBonus in commission.Bonuses)

        {

            Console.WriteLine("Description: {0}", commissionBonus.Description);

            Console.WriteLine("Amount: {0}", commissionBonus.Amount);

            Console.WriteLine("BonusID: {0}", commissionBonus.BonusID);

        }

        Console.WriteLine("CustomerKey: {0}", commission.CustomerKey);

    }

}

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 GetRealTimeCommissionsRequest()

 

    req.CustomerID = 1

    req.CustomerKey = "1"

 

    'Send Request to Server and Get Response

    Dim res As GetRealTimeCommissionsResponse = api.GetRealTimeCommissions(req)

 

    'Now examine the results:

 

    For Each commission As CommissionResponse In res.Commissions

        Console.WriteLine("CustomerID: {0}", commission.CustomerID)

        Console.WriteLine("PeriodType: {0}", commission.PeriodType)

        Console.WriteLine("PeriodID: {0}", commission.PeriodID)

        Console.WriteLine("PeriodDescription: {0}", commission.PeriodDescription)

        Console.WriteLine("CurrencyCode: {0}", commission.CurrencyCode)

        Console.WriteLine("CommissionTotal: {0}", commission.CommissionTotal)

 

        For Each commissionBonus As CommissionBonusResponse In commission.Bonuses

            Console.WriteLine("Description: {0}", commissionBonus.Description)

            Console.WriteLine("Amount: {0}", commissionBonus.Amount)

            Console.WriteLine("BonusID: {0}", commissionBonus.BonusID)

        Next

        Console.WriteLine("CustomerKey: {0}", commission.CustomerKey)

    Next

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->CustomerID = 1;

    $req->CustomerKey = "1";

 

    //Send Request to Server and Get Response

    $res = $api.GetRealTimeCommissions($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

    GetRealTimeCommissionsRequest req = new GetRealTimeCommissionsRequest();

 

    req.setCustomerID(1);

    req.setCustomerKey("1");

 

    //Send Request to Server and Get Response

    GetRealTimeCommissionsResponse res = api.getExigoApiSoap().getRealTimeCommissions(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

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

}

CSV

This method does not support csv output.