Update shipment by ID
post
/fleetMonitoring/clientapi/v2/shipments/{shipmentId}
This operation updates the information about a shipment specified by its shipment ID. Unit sensitive fields like weight, volume, distance needs to be given in SI(metric) units
Request
Supported Media Types
- application/json
Path Parameters
-
shipmentId: string
Shipment ID to be patched
Query Parameters
-
external(optional): boolean
Query to filter subset of shipments to be patched.
Header Parameters
-
X-HTTP-Method-Override: string
To perform a partial update of the shipment, POST request should be orchestrated with method override set to PATCH.
-
X-ORACLE-IOT-ORG(optional): string
To allow targeting requests to different organizations. The header value should contain the organization identifier(orgId). This header is optional, if not provided orgId will be ORA_DEFAULT_ORG
Root Schema : ShipmentImpl_update
Type:
Show Source
object
-
carrierId(optional):
string
Carrier or transporter identifier
-
carrierName(optional):
string
Carrier Name
-
cost(optional):
integer
Shipment Cost
-
costCurrency(optional):
string
Property description was not set
-
domainName(optional):
string
Domain Name
-
earliestEndTime(optional):
integer
Earliest time when a shipment could be completed
-
earliestStartTime(optional):
integer
Earliest Start Time (epoch time in milliseconds)
-
equipment(optional):
object Equipment_update
-
equipmentUtilization(optional):
integer
Equipment Utilization
-
extendedFields(optional):
array extendedFields
List of extended field values supported for this shipment
-
isTPLManaged(optional):
boolean
Property description was not set
-
latestStartTime(optional):
integer
Latest Start Time (epoch time in milliseconds)
-
loadedDistance(optional):
integer
Loaded Distance, value should be provided in kilometers
-
name(optional):
string
Shipment Name
-
orderCount(optional):
integer
Number of Orders
-
plannedDriveDistance(optional):
integer
Planned Drive Distance, value should be provided in kilometers. If user input is provided, it is honored. Otherwise this is derived from distanceToNextStop provided for each stop, or is computed as a sum of loadedDistance and unLoadedDistance distances, or distance information derived from map service; in the order as mentioned.
-
plannedDriveDurationSeconds(optional):
integer
Planned Drive Duration in Seconds. If user input is provided, it is honoured. Otherwise the computation is done by the application.
-
powerUnitId(optional):
object ExternalEntityIDRefs_update
-
powerUnitLicensePlateNumber(optional):
string
Power Unit Registration Number.
-
shipperId(optional):
string
Shipper identifier or consignor
-
shipperName(optional):
string
Name of the shipper or consignor
-
shipUnitCount(optional):
integer
Number of Shipment Units
-
stops(optional):
array stops
List of stops
-
trackerStatus(optional):
string
Tracker status of the tracked shipment being monitored by data aggregator
-
trackingId(optional):
string
Tracking Id of the tracked shipment, as being monitored by data aggregator
-
transportMode(optional):
string
Transport mode. e.g. (TruckLoad, TL, LessThanTruckLoad, LTL etc)
-
unLoadedDistance(optional):
integer
Unloaded Distance, value should be provided in kilometers
-
volume(optional):
integer
Volume of the shipment, value should be provided in litres
-
volumeUtilization(optional):
integer
Volume Utilization
-
weight(optional):
integer
Weight of the shipment, value should be provided in kilograms
-
weightUtilization(optional):
integer
Weight Utilization
Nested Schema : Equipment_update
Type:
Show Source
object
-
externalId(optional):
string
Property description was not set
-
groupId(optional):
string
Property description was not set
Nested Schema : extendedFields
Type:
array
List of extended field values supported for this shipment
Show Source
Nested Schema : ExternalEntityIDRefs_update
Type:
Show Source
object
-
externalId(optional):
string
External ID
-
id(optional):
string
ID
Nested Schema : ShipmentExtendedField_update
Type:
Show Source
object
-
group(optional):
string
Type of the extended field. Following group types are supported &qot;VehicleIdentifier&qot;, &qot;ShipmentIdentifier&qot;, &qot;CarrierIdentifier&qot;;One of [VehicleIdentifier, ShipmentIdentifier, CarrierIdentifier].
-
name(optional):
string
Unique name of the extended field
Nested Schema : TripStopRecord_update
Type:
Show Source
object
-
address(optional):
string
Unified full address, e.g. 500 Oracle Parkway::Redwood City::CA::US::94065 . Must be provided if geoLocation is not specified.
-
city(optional):
string
Name of City
-
country(optional):
string
Name of country
-
distanceToNextStop(optional):
number
Estimated distance to next stop
-
geoLocation(optional):
object GeoPosition_update
-
plannedArrivalTime(optional):
integer
Planned Trip arrival time (in millisecond)
-
plannedDepartureTime(optional):
integer
Planned Trip departure time (in millisecond)
-
postalCode(optional):
string
Postal/Zip code
-
state(optional):
string
Name of State
-
street(optional):
string
Name of Street
-
timeZone(optional):
string
Time zone of the time fields
Nested Schema : GeoPosition_update
Type:
Show Source
object
-
additionalElements(optional):
array additionalElements
Property description was not set
-
altitude(optional):
number
Property description was not set
-
latitude(optional):
number
Property description was not set
-
longitude(optional):
number
Property description was not set
-
valid(optional):
boolean
Property description was not set
Response
Supported Media Types
- application/json
- application/vnd.oracle.resource+json;type=singular
200 Response
Successfully processed.
Root Schema : ShipmentImpl_receive
Type:
Show Source
object
-
carrierId:
string
Carrier or transporter identifier
-
carrierName:
string
Carrier Name
-
cost:
integer
Shipment Cost
-
costCurrency:
string
Property description was not set
-
createdBy:
string
Created by
-
createdTime:
string
Creation Time
-
domainName:
string
Domain Name
-
driverId:
object DriverEntityIDRefs_receive
-
earliestEndTime:
integer
Earliest time when a shipment could be completed
-
earliestStartTime:
integer
Earliest Start Time (epoch time in milliseconds)
-
endTime:
integer
End Time (epoch time in milliseconds)
-
equipment:
object Equipment_receive
-
equipmentUtilization:
integer
Equipment Utilization
-
extendedFields:
array extendedFields
List of extended field values supported for this shipment
-
externalId:
string
External ID
-
externalReference:
string
External Reference
-
id:
string
Shipment ID
-
isTPLManaged:
boolean
Property description was not set
-
lastModifiedBy:
string
Modified By
-
lastModifiedTime:
integer
Last Modified Time (epoch time in milliseconds)
-
lastModifiedTimeAsString:
string
Last Modified Time of Shipment as an ISO-8601 formatted string.
-
latestStartTime:
integer
Latest Start Time (epoch time in milliseconds)
-
loadedDistance:
integer
Loaded Distance, value should be provided in kilometers
-
metricSnapshot:
object MetricSnapshot_receive
-
name:
string
Shipment Name
-
orderCount:
integer
Number of Orders
-
plannedDriveDistance:
integer
Planned Drive Distance, value should be provided in kilometers. If user input is provided, it is honored. Otherwise this is derived from distanceToNextStop provided for each stop, or is computed as a sum of loadedDistance and unLoadedDistance distances, or distance information derived from map service; in the order as mentioned.
-
plannedDriveDurationSeconds:
integer
Planned Drive Duration in Seconds. If user input is provided, it is honoured. Otherwise the computation is done by the application.
-
powerUnitId:
object ExternalEntityIDRefs_receive
-
powerUnitLicensePlateNumber:
string
Power Unit Registration Number.
-
shipperId:
string
Shipper identifier or consignor
-
shipperName:
string
Name of the shipper or consignor
-
shipUnitCount:
integer
Number of Shipment Units
-
startTime:
integer
Start Time (epoch time in milliseconds)
-
status:
string
Shipment StatusOne of [PLANNED, EN_ROUTE, REACHED_DESTINATION, COMPLETED].
-
stopCount:
integer
Total Stop Count
-
stops:
array stops
List of stops
-
stopsCompleted:
integer
Stops Completed
-
trackerStatus:
string
Tracker status of the tracked shipment being monitored by data aggregator
-
trackingId:
string
Tracking Id of the tracked shipment, as being monitored by data aggregator
-
transportMode:
string
Transport mode. e.g. (TruckLoad, TL, LessThanTruckLoad, LTL etc)
-
tripId:
string
Trip ID
-
unLoadedDistance:
integer
Unloaded Distance, value should be provided in kilometers
-
volume:
integer
Volume of the shipment, value should be provided in litres
-
volumeUtilization:
integer
Volume Utilization
-
weight:
integer
Weight of the shipment, value should be provided in kilograms
-
weightUtilization:
integer
Weight Utilization
Nested Schema : DriverEntityIDRefs_receive
Type:
Show Source
object
-
externalId:
string
External ID
-
id:
string
ID
-
loginId:
string
Driver Login ID
Nested Schema : Equipment_receive
Type:
Show Source
object
-
externalId:
string
Property description was not set
-
groupId:
string
Property description was not set
Nested Schema : extendedFields
Type:
array
List of extended field values supported for this shipment
Show Source
Nested Schema : MetricSnapshot_receive
Type:
Show Source
object
-
metricValues:
array metricValues
The metric values of an entity
Nested Schema : ExternalEntityIDRefs_receive
Type:
Show Source
object
-
externalId:
string
External ID
-
id:
string
ID
Nested Schema : ShipmentExtendedField_receive
Type:
Show Source
object
-
group:
string
Type of the extended field. Following group types are supported &qot;VehicleIdentifier&qot;, &qot;ShipmentIdentifier&qot;, &qot;CarrierIdentifier&qot;;One of [VehicleIdentifier, ShipmentIdentifier, CarrierIdentifier].
-
name:
string
Unique name of the extended field
Nested Schema : MetricValue_receive
Type:
Show Source
object
-
booleanValue(optional):
boolean
Property description was not set
-
computedTime:
integer
Property description was not set
-
confidenceLevel(optional):
integer
Property description was not set
-
entityId:
string
Property description was not set
-
entityType:
string
Property description was not set
-
esAdditionalData:
object esAdditionalData
Additional Properties Allowed: additionalPropertiesProperty description was not set
-
esRelationType:
object EsJoinFieldValue_receive
-
eventTime:
integer
Property description was not set
-
eventTimeAsString:
string
Property description was not set
-
geoLocationValue(optional):
object GeoPosition_receive
-
id:
string
Property description was not set
-
interval:
string
One of [DYNAMIC, CURRENT, EVERY2MINUTE, HOURLY, DAILY, NEXT24HOURS, WEEKLY, BIWEEKLY, NEXT7DAYS, NEXT30DAYS, MONTHLY, DAYS90, STATIC].
-
lastKnown:
boolean
Property description was not set
-
metadata:
object metadata
Additional Properties Allowed: additionalPropertiesProperty description was not set
-
name:
string
Property description was not set
-
numericValue(optional):
integer
Property description was not set
-
params:
object params
Additional Properties Allowed: additionalPropertiesProperty description was not set
-
stringValue(optional):
string
Property description was not set
-
type:
string
One of [KPI, PREDICTION, ANOMALY, TREND_NELSON, TREND, SENSOR, CORRELATION, CLUSTERING].
Nested Schema : esAdditionalData
Type:
object
Additional Properties Allowed
Show Source
-
string
A map of the following type: Map<String, String>
Property description was not set
Show Source
Nested Schema : EsJoinFieldValue_receive
Type:
Show Source
object
-
name:
string
Property description was not set
-
parent:
string
Property description was not set
Nested Schema : GeoPosition_receive
Type:
Show Source
object
-
additionalElements:
array additionalElements
Property description was not set
-
altitude:
number
Property description was not set
-
latitude:
number
Property description was not set
-
longitude:
number
Property description was not set
-
valid:
boolean
Property description was not set
Nested Schema : metadata
Type:
object
Additional Properties Allowed
Show Source
-
string
A map of the following type: Map<String, String>
Property description was not set
Show Source
Nested Schema : params
Type:
object
Additional Properties Allowed
Show Source
-
string
A map of the following type: Map<String, String>
Property description was not set
Show Source
Nested Schema : TripStopRecord_receive
Type:
Show Source
object
-
address:
string
Unified full address, e.g. 500 Oracle Parkway::Redwood City::CA::US::94065 . Must be provided if geoLocation is not specified.
-
arrivalTime:
integer
Trip arrival time (millisecond)
-
city:
string
Name of City
-
country:
string
Name of country
-
departureTime:
integer
Trip departure time (millisecond)
-
distanceToNextStop:
number
Estimated distance to next stop
-
estimatedArrivalTime:
integer
Estimated arrival time (millisecond)
-
estimatedDepartureTime:
integer
Estimated departure time (millisecond)
-
estimatedTimeToNextStop:
integer
Estimated time it will take to reach next stop (second)
-
expectedDurationFromStart:
integer
Expected duration from Start to arrive at this Stop (seconds)
-
geoLocation:
object GeoPosition_receive
-
plannedArrivalTime:
integer
Planned Trip arrival time (in millisecond)
-
plannedDepartureTime:
integer
Planned Trip departure time (in millisecond)
-
postalCode:
string
Postal/Zip code
-
state:
string
Name of State
-
stopDurationInSeconds:
integer
Stop duration in seconds
-
stopSequence:
integer
Sequence number of the stop
-
stopType:
string
The reason for stopping
-
street:
string
Name of Street
-
timeZone:
string
Time zone of the time fields
400 Response
Bad Request. The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.
401 Response
Unauthorized. The request requires user authentication.
404 Response
Not Found. The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent.
405 Response
Method Not Allowed. The method specified in the Request-Line is not allowed for the resource identified by the Request-URI.
406 Response
Request Not Acceptable. The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request.
415 Response
Unsupported Media Type. The request entity has a media type which the server or resource does not support.
Examples
curl -X POST
-u <username>:<password>
-H 'Accept: application/json'
-H 'Content-Type: application/json'
--header "X-HTTP-Method-Override: PATCH"
https://iotserver/fleetMonitoring/clientapi/v2/shipments/{shipmentId}
Example of Request Body
The following example shows the content of the request body in JSON format:
{
"name": "Planned_Shipment-1",
"weight": 6.5,
"volume": 6.8
"plannedDriveDurationSeconds": 11000,
"plannedDriveDistance": 207.53849404103548
}
Example of Response Body
The following example shows the content of the response body in JSON format:
{
"id": "FB7FD9B7-11C5-49E9-B02B-E0D8547FD22C",
"externalId": "Planned-Shipment-2",
"name": "Planned_Shipment-2",
"cost": 60,
"isTPLManaged": false,
"equipment": {
"externalId": "EQUIP-3",
"groupId": "TestGrp"
},
"orderCount": 3,
"shipUnitCount": 4,
"carrierName": "MyGlobalCarrier",
"domainName": "D1",
"weight": 6.5,
"volume": 6.8,
"loadedDistance": 6.8,
"weightUtilization": 1.2,
"volumeUtilization": 3.6,
"equipmentUtilization": 8.9,
"unLoadedDistance": 7.8,
"plannedDriveDurationSeconds": 11000,
"plannedDriveDistance": 128.95876200245783,
"earliestStartTime": 1512905400000,
"latestStartTime": 1518078200000,
"externalReference": "BM1234565",
"driverId": {
"loginId": "iotFmDriver8"
},
"powerUnitId": {},
"stops": [
{
"address": "500 Oracle Parkway::Redwood City::CA::US::94065",
"geoLocation": [
-122.26223,
37.53084
],
"estimatedTimeToNextStop": 792,
"distanceToNextStop": 288,
"expectedDurationFromStart": 0,
"city": "Redwood City",
"country": "US",
"estimatedArrivalTime": 1517305083000,
"estimatedDepartureTime": 1517300083000,
"plannedArrivalTime": 1517305083000,
"plannedDepartureTime": 1517405083000,
"postalCode": "94065",
"state": "CA",
"stopDurationInSeconds": 0,
"stopType": "P",
"street": "500 Oracle Parkway",
"stopSequence": 1
},
{
"address": "4210 Network Circle::Santa Clara::CA::US::95054",
"geoLocation": [
-121.95267,
37.39124
],
"estimatedTimeToNextStop": 78,
"distanceToNextStop": 25,
"expectedDurationFromStart": 792,
"city": "Santa Clara",
"country": "US",
"estimatedArrivalTime": 1517305083000,
"estimatedDepartureTime": 1517405083000,
"plannedArrivalTime": 1517305083000,
"plannedDepartureTime": 1517405083000,
"postalCode": "95054",
"state": "CA",
"stopDurationInSeconds": 0,
"stopType": "P",
"street": "4210 Network Circle",
"stopSequence": 2
},
{
"address": "475 Sansome Street::San Francisco::CA::US::94111",
"geoLocation": [
-122.40143,
37.79461
],
"estimatedTimeToNextStop": 366,
"distanceToNextStop": 21.000000000000004,
"expectedDurationFromStart": 870,
"city": "San Francisco",
"country": "US",
"estimatedArrivalTime": 1517516083000,
"estimatedDepartureTime": 1518516083000,
"plannedArrivalTime": 1517516083000,
"plannedDepartureTime": 1518516083000,
"postalCode": "94111",
"state": "CA",
"stopDurationInSeconds": 0,
"stopType": "D",
"street": "475 Sansome Street",
"stopSequence": 3
}
],
"lastModifiedBy": "iot",
"lastModifiedTime": "2018-04-18T09:24:10.980Z",
"lastModifiedTimeAsString": 1524043450980,
"createdBy": "iot",
"createdTime": "2018-04-18T09:15:27.121Z",
"startTime": 0,
"endTime": 0,
"costCurrency": "EURO",
"status": "PLANNED",
"stopCount": 3,
"stopsCompleted": 0,
"links": [
{
"href": "https://iotserver:443/fleetMonitoring/clientapi/v2/shipments/FB7FD9B7-11C5-49E9-B02B-E0D8547FD22C/",
"rel": "self"
},
{
"href": "https://iotserver:443/fleetMonitoring/clientapi/v2/shipments/FB7FD9B7-11C5-49E9-B02B-E0D8547FD22C/",
"rel": "canonical"
}
]
}
Complete cURL Example
The following example shows a complete cURL command that you can use to perform the described operation:
curl -X POST
-u <username>:<password>
-H 'Accept: application/json'
-H 'Content-Type: application/json'
--header "X-HTTP-Method-Override: PATCH"
-d '{"stops":[{"plannedArrivalTime":1469184297746,"plannedDepartureTime":1469184297746,"timeZone":"Time zone of the time fields","geoLocation":{"longitude":0.0,"latitude":0.0,"altitude":0.0,"additionalElements":["additionalElements_1","additionalElements_2","additionalElements_3"],"valid":false},"city":"Name of City","street":"Name of Street","postalCode":"Postal/Zip code","distanceToNextStop":0.0,"address":"Unified full address, e.g. 500 Oracle Parkway::Redwood City::CA::US::94065 . Must be provided if geoLocation is not specified.","state":"Name of State","country":"Name of country"}],"cost":12345,"trackingId":"632663148b1-4e07","plannedDriveDistance":12345,"plannedDriveDurationSeconds":12345,"volume":12345,"costCurrency":"Property description was not set","equipment":{"externalId":"437b69dc7b9e-7f22","groupId":"7cc46051eea-33ca"},"orderCount":12345,"shipUnitCount":12345,"carrierName":"Carrier Name","weightUtilization":12345,"volumeUtilization":12345,"equipmentUtilization":12345,"earliestStartTime":1469184297746,"latestStartTime":1469184297746,"powerUnitLicensePlateNumber":"Power Unit Registration Number.","domainName":"Domain Name","unLoadedDistance":12345,"loadedDistance":12345,"powerUnitId":{"id":"2fd6f3417f7-5941","externalId":"36634cc5200d-6d23"},"isTPLManaged":false,"transportMode":"Transport mode. e.g. (TruckLoad, TL, LessThanTruckLoad, LTL etc)","shipperName":"Name of the shipper or consignor","shipperId":"7d52760ac1a-2476","carrierId":"6ad17148354a-4598","earliestEndTime":1469184297746,"extendedFields":[{"name":"Unique name of the extended field","group":"Type of the extended field. Following group types are supported &qot;VehicleIdentifier&qot;, &qot;ShipmentIdentifier&qot;, &qot;CarrierIdentifier&qot;;One of [VehicleIdentifier, ShipmentIdentifier, CarrierIdentifier]."}],"trackerStatus":"Tracker status of the tracked shipment being monitored by data aggregator","weight":12345,"name":"Shipment Name"}'
https://iotserver/fleetMonitoring/clientapi/v2/shipments/{shipmentId}
Note that in the request,
https://iotserver
will be replaced by the name and port of your assigned IoT Cloud Service instance. The format of the Cloud Service instance is
https://myinstance-myidentitydomain.iot.us.oraclecloud.com
and the default port is 443.