REST Enabled Dock Scheduling Actions

This feature provides the first set of REST Service enabled Actions. The initial set of REST Service Enabled Actions are focused on supporting the evaluation of options and the setting of Dock Appointments by external applications.  The Dock Appointment REST enable Actions are provided to support the requirements of the Scheduling Standards Consortium (SSC) which was formed to simplify the integration of systems between shippers, carriers and intermediaries with the goal of creating a more efficient appointment scheduling process.

The provided REST enabled Actions include the following:

  • Appointment Options
  • Schedule An Appointment 
  • Remove Appointment

You can use these REST Enabled actions to:

  1. Request the available appointment options using the Appointment Options Request
  1. Review and select from options provided in the Appointment Options Response and then Schedule An Appointment using the information provided in the Appointment Options Response
  1. Remove a scheduled appointment with Remove Appointment -  to either simply remove the appointment, or as the first step in the process of modifying the appointment by removing the appointment and then re-running Appointment Options and  the Schedule An Appointment APIs.

Appointment Options

The Appointments Options API is equivalent to the UI Action - Schedule Appointment. 

The Request Input and Response Output are described below.  Note that the API provides options for identifying your Shipment either by Shipment GID or Shipment Qualifier Value and the Shipment Stop using either Stop Number or Location ID.

Appointment Options Request

Name Type Description Optional Comments
Shipment Gid String   Yes

Request should come from either Shipment Gid or Shipment qualifier and value.

Shipment Refnum Qualifier Gid String   Yes but mandatory when refnum value is provided
Shipment Refnum Value String   Yes but mandatory when qualifier is provided
Stop Number Integer   Yes

Request should contain either Stop Number or Location Gid.

Location Gid String   Yes
Start Time String   Yes

If value is  null then shipment estimated arrival time will be used.

End Time String   Yes  
Number of Options Integer   Yes  
Sub Options Boolean   Yes Returns the options from all resources available at that particular start time. This is similar to View Group Resources Action from UI

Appointment Options Response

Name Description

AppointmentOptionsResponse

Options Count

Number of Options returns by the API

appointmentOptionsList

Appointment Options
Name Type
Appointment Start Time Date Time Stamp
Appointment End Time Date Time Stamp
Feasibility Boolean
Preference Level Integer
Infeasibility Codes Collection (List)
Location Resource Name String
Location Group Name String
  Name Type
AppointmentResponseStatus isSuccess Boolean
statusMessage String

Appointment Options Response example, in this example the Number of Options in the Appointment Options Request was set to 2.

Appointment Options List 2 Responses

Appointment Options List 2 Responses

Schedule Full Appointment

Request

Name Description Optional Comments
objectType object type - SHIPMENT   Default value is SHIPMENT
objectGid Shipment Id Yes Must include either Shipment Gid or/Value
shipRefnumQualGid Shipment Reference number Qualifier Gid Yes but mandatory when refnum value is provided Must include either objectGid or shipRefnumQual/Value
shipRefnumValue Shipment Reference number Value Yes but mandatory when qualifier is provided

Must include either objectGid or shipRefnumQual/Value

stopNumber stop number of a location for which appointment will be booked Yes

Must include either stopNumber or locationGid.

locationGid location of a shipment for which appointment will be booked Yes
startTime appointment start time Yes Format should be yyyy-MM-DD HH:mm:ss
endTime appointment end time Yes Format should be yyyy-MM-DD HH:mm:ss
resourceGidFromPrimaryResourceType location resource gid for primary resource type Yes

Door at which user want to book an appointment.

resourceGidsFromSecondaryResourceTypes location resource gids for secondary resource type Yes

Use this when there is multiple resource type for a the case where you want to schedule an appointment for Door, worker and slot timing etc.

locationResourceGroupGid Location Resource Group Yes

When multiple doors are associated with location resource group -  to find best door then just pass location resource group with start and end time.

Response

Name Description Comments
ScheduleAppointmentResponse
  AppointmentResult
  Name Type Description Comments

List of booked appointments

Appointment Gid String    
Confirmation Number String    
Pickup Appointment Date Time Stamp    
Delivery Appointment Date Time Stamp    
Appointment start time Date Time Stamp    
Appointment end time Date Time Stamp    
Appointment Duration Duration (in secs)    
Resource Type Gid String    
Location Resource Name String    
Location Resource Gid String    
Stop Number String    
Name Type Description Comments

AppointmentResponseStatus

isSuccess Boolean    
statusMessage String    

Remove Appointment

This Remove Appointment API is used to remove Appointments and it returns a status message indicating whether the Appointment was deleted.

API - removeAppointment(AppointmentRequestParameters requestParams)

Request

Name Description Optional Comments
appointmentGid Appointment ID that should be removed Yes Pass either only Appointment ID or a valid combination of the Other parameters
objectType object type - SHIPMENT or SHIPMENT GROUP   Default value is SHIPMENT if user doesn't pass this.
objectGid Shipment Id Yes With objectGid either stopNumber or locationGid is mandatory to pass
stopNumber stop number of a location at which appointment should be removed Yes

Request should come either from Stop Number or Location Gid.

locationGid location for shipment at which appointment should be removed Yes
shipRefnumQualGid Shipment Reference number Qualifier Gid Yes but mandatory when refnum value is provided Either stopNumber or locationGid is mandatory to pass
shipRefnumValue Shipment Reference number Value Yes but mandatory when qualifier is provided Either stopNumber or locationGid is mandatory to pass

Response

Name Description
RemoveAppointmentResponse
  Name Type

AppointmentResponseStatus

isSuccess Boolean
statusMessage String

Example of a successful remove appointment response.

Remove Response Example

Business Benefit

This feature extends the Dock Appointment scheduling capabilities to external solutions allowing for a more collaborative and holistic appointment setting community model to exist. The provided functionality is designed to support the requirements of the Scheduling Standards Consortium (SSC) which was formed to simplify the integration of systems across the fragmented ecosystem between shippers, carriers and intermediaries and create a more efficient appointment scheduling process.

Steps to Enable

You don't need to do anything to enable this feature.

Tips And Considerations

NOTE: Currently API added to support SHIPMENT object type only.