Exigo Web Services API v3.4.225

ChangeOrderStatusBatch

Changes existing orders from one status to another in a batch. Can optionally update tracking numbers as well.

Input Properties

ChangeOrderStatusBatchRequest
PropertyData TypeNotes
OrderStatus OrderStatusTypeThe status to apply to all detail.
DetailsOrderBatchDetailRequest[]
OrderBatchDetailRequest
PropertyData TypeNotes
OrderIDInt32
TrackingNumber1StringOptional. Optionally update tracking number.
TrackingNumber2StringOptional. Optionally update tracking number.
TrackingNumber3StringOptional. Optionally update tracking number.
TrackingNumber4StringOptional. Optionally update tracking number.
TrackingNumber5StringOptional. Optionally update tracking number.
ShippedDateDateTimeOptional. Optionally manually set ShippedDate.

Output Properties

ChangeOrderStatusBatchResponse
PropertyData TypeNotes

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: "http://api.exigo.com/ChangeOrderStatusBatch"

<?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> <ChangeOrderStatusBatchRequest xmlns="http://api.exigo.com/"> <OrderStatus>Incomplete or Pending or CCDeclined or ACHDeclined or Canceled or CCPending or ACHPending or Accepted or Printed or Shipped or PendingInventory</OrderStatus> <Details> <OrderBatchDetailRequest> <OrderID>int</OrderID> <TrackingNumber1>string</TrackingNumber1> <TrackingNumber2>string</TrackingNumber2> <TrackingNumber3>string</TrackingNumber3> <TrackingNumber4>string</TrackingNumber4> <TrackingNumber5>string</TrackingNumber5> <ShippedDate>dateTime</ShippedDate> </OrderBatchDetailRequest> </Details> </ChangeOrderStatusBatchRequest> </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> <ChangeOrderStatusBatchResult xmlns="http://api.exigo.com/" /> </soap:Body> </soap:Envelope>

C#

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

    ChangeOrderStatusBatchRequest req = new ChangeOrderStatusBatchRequest();

 

    req.OrderStatus = OrderStatusType.Incomplete;            //The status to apply to all detail

 

    //Add Details

    List<OrderBatchDetailRequest> details = new List<OrderBatchDetailRequest>();

 

    OrderBatchDetailRequest detail1 = new OrderBatchDetailRequest();

    detail1.OrderID = 1;

    detail1.TrackingNumber1 = "1";

    details.Add(detail1);

 

    OrderBatchDetailRequest detail2 = new OrderBatchDetailRequest();

    detail2.OrderID = 2;

    detail2.TrackingNumber1 = "2";

    details.Add(detail2);

 

    //Now attach the list to the request

    req.Details = details.ToArray();

 

    //Send Request to Server and Get Response

    ChangeOrderStatusBatchResponse res = api.ChangeOrderStatusBatch(req);

 

    //Now examine the results:

}

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

 

    req.OrderStatus = OrderStatusType.Incomplete

 

    'Add Details

    Dim details As New List(Of OrderBatchDetailRequest)()

 

    Dim detail1 as new OrderBatchDetailRequest()

    detail1.OrderID = 1

    detail1.TrackingNumber1 = "1"

    details.Add(detail1)

 

    Dim detail2 as new OrderBatchDetailRequest()

    detail2.OrderID = 2

    detail2.TrackingNumber1 = "2"

    details.Add(detail2)

 

    'Now attach the list to the request

    req.Details = details.ToArray()

 

    'Send Request to Server and Get Response

    Dim res As ChangeOrderStatusBatchResponse = api.ChangeOrderStatusBatch(req)

 

    'Now examine the results:

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

 

    //Add Details

 

    $detail1->OrderID = 1;

    $detail1->TrackingNumber1 = "1";

 

    $detail2->OrderID = 2;

    $detail2->TrackingNumber1 = "2";

 

    //Now attach the list to the request

    req.Details = array(detail1,detail2);

 

    //Send Request to Server and Get Response

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

    ChangeOrderStatusBatchRequest req = new ChangeOrderStatusBatchRequest();

 

    req.setOrderStatus(1);

 

    //Add Details

    ArrayOfOrderBatchDetailRequest details = new ArrayOfOrderBatchDetailRequest();

 

    OrderBatchDetailRequest detail1 = new OrderBatchDetailRequest();

    detail1.setOrderID(1);

    detail1.setTrackingNumber1("1");

    details.Add(detail1);

 

    OrderBatchDetailRequest detail2 = new OrderBatchDetailRequest();

    detail2.setOrderID(2);

    detail2.setTrackingNumber1("2");

    details.Add(detail2);

 

    //Now attach the list to the request

    req.setDetails(details);

 

    //Send Request to Server and Get Response

    ChangeOrderStatusBatchResponse res = api.getExigoApiSoap().changeOrderStatusBatch(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

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

}

CSV

This method does not support csv output.