GLS ShipIT 3.3.20 GLS ShipIT - SOAP services

Estimate delivery time frames

# Accessing the web service

The endpoints for the centrally hosted services can be obtained from your primary GLS contact and will be given with your credentials for the Service. You can retrieve the WSDL of the corresponding service by adding '?wsdl' to the URL.

If you are connecting to a locally installed GLS ShipIT, you have to adapt the URL to point to the host (and port) in your network where the GLS ShipIT backend is running. E.g. https://10.10.10.10:8443/backend/TimeframeService/TimeframePortType?wsdl

Only one operation is available at this port. This operation can be used to get an estimation of the amount of working days needed to ship a shipment unit from an origin to a destination address.

# Available web service operations

## getEstimatedDeliveryDays (F-234)

This operation estimates the days needed to deliver a shipment unit from the given origin address to the given destination address.

Parameter | Mandatory | Description
--- | --- | ---
fromToLocation | TRUE | The eu.glsgroup.fpcs.datatypes.soap.v1.timeframe.FromToLocation with the request parameters.

### Input validation

- The country and zipcode of the origin and the destination must be provided.

The soap response is an instance of eu.glsgroup.fpcs.datatypes.soap.v1.timeframe.EstimatedDeliveryDays or one of the following soap faults:

- eu.gls_group.fpcs.v1.timeframe.InvalidFieldValueMessage
- eu.gls_group.fpcs.v1.timeframe.MandatoryFieldMissingMessage
- eu.glsgroup.fpcs.dto.error.FPCSServiceException

### Sample request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tim="http://fpcs.gls-group.eu/v1/Timeframe">
<soapenv:Header/>
<soapenv:Body>
<tim:FromToLocation>
<tim:Source>
<tim:Address>
<tim:Street>Platz der Republik</tim:Street>
<tim:StreetNumber>1</tim:StreetNumber>
<tim:CountryCode>DE</tim:CountryCode>
<tim:ZIPCode>10557</tim:ZIPCode>
<tim:City>Berlin</tim:City>
</tim:Address>
</tim:Source>
<tim:Destination>
<tim:Address>
<tim:Street>Platz der Vereinten Nationen</tim:Street>
<tim:StreetNumber>2</tim:StreetNumber>
<tim:CountryCode>DE</tim:CountryCode>
<tim:ZIPCode>53113</tim:ZIPCode>
<tim:City>Bonn</tim:City>
</tim:Address>
</tim:Destination>
</tim:FromToLocation>
</soapenv:Body>
</soapenv:Envelope>

### Sample response

If the request was successful:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"/>
<soap:Body>
<EstimatedDeliveryDays xmlns="http://fpcs.gls-group.eu/v1/Timeframe" xmlns:ns2="http://fpcs.gls-group.eu/v1/Common">
<NumberOfWorkDays>4</NumberOfWorkDays>
</EstimatedDeliveryDays>
</soap:Body>
</soap:Envelope>

If one of the necessary fields is missing:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"/>
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>eu.glsgroup.fpcs.dto.error.FPCSServiceException: The Mandatory parameter FromToLocation.Source.Address.CountryCode is not set</faultstring>
</soap:Fault>
</soap:Body>
</soap:Envelope>

If one of the fields has an invalid value (e.g. wrong country code):

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"/>
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>eu.glsgroup.fpcs.dto.error.FPCSServiceException: Delivery Days could not be estimated: Country with ID XY not found.</faultstring>
</soap:Fault>
</soap:Body>
</soap:Envelope>