GLS ShipIT 4.0.f7 GLS ShipIT - SOAP services

Schedule sporadic date

# Accessing the Soap 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/SporadicCollectionWebService/SporadicCollectionPortType?wsdl

This service is about sporadic collections.

# Schedule sporadic date

## orderSporadicCollection

Schedules a sporadic collection for a contact. Please contact your depot for any queries regarding your pickups.

Several parameters can be passed to the service:

### Request data

Several parameters can be passed to the service.

Name | Expression in webservices | Field length | Type | Format | Mandatory/Optional | Restrictions | Level | Description
--- | --- | --- | --- | --- | --- | --- | --- | ---
Shipper identifier | ContactID | 10 | alphanumeric |  | Mandatory | - |  | The external identifier for the shipper
Expected pickup date | PreferredPickUpDate | 10 | alphanumeric | YYYY-MM-DD | Mandatory | - |  | The date for the expected pickup in the depot
Number of parcels | NumberOfParcels | 6 | numeric |  | Mandatory | >0 |  | The total number of parcel for pickup in the depot
Product type | Product | 7 | alphanumeric |  | Mandatory | Parcel or Express |  | The type of the product in the pickup
Expected Total Weight | ExpectedTotalWeight | 10 | decimal |  | Optional | >0 |  | The total aggregated weight of the parcels for pickup
Hazardous Goods Flag | ContainsHazGoods | 5 | boolean |  | Optional | true or false |  | Indicates if the parcels for pickup contain hazardous goods
Additional Information | AdditionalInformation | - | alphanumeric |  | Optional | - |  | Additional information relevant for the scheduling of the sporadic pickup

In the case of the PreferredPickUpDate not being not possible (Sundays, holiday, dates in the past, etc), it will be adjusted to the next available working day and the actual pickup date will be present in the PreferredPickUpDate property in the response.

Parameter | Mandatory | Description
--- | --- | ---
request | TRUE | The eu.glsgroup.fpcs.datatypes.soap.v1.sporadiccollection.SporadicCollection with the request parameters.

### Input validation

- The ContactID may not be empty and must reference an existing shipper external id.
- The PreferredPickUpDate may not be empty, and must be in the format "yyyy-MM-dd"
- The Product may not be empty, and must be one of the expected articles.
- The NumberOfParcels must be a positive integer value.

### Response data

Name | Expression in webservices | Field length | Type | Format | Mandatory/Optional | Restrictions | Level | Description
--- | --- | --- | --- | --- | --- | --- | --- | ---
Estimated pickup date | EstimatedPickUpDate | 10 | alphanumeric | YYYY-MM-DD | Mandatory | - |  | The scheduled date for the next available date for pickup in the depot

The SOAP response is eu.glsgroup.fpcs.datatypes.soap.v1.sporadiccollection.SporadicCollectionResponse or one of the following faults:

- eu.glsgroup.fpcs.datatypes.soap.v1.common.InvalidFieldValueFault

To schedule a sporadic date:

### Sample request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:spor="http://fpcs.gls-group.eu/v1/SporadicCollection">
<soapenv:Header/>
<soapenv:Body>
<spor:SporadicCollection>
<spor:ContactID>1234567890</spor:ContactID>
<spor:PreferredPickUpDate>2023-04-18</spor:PreferredPickUpDate>
<spor:NumberOfParcels>1</spor:NumberOfParcels>
<spor:Product>Parcel</spor:Product>
<!--Optional:-->
<spor:ExpectedTotalWeight>20.0</spor:ExpectedTotalWeight>
<!--Optional:-->
<spor:ContainsHazGoods>false</spor:ContainsHazGoods>
<!--Optional:-->
<spor:AdditionalInformation>xyz</spor:AdditionalInformation>
</spor:SporadicCollection>
</soapenv:Body>
</soapenv:Envelope>

If the request was successful:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<SporadicCollectionResponse xmlns="http://fpcs.gls-group.eu/v1/SporadicCollection" xmlns:ns2="http://fpcs.gls-group.eu/v1/Common">
<EstimatedPickUpDate>2023-04-19</EstimatedPickUpDate>
</SporadicCollectionResponse>
</soap:Body>
</soap:Envelope>

If a mandatory parameter is not provided:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>The Mandatory parameter ContactID is not set</faultstring>
</soap:Fault>
</soap:Body>
</soap:Envelope>

If the ContactID is not recognized:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>Referenced object ContactID with id nan not found</faultstring>
</soap:Fault>
</soap:Body>
</soap:Envelope>