Skip to main content

Definitions

Address

Address

Properties

NameDescription
address1
String!
The first line of an address.
address2
String
The second line of an address.
city
String
The city or town the address is located within.
postal
String
A region specific postal identifier, such as a postal code or ZIP code.
region
String
The state, province, or other region the address is located within.
country
String!
The country the address is located within.

Area

A logical area, within an organisation.

Properties

NameDescription
id
UUID
The id of the area.
name
String
The name of the area.
description
String
The description of the area.

AttributeMatch

The attribute match is used to reference an organisation by connection attributes. Because it is not possible for an organisation to have a connection with itself, attributes cannot be used to reference one's own organisation.

Properties

NameDescription
key
String!
The key of the attribute to match.
value
String!
The value of the attribute to match.

BookingOption

A booking option.

Properties

NameDescription
id
UUID
The id of the booking option.
name
String
The name of the booking option.

BookingOptionIdentifier

The BookingOptionIdentifier is a flexible way to reference a booking option in a document. If the Mobiledock UUID is known, this is the most reliable way to reference the booking option. If it is not known, the booking option can be referenced by name (exact match). At least one property must be provided.

Properties

NameDescription
id
UUID
The id of the booking option to reference.
name
String
The name of the booking option to reference.

Comment

A comment.

Properties

NameDescription
content
String
The content of the comment.
user
String
The name of the user who made the comment.
organisation
Organisation
The organisation of the user who made the comment.
timestamp
Timestamp
The time the user made the comment.

CoreDetails

The core details associated with a connection.

Properties

NameDescription
ids
[ID!]
Custom IDs associated with the connected organisation.
name
String
A custom name for the connected organisation.

DateRange

A date range. Times should be a UTC timestamp.

Properties

NameDescription
begin
String
The begin time.
end
String
The end time.

Document

The Document is the interface used when creating or updating a document.

Properties

NameDescription
id
String!
The id of the document. The id is unique (to your organisation).
description
String
A description of the document. This document is displayed when being booked.
direction
Direction!
The direction of the document.
carrier
Organisation
The carrier for the document.
occupant
Organisation
The occupant for the document. This organisation is the receiver if the document direction is inbound. If the document direction is outbound, this organisation is the sender.
offsite
Organisation
The offsite for the document. This organisation is the sender if the document direction is inbound. If the document direction is outbound, this organisation is the receiver.
loads
[LoadQuantity!]!
The loads for the document.
bookingOptions
[BookingOption!]
The booking options for the document.
validDates
DateRange
The date range for which this document can be booked for.
preferredDates
DateRange
The date range for which this document is preferred.
settings
DocumentSettings!
The settings for the document.
attributes
Object!
Attributes that have been assigned to the document in the form of an object with key/value pairs.
status
DocumentStatus
The status of the document.
type
DocumentType
The type of the document.

DocumentInput

The DocumentInput is the interface used when creating or updating a document.

Properties

NameDescription
id
String!
The id of the document. The id must be unique (to your organisation).
description
String
A description of the document. This document is displayed when being booked.
direction
Direction!
The direction of the document.
carrier
OrganisationIdentifier
The carrier for the document.
occupant
OrganisationIdentifier
The occupant for the document. This organisation is the receiver if the document direction is inbound. If the document direction is outbound, this organisation is the sender.
offsite
OrganisationIdentifier
The offsite for the document. This organisation is the sender if the document direction is inbound. If the document direction is outbound, this organisation is the receiver.
loads
[LoadQuantityInput!]!
The loads for the document. If document mode is `Fixed`, at least one load must be specified.
bookingOptions
[BookingOptionIdentifier!]
The booking options for the document.
validDates
DateRange
The date range for which this document can be booked for.
settings
DocumentSettings!
The settings for the document.
attributes
Object
Attributes to be assigned to the document in the form of an object with key/value pairs.
status
DocumentStatusIdentifier
The status of the document.
type
DocumentTypeIdentifier
The type of the document.

DocumentQuery

Document Search return type. Contains subsection of documents and information about total documents.

Properties

NameDescription
pageNumber
Int!
The page number of the documents returned. Page numbers begin at index 1.
pageSize
Int!
The number of documents fetched on the current page.
totalPages
Int!
The total amount of pages required at the current page size.
totalRecords
Int!
The total number of documents.
data
[Document!]!
A list of documents

DocumentSettings

The settings for the document.

Properties

NameDescription
mode
DocumentMode!
The mode for the document.
maxUses
Int
The maximum number of times this document can be booked with before it is no longer valid. If the value is null, it can be used an infinite amount of times.

DocumentStatus

A document status.

Properties

NameDescription
id
UUID
The id of the document status.
name
String
The name of the document status.

DocumentStatusIdentifier

The DocumentStatusIdentifier is a flexible way to reference a document status in a document. If the Mobiledock UUID is known, this is the most reliable way to reference the document status. If it is not known, the document status can be referenced by name (exact match). At least one property must be provided.

Properties

NameDescription
id
UUID
The id of the document status to reference.
name
String
The name of the document status to reference.

DocumentType

A document type.

Properties

NameDescription
id
UUID
The id of the document type.
name
String
The name of the document type.

DocumentTypeIdentifier

The DocumentTypeIdentifier is a flexible way to reference a document type in a document. If the Mobiledock UUID is known, this is the most reliable way to reference the document type. If it is not known, the document type can be referenced by name (exact match). At least one property must be provided.

Properties

NameDescription
id
UUID
The id of the document type to reference.
name
String
The name of the document type to reference.

Driver

The person who will be making the delivery.

Properties

NameDescription
id
UUID!
The id of the driver.
name
String
The name of the driver.

Field

A field is an extra, custom piece of data captured some time in a booking.

Properties

NameDescription
id
UUID
The id of the field.
name
String
The name of the field.

FieldData

A custom field and the data associated with it.

Properties

NameDescription
field
Field
The field.
value
String
The data from the field.

FieldHistory

An event that captures a change in the fields of a booking.

Properties

NameDescription
id
UUID
The id of the booking history event.
time
Timestamp
The time this event was captured.
user
String
The name of the user who caused this event. May be null, which represents an event caused by Mobiledock itself. If user is null but organisation has a value, then the event was caused by an organisation token.
organisation
Organisation
The organisation of the user who caused this event. Will only be null when user is null.
type
HistoryType
The type of history event.
fields
[FieldData!]
The fields captured in this event.

History

Changes to a booking's state is recorded in the booking history. The booking history is always sorted by the capture time.

Properties

NameDescription
id
UUID
The id of the booking history event.
time
Timestamp
The time this event was captured.
user
String
The name of the user who caused this event. May be null, which represents an event caused by Mobiledock itself. If user is null but organisation has a value, then the event was caused by an organisation token.
organisation
Organisation
The organisation of the user who caused this event. Will only be null when user is null.
type
HistoryType
The type of history event.

LoadQuantity

A load and quantity pair object.

Properties

NameDescription
id
UUID!
The id of the load.
name
String!
The name of the load.
quantity
Int!
The number of the specified load units.
loadTag
String!
Custom field to store specific information about the load.

LoadQuantityInput

A load and quantity pair.

Properties

NameDescription
id
UUID
The id of the load to reference. Required if name not provided.
name
String
The name of the load to reference. Required if id not provided.
quantity
Int!
The number of the specified load units.
loadTag
String
Custom field to store specific information about the load.

Organisation

An organisation.

Properties

NameDescription
id
UUID!
The id of the organisation.
name
String!
The name of the organisation.
timezone
String!
The timezone of the organisation.
address
Address!
The address of the organisation.
connectionAttributes
Object!
Connection attributes that have been assigned to the referenced organisation. This takes the form of an object with key/value pairs. If the organisation is self-referenced, the object will always be empty.

OrganisationIdentifier

The OrganisationIdentifier is a flexible way to reference an organisation in a document. If the Mobiledock UUID is known, this is the most reliable way to reference the organisation. If it is not known, organisations can be referenced either by name (exact match) or by connection attributes. At least one of the properties in OrganisationIdentifier must be provided.

Properties

NameDescription
id
UUID
The id of the organisation to reference.
name
String
The name of the organisation to reference.
coreName
String
A custom name for the connected organisation to reference.
coreId
ID
A custom ID for the connected organisation to reference.
attribute
AttributeMatch
The attribute match is used to reference an organisation by connection attributes. Because it is not possible for an organisation to have a connection with itself, attributes cannot be used to reference one's own organisation.

Pass

Represents a pass for authorising entities such as drivers or vehicles.

Properties

NameDescription
id
ID!
Unique identifier for the pass.
attributes
Object!
Key-value pairs containing relevant information about the pass holder (e.g., driver name, vehicle registration).
validity
DateRange!
Date range defining the validity of the pass.
url
String!
A URL for additional details or documentation related to the pass.

RequestHistory

An event that captures a change in the requested time of a booking.

Properties

NameDescription
id
UUID
The id of the booking history event.
time
Timestamp
The time this event was captured.
user
String
The name of the user who caused this event. May be null, which represents an event caused by Mobiledock itself. If user is null but organisation has a value, then the event was caused by an organisation token.
organisation
Organisation
The organisation of the user who caused this event. Will only be null when user is null.
type
HistoryType
The type of history event.
requestedTime
Timestamp
The requested date and time.
requestedDuration
Int
The time requested for the booking in minutes.
requestedArea
Area
The area requested. Will only be present if the location required the selection of areas at time of request.

Space

A space - the smallest subdivision that can be booked against.

Properties

NameDescription
id
UUID
The id of the space.
name
String
The name of the space.

SpaceHistory

An event that captures a change in the space of a booking.

Properties

NameDescription
id
UUID
The id of the booking history event.
time
Timestamp
The time this event was captured.
user
String
The name of the user who caused this event. May be null, which represents an event caused by Mobiledock itself. If user is null but organisation has a value, then the event was caused by an organisation token.
organisation
Organisation
The organisation of the user who caused this event. Will only be null when user is null.
type
HistoryType
The type of history event.
bookedTime
Timestamp
The time the booking was assigned to.
bookedDuration
Int
The time allocated to the booking in minutes.
bookedSpace
Space
The space the booking was assigned to.
bookedArea
Area
The area the booking was assigned to.
automaticallyAssigned
Boolean
Whether this space assignment was automatic or manual.

Status

A booking status.

Properties

NameDescription
id
UUID
The id of the status.
name
String
The name of the status.
type
StatusType
The type of the status.

StatusHistory

An event that captures a change in the status of a booking.

Properties

NameDescription
id
UUID
The id of the booking history event.
time
Timestamp
The time this event was captured.
user
String
The name of the user who caused this event. May be null, which represents an event caused by Mobiledock itself. If user is null but organisation has a value, then the event was caused by an organisation token.
organisation
Organisation
The organisation of the user who caused this event. Will only be null when user is null.
type
HistoryType
The type of history event.
status
Status
The status transitioned into.

Task

A task represents a core unit of work for a booking.

Properties

NameDescription
id
ID
The id of the task. The ID will always be in the format of 'MDT-XX-XXXX-XXXX' where the first two XX after MDT are the last two digits of the year the task was created in.
sender
Organisation
The organisation that has been assigned as sender of the task.
senderCore
CoreDetails
The core details associated with the sender on the task.
receiver
Organisation
The organisation that has been assigned as receiver of the task.
receiverCore
CoreDetails
The core details associated with the receiver on the task.
direction
Direction
The direction the task is going, inbound or outbound.
loads
[LoadQuantity!]
A list of load quantities on the task.
bookingOptions
[BookingOption!]
A list of booking options associated with the task.
documentId
ID
If the task was booked against a document, the id of the document will be present.

TaskHistory

An event that captures a change in the tasks on a booking.

Properties

NameDescription
id
UUID
The id of the booking history event.
time
Timestamp
The time this event was captured.
user
String
The name of the user who caused this event. May be null, which represents an event caused by Mobiledock itself. If user is null but organisation has a value, then the event was caused by an organisation token.
organisation
Organisation
The organisation of the user who caused this event. Will only be null when user is null.
type
HistoryType
The type of history event.
addedTaskIds
[UUID!]
The ids of the tasks that have been added to the booking.
deletedTaskIds
[UUID!]
The ids of the tasks that have been removed from the booking.

Vehicle

A vehicle that represents the vehicle the booking will be using.

Properties

NameDescription
id
UUID
The id of the vehicle.
name
String
The name of the vehicle.

VehicleHistory

An event that captures a change in the vehicle on a booking.

Properties

NameDescription
id
UUID
The id of the booking history event.
time
Timestamp
The time this event was captured.
user
String
The name of the user who caused this event. May be null, which represents an event caused by Mobiledock itself. If user is null but organisation has a value, then the event was caused by an organisation token.
organisation
Organisation
The organisation of the user who caused this event. Will only be null when user is null.
type
HistoryType
The type of history event.
vehicle
Vehicle
The new vehicle on the booking.

Enums

BookingType

Values

NameDescription
StandardA standard booking was created with the standard flow.
InstantAn instant booking was created as instant by the location, and bypassed the booking engine.
RecurringA recurring type booking was created by a recurring booking configured by the location.
APIAn API booking was created as instant or standard, but by an organisation token.

Direction

Values

NameDescription
InboundIf a task or document is marked as `Inbound`, then offsites are the sender and occupants are the receiver.
OutboundIf a task or document is marked as `Outbound`, then occupants are the sender and offsites are the receiver.

DocumentMode

Values

NameDescription
FixedIf a document is marked as `Fixed`, the loads or quantities defined cannot be modified when booking the document.
FreeIf a document is marked as `Free`, the loads and quantities defined may be modified when booking the document.

HistoryType

Values

NameDescription
StatusHistoryA change in status for the booking.
FieldHistoryA change in the field data for the booking.
SpaceHistoryA change in the space the booking has been assigned to.
RequestHistoryA change in the requested time for the booking.
TaskHistoryA change in the tasks for the booking.
VehicleHistoryA change in the vehicle for the booking.

StatusType

Values

NameDescription
SubmittedThe Submitted status is always the first status in the booking. It is a default status and cannot be removed.
ApprovedThe Approved status is the status that follows Submitted. It marks being assigned a space and time. It is a default status and cannot be removed.
CompletedThe completed status is the last status in all bookings that complete successfully. It is a default status and cannot be removed.
OnHoldThe on hold status is a special flow status for booking that are on hold. It is a default status and cannot be removed.
CancelledThe Cancelled status is an exception status for a generic 'failed' booking/ It is a default status and cannot be removed.
FlowFlow statuses represent normal statuses for a booking to be in. Flow statuses are user-defined.
ExceptionException statuses represent specific failure states of a booking. Exception statuses are user-defined.

WebhookType

Values

WARNING: Whilst this type is defined as an enum, addional webhook types may be added in future without warning. For this reason, we suggest treating this type as a string.

NameDescription
CreatedIndicates the booking has been created.
FlowStatusUpdateIndicates the booking has had an update to a flow status.
ExceptionStatusUpdateIndicates the booking has had an update to an exception status.
FieldDataUpdateIndicates the booking has had an update to its fields.
AssignedSpaceIndicates the booking has had an update to its assigned space.
RequestedTimeUpdateIndicates the booking has had an update to its requested time.
TasksChangeIndicates the booking has had an update to its tasks.
VehicleChangeIndicates the booking has had an update to its vehicle.