ParcelManifest - LorenData/ECGrid-API GitHub Wiki
List the Transaction Manifest for a Parcel.
public ManifestInfo[] ParcelManifest(string SessionID,
long ParcelID)
This method returns a manifest for a specific Parcel. This data is kept on-line until the Parcel is archived. Manifests contain all the specific steps a Parcel takes when traversing ECGrid. It is similar to FedEx Tracking.
For OutBox Parcels (see ParcelUpload() or ParcelUploadEx()), this contains all the steps a Parcel has taken on ECGrid up to the routing of the contained Interchanges.
For InBox Parcels (see ParcelDownload()), this contains all the steps a Parcel has taken through ECGrid since Interchanges were added to it for delivery.
C#
using System.Xml;
using System.Web.Services.Protocols;
using ECGridService = <ProjectName>.net.ecgridos;
try
{
using (ECGridService.ECGridOSAPIv3 ECGrid = new ECGridService.ECGridOSAPIv3())
{
try
{
string SessionID = "00000000-0000-0000-0000-000000000000";
long ParcelID = 56845;
ECGridService.ManifestInfo[] ParcelManifestResults = ECGrid.ParcelManifest(SessionID, ParcelID);
foreach (var Manifest in ParcelManifestResults)
{
Console.WriteLine(Manifest.InterchangeID);
Console.WriteLine(Manifest.StatusCode);
Console.WriteLine(Manifest.Type);
}
}
catch (SoapException SoapEx)
{
// See SOAP Exceptions in the Appendix
var ECG_Ex = CatchException(SoapEx);
Console.WriteLine($"ECGridOS Soap Exception: {ECG_Ex.ErrorCode} , Item: {ECG_Ex.ErrorItem}, Message: {ECG_Ex.ErrorMessage}, String: {ECG_Ex.ErrorString}");
}
} // END USING
}
catch (Exception ex){ Console.WriteLine("Unhandled Exception: " + ex.ToString()); }
The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.
POST /v4.1/prod/ECGridOS.asmx HTTP/1.1
Host: os.ecgrid.io
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://os.ecgrid.io/ParcelManifest"
<?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>
<ParcelManifest xmlns="https://os.ecgrid.io/">
<SessionID>string</SessionID>
<ParcelID>long</ParcelID>
</ParcelManifest>
</soap:Body>
</soap:Envelope>
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>
<ParcelManifestResponse xmlns="https://os.ecgrid.io/">
<ParcelManifestResult>
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
</ParcelManifestResult>
</ParcelManifestResponse>
</soap:Body>
</soap:Envelope>
The following is a sample SOAP 1.2 request and response. The placeholders shown need to be replaced with actual values.
POST /v4.1/prod/ECGridOS.asmx HTTP/1.1
Host: os.ecgrid.io
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<ParcelManifest xmlns="https://os.ecgrid.io/">
<SessionID>string</SessionID>
<ParcelID>long</ParcelID>
</ParcelManifest>
</soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<ParcelManifestResponse xmlns="https://os.ecgrid.io/">
<ParcelManifestResult>
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
</ParcelManifestResult>
</ParcelManifestResponse>
</soap12:Body>
</soap12:Envelope>
The following is a sample HTTP GET request and response. The placeholders shown need to be replaced with actual values.
GET /v4.1/prod/ECGridOS.asmx/ParcelManifest?SessionID=string&ParcelID=string HTTP/1.1
Host: os.ecgrid.io
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfManifestInfo xmlns="https://os.ecgrid.io/">
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
</ArrayOfManifestInfo>
The following is a sample HTTP POST request and response. The placeholders shown need to be replaced with actual values.
POST /v4.1/prod/ECGridOS.asmx/ParcelManifest HTTP/1.1
Host: os.ecgrid.io
Content-Type: application/x-www-form-urlencoded
Content-Length: length
SessionID=string&ParcelID=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfManifestInfo xmlns="https://os.ecgrid.io/">
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
<ManifestInfo>
<ManifestDate>dateTime</ManifestDate>
<NetworkID>int</NetworkID>
<NetworkName>string</NetworkName>
<Type>System or Error or Manual or ECGridOS</Type>
<ParcelID>long</ParcelID>
<InterchangeID>long</InterchangeID>
<StatusCode>string</StatusCode>
<StatusMessage>string</StatusMessage>
<StatusColor>string</StatusColor>
</ManifestInfo>
</ArrayOfManifestInfo>