POST RouteOptimization/GetRouteOptimization

Returns a list of destinations in an optimized order.

Request Information

URI Parameters

Body Parameters

ClsRouteOptimization
NameDescriptionTypeAdditional Information
RouteOptimizationGUID

Route optimization identifier

globally unique identifier
Vehicles

List of vehicles to create routes for

Collection of ClsRouteOptimizationVehicle

Required

List cannot be empty

Deliveries

List of delivery destinations to route

Collection of ClsRouteOptimizationDelivery

Required

FillSpots

List of fill spots

Collection of ClsRouteOptimizationFillSpot

Required

Version

Version

integer

Request Formats

application/json, text/json

Sample:
{
  "RouteOptimizationGUID": "a1ed5547-7282-4b54-bb97-ea4be2cee76e",
  "Vehicles": [
    {
      "VehicleGUID": "a738cf44-06d1-400c-8c6b-e37e3dc285c2",
      "Capacity": 2.1,
      "StartingLatitude": 3.1,
      "StartingLongitude": 4.1,
      "EndingLatitude": 5.1,
      "EndingLongitude": 6.1
    },
    {
      "VehicleGUID": "a738cf44-06d1-400c-8c6b-e37e3dc285c2",
      "Capacity": 2.1,
      "StartingLatitude": 3.1,
      "StartingLongitude": 4.1,
      "EndingLatitude": 5.1,
      "EndingLongitude": 6.1
    }
  ],
  "Deliveries": [
    {
      "DeliveryGUID": "c8fc5a12-1933-404b-97f7-01e77123f8df",
      "Latitude": 2.1,
      "Longitude": 3.1,
      "Quantity": 4.1,
      "PreferredVehicle": "8ff4dcdc-01d9-4f09-a6c0-1b6e90837bc9",
      "IsFirstStop": true,
      "Priority": 7
    },
    {
      "DeliveryGUID": "c8fc5a12-1933-404b-97f7-01e77123f8df",
      "Latitude": 2.1,
      "Longitude": 3.1,
      "Quantity": 4.1,
      "PreferredVehicle": "8ff4dcdc-01d9-4f09-a6c0-1b6e90837bc9",
      "IsFirstStop": true,
      "Priority": 7
    }
  ],
  "FillSpots": [
    {
      "FillSpotGUID": "66937ee8-1205-465f-b99e-bad9f6afb1b0",
      "Latitude": 2.1,
      "Longitude": 3.1
    },
    {
      "FillSpotGUID": "66937ee8-1205-465f-b99e-bad9f6afb1b0",
      "Latitude": 2.1,
      "Longitude": 3.1
    }
  ],
  "Version": 3
}

application/xml, text/xml

Sample:
<ClsRouteOptimization xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SKY.Core.Interfaces.RouteOptimization">
  <Deliveries>
    <ClsRouteOptimization.ClsRouteOptimizationDelivery>
      <DeliveryGUID>c8fc5a12-1933-404b-97f7-01e77123f8df</DeliveryGUID>
      <IsFirstStop>true</IsFirstStop>
      <Latitude>2.1</Latitude>
      <Longitude>3.1</Longitude>
      <PreferredVehicle>8ff4dcdc-01d9-4f09-a6c0-1b6e90837bc9</PreferredVehicle>
      <Priority>7</Priority>
      <Quantity>4.1</Quantity>
    </ClsRouteOptimization.ClsRouteOptimizationDelivery>
    <ClsRouteOptimization.ClsRouteOptimizationDelivery>
      <DeliveryGUID>c8fc5a12-1933-404b-97f7-01e77123f8df</DeliveryGUID>
      <IsFirstStop>true</IsFirstStop>
      <Latitude>2.1</Latitude>
      <Longitude>3.1</Longitude>
      <PreferredVehicle>8ff4dcdc-01d9-4f09-a6c0-1b6e90837bc9</PreferredVehicle>
      <Priority>7</Priority>
      <Quantity>4.1</Quantity>
    </ClsRouteOptimization.ClsRouteOptimizationDelivery>
  </Deliveries>
  <FillSpots>
    <ClsRouteOptimization.ClsRouteOptimizationFillSpot>
      <FillSpotGUID>66937ee8-1205-465f-b99e-bad9f6afb1b0</FillSpotGUID>
      <Latitude>2.1</Latitude>
      <Longitude>3.1</Longitude>
    </ClsRouteOptimization.ClsRouteOptimizationFillSpot>
    <ClsRouteOptimization.ClsRouteOptimizationFillSpot>
      <FillSpotGUID>66937ee8-1205-465f-b99e-bad9f6afb1b0</FillSpotGUID>
      <Latitude>2.1</Latitude>
      <Longitude>3.1</Longitude>
    </ClsRouteOptimization.ClsRouteOptimizationFillSpot>
  </FillSpots>
  <RouteOptimizationGUID>a1ed5547-7282-4b54-bb97-ea4be2cee76e</RouteOptimizationGUID>
  <Vehicles>
    <ClsRouteOptimization.ClsRouteOptimizationVehicle>
      <Capacity>2.1</Capacity>
      <EndingLatitude>5.1</EndingLatitude>
      <EndingLongitude>6.1</EndingLongitude>
      <StartingLatitude>3.1</StartingLatitude>
      <StartingLongitude>4.1</StartingLongitude>
      <VehicleGUID>a738cf44-06d1-400c-8c6b-e37e3dc285c2</VehicleGUID>
    </ClsRouteOptimization.ClsRouteOptimizationVehicle>
    <ClsRouteOptimization.ClsRouteOptimizationVehicle>
      <Capacity>2.1</Capacity>
      <EndingLatitude>5.1</EndingLatitude>
      <EndingLongitude>6.1</EndingLongitude>
      <StartingLatitude>3.1</StartingLatitude>
      <StartingLongitude>4.1</StartingLongitude>
      <VehicleGUID>a738cf44-06d1-400c-8c6b-e37e3dc285c2</VehicleGUID>
    </ClsRouteOptimization.ClsRouteOptimizationVehicle>
  </Vehicles>
  <Version>3</Version>
</ClsRouteOptimization>

application/x-www-form-urlencoded

Sample:

Failed to generate the sample for media type 'application/x-www-form-urlencoded'. Cannot use formatter 'JQueryMvcFormUrlEncodedFormatter' to write type 'ClsRouteOptimization'.

Response Information

Resource Description

Returns a list of destinations in an optimized order.

AgvRouteOptimization
NameDescriptionTypeAdditional Information
Status

0 = Success. 1 = An error occurred. 2 = An error occurred. 3 = Descriptive message, process was successful.

string
Message

Informational message that corresponds to the Status returned. 0 - Message will be "OK". 1 - Detailed message returned to give user an indication of what went wrong. 2 - Less Detailed message returned that may not mean anything to the user but that the application might use to take a corrective action. 3 - Not an error but something the user might need to know.

string
Count

Count of how many Route JSON dictionaries.

string
Routes

JSON dictionary of Route.

Collection of ClsRouteOptimizationRoute

Response Formats

application/json, text/json

Sample:
{
  "Status": "sample string 1",
  "Message": "sample string 2",
  "Count": "2",
  "Routes": [
    {
      "Vehicle": {
        "VehicleID": "sample string 1"
      },
      "Stops": [
        {
          "StopType": 0,
          "StopID": "sample string 1",
          "PositionInRoute": 2,
          "Quantity": 3.1,
          "Priority": 4
        },
        {
          "StopType": 0,
          "StopID": "sample string 1",
          "PositionInRoute": 2,
          "Quantity": 3.1,
          "Priority": 4
        }
      ],
      "RouteOptimizationGUID": "55acacc5-4998-4e99-b632-88e606821067"
    },
    {
      "Vehicle": {
        "VehicleID": "sample string 1"
      },
      "Stops": [
        {
          "StopType": 0,
          "StopID": "sample string 1",
          "PositionInRoute": 2,
          "Quantity": 3.1,
          "Priority": 4
        },
        {
          "StopType": 0,
          "StopID": "sample string 1",
          "PositionInRoute": 2,
          "Quantity": 3.1,
          "Priority": 4
        }
      ],
      "RouteOptimizationGUID": "55acacc5-4998-4e99-b632-88e606821067"
    }
  ]
}

application/xml, text/xml

Sample:
<AgvRouteOptimization xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AgvWebAPICSharp.Models.RouteOptimization">
  <Message>sample string 2</Message>
  <Routes xmlns:d2p1="http://schemas.datacontract.org/2004/07/SKY.Core.Interfaces.RouteOptimization">
    <d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute>
      <d2p1:RouteOptimizationGUID>55acacc5-4998-4e99-b632-88e606821067</d2p1:RouteOptimizationGUID>
      <d2p1:Stops>
        <d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
          <d2p1:PositionInRoute>2</d2p1:PositionInRoute>
          <d2p1:Priority>4</d2p1:Priority>
          <d2p1:Quantity>3.1</d2p1:Quantity>
          <d2p1:StopID>sample string 1</d2p1:StopID>
          <d2p1:StopType>Unknown</d2p1:StopType>
        </d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
        <d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
          <d2p1:PositionInRoute>2</d2p1:PositionInRoute>
          <d2p1:Priority>4</d2p1:Priority>
          <d2p1:Quantity>3.1</d2p1:Quantity>
          <d2p1:StopID>sample string 1</d2p1:StopID>
          <d2p1:StopType>Unknown</d2p1:StopType>
        </d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
      </d2p1:Stops>
      <d2p1:Vehicle>
        <d2p1:VehicleID>sample string 1</d2p1:VehicleID>
      </d2p1:Vehicle>
    </d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute>
    <d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute>
      <d2p1:RouteOptimizationGUID>55acacc5-4998-4e99-b632-88e606821067</d2p1:RouteOptimizationGUID>
      <d2p1:Stops>
        <d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
          <d2p1:PositionInRoute>2</d2p1:PositionInRoute>
          <d2p1:Priority>4</d2p1:Priority>
          <d2p1:Quantity>3.1</d2p1:Quantity>
          <d2p1:StopID>sample string 1</d2p1:StopID>
          <d2p1:StopType>Unknown</d2p1:StopType>
        </d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
        <d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
          <d2p1:PositionInRoute>2</d2p1:PositionInRoute>
          <d2p1:Priority>4</d2p1:Priority>
          <d2p1:Quantity>3.1</d2p1:Quantity>
          <d2p1:StopID>sample string 1</d2p1:StopID>
          <d2p1:StopType>Unknown</d2p1:StopType>
        </d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute.Stop>
      </d2p1:Stops>
      <d2p1:Vehicle>
        <d2p1:VehicleID>sample string 1</d2p1:VehicleID>
      </d2p1:Vehicle>
    </d2p1:ClsRouteOptimization.ClsRouteOptimizationRoute>
  </Routes>
  <Status>sample string 1</Status>
</AgvRouteOptimization>