API 2.x
Introduction
This version of the API was released to the live envioronments 1st February 2009, and is not due to be updated until 2011 in version 3.x.
The API is split across various services, with each service providing a common theme of methods. It is rare that you need to call all services, and equally rare that you call just one. In a normal integration, you will need to use two or three.
The WSDL files are linked at the bottom of each of the services, noting the version number. Although we have numerous systems and URLs, the API version number is the important thing. So long as that matches your client code, there won't be a problem pointing to different sites. We identify the WSDL explicitly to clarify where particular systems reside, rather than anything else. On the Beta platforms, where we showcase the next version, the WSDL is prone to change. On QA and UAT platforms, the WSDLs are fixed at a version, and that version is documented on this site.
Important Notes
Please take care to note the points about deprecation. You really should avoid using deprecated services and methods as they won't be supported in the next version.
This API is not WS-I Basic Profile-compliant, as there are overloaded service methods (See section 4.5.3 of http://www.ws-i.org/Profiles/BasicProfile-1.1.html#Distinctive_Operations). If your client system demands compliance, download the WSDL, decide which overloaded methods you will use, removing the references to the other overloads from the WSDL. Once done, make sure you use your local copy of the WSDL when generating stub code or making connections.
Services
| AllocationService |
This service is used for all allocation and booking calls, including looking up delivery options. |
| ConsignmentSearchService |
This exposes all web services for finding consignments by criteria |
| ConsignmentService |
This exposes all services related to consignment like creating & modifying a consignment, deleting a consignment and printing labels. |
| ConsignmentTrackingService |
This exposes all web services for tracking parcels by criteria. |
| DeliveryOptionsService |
|
| InformationService |
This exposes all web services for general information e.g transaction types (delivery/collection), registered carrier names etc. |
| ManifestService |
This exposes all services related to Manifest like creating a manifest, finding a manifest, sending a manifest, finding ready to manifests and finding consignments on a manifest. |
Types
| Address |
This type represents a postal address. |
| AllocationFilter |
This is used to find delivery options and to describe the rules defining how to allocate consignments. |
| CarrierService |
This represents a single service a carrier does. Throughout the system, you will see references to the carrier service code - this is the unique code used to indicate a chosen service. |
| CodeName |
Maps a name to a code and vice versa. This is mainly used by the Information Service when providing mappings between the names of carriers, types and groups, and their respective codes. |
| Consignment |
This type represents a consignment. It is the biggest object we have, and it has many fields, but you won't have to bother with most of them. The primary key of this object is the consignmentCode, which always begins with "DMC". |
| ConsignmentSearchParams |
This object holds all the parameters available to use when searching for consignments within the Delivery Manager system. Searches are always paginated so that you can call this operation multiple times to iterate over an extensive result set. If you choose not to specify the value of a specific parameter, the default value will be used instead. |
| ConsignmentSearchResult |
This type represents the result of a consignment search. It tells you of how many results there are, how many pages there are, and gives you the consignments for the current page. |
| ConsignmentTrackingInfo |
This holds tracking information for a particular consignment. |
| DateRange |
An object representing a range between two date & times. You can leave either of the boundary conditions as null (empty or nothing). This allows you to talk about dates after a period (with no upper boundary, no "to"), as well as dates before a period (with no lower boundary, no "from"). |
| DeliveryOption |
This represents a single delivery option available, allowing you to see which carrier, which service and the price prior to booking the allocation. The |
| DeliveryTime |
This holds timing information about a particular delivery option. Use this object to match delivery dates according to your needs. |
| FindDeliveryOptionsParams |
This object contains the parameters available for filtering delivery options. |
| FindDeliveryTimesParams |
This parameter set is used for determining when a specific service can achieve the desired result. |
| Manifest |
This object represents a manifest. |
| Parcel |
This type represents a single parcel within the Delivery Manager system. |
| ParcelStatusHistory |
The status history for a particular parcel. |
| ParcelTrackingInfo |
This contains the tracking information for a particular parcel. |
| ParcelTrackingItem |
This object contains information about a particular status that a parcel has achieved. This is normally limited to historic statuses, but some carriers provide additional information about the parcel after it has actually been delivered. |
| Product |
This type represents a single product within the Delivery Manager system. In many systems, this is actually an item line. For example, you can consider one product line as being a single line on a receipt from a till. |
| Property |
This represents additional properties of consignment. |
| ReadyToManifestInfo |
This represents a possible manifest set. This is used to determine who many consignments etc. will appear on a specific manifest. It is also used to show you what consignments require manifests to be created today. |
| WorkingDays |
This represents a set of days of the week. |

