Dispatch API (Routenoptimierung)

Verwenden Sie Dispatch, um Routen über mehrere Fahrzeuge und viele Stopps zu optimieren. Dispatch liefert eine geordnete Route pro Fahrzeug mit Zeit-, Distanz- und Zuordnungsausgaben für Lieferrouting, Field Service, Kurierdienste und Flottenplanung.

TrackRoad Dispatch API Übersicht mit Fahrzeugen und Stopps, die in optimierte Routen überführt werden
Dispatch verteilt Stopps auf mehrere Fahrzeuge und liefert optimierte Routen mit Stopp-Reihenfolge, ETA, Distanz und Dauer für jedes Fahrzeug zurück.

Benötigen Sie den vollständigen Vertrag?

Verwenden Sie Swagger für REST-Modelle und WSDL für SOAP-Integrationsdetails.

Swagger UI anzeigen SOAP WSDL anzeigen Übersicht der API-Referenz

Inhaltsverzeichnis

  1. Was Dispatch macht
  2. Optima-Modus, Time Window & TimeWindowDepot
  3. Mehrere Abholungen und Lieferungen
  4. Endpunkte und Basis-URLs
  5. Authentifizierung
  6. Anfrageschema
  7. Antwortschema
  8. Häufige Fehler
  9. Best Practices
  10. Verwandte Endpunkte
  11. FAQ

Was Dispatch macht#

Dispatch löst ein Routingproblem mit mehreren Fahrzeugen. Es weist Stopps Fahrzeugen zu und ordnet jede Route unter Berücksichtigung von Einschränkungen wie Zeitfenstern, Kapazität, Priorität sowie Start- oder Zielorten.

LatLong wird bevorzugt. Jeder Stopp sollte nach Möglichkeit LatLong enthalten. Wenn LatLong nicht angegeben wird, müssen Sie eine Address angeben, damit der Dienst den Stopp geokodieren kann.

Die Dispatch-Methode akzeptiert eine Liste von Fahrzeugen und eine Liste von Stopp-Standorten. Jedes Fahrzeug kann einen Startort und optional einen Zielort enthalten. Jeder Standort kann einen Namen, Adressfelder sowie Breiten- und Längengrad enthalten.

Wenn Breiten- und Längengrad vorhanden sind, verwendet TrackRoad diese direkt. Andernfalls geokodiert der Dienst die Adresse, um Koordinaten zu erhalten.

Dispatch gibt Fahrzeugobjekte zurück. Jedes Fahrzeugobjekt enthält die zugewiesene Route als geordnete Liste von Stopps, optimiert nach Standort, Kapazität, Zeit und anderen Routingfaktoren.

Wenn nur ein Fahrzeug verfügbar ist, führt Dispatch nur eine Routenoptimierung durch. Dispatch-Modi sind vor allem relevant, wenn mehrere Fahrzeuge verfügbar sind.

Wenn Sie nicht sicher sind, welchen Dispatch-Modus Sie verwenden sollen, beginnen Sie mit Auto. Für hochgenaue Optimierung mit einem einzelnen Fahrzeug verwenden Sie Optima.

Optima-Modus, Time Window & TimeWindowDepot#

In manchen Sprachen ist es möglicherweise nicht möglich, einen null-Datetime-Wert zu übergeben. Verwenden Sie in diesem Fall 0001-01-01T00:00:00. Daten, die älter als der Systemschwellenwert sind, werden als Nullwerte behandelt.

Für beste Ergebnisse verwenden Sie DispatchMode Optima.

Drei Variablen beeinflussen das Verhalten der Zeitfenster-Disposition:

  • CanArriveEarly
  • TimeConstraintArrival
  • TimeConstraintDeparture

Option 1: CanArriveEarly = true

Wenn CanArriveEarly true ist, beginnt das Zeitfenster zu Tagesbeginn. Wenn TimeConstraintArrival null ist, kann der Stopp jederzeit während des Tages besucht werden. Wenn TimeConstraintArrival gesetzt ist, definiert es die späteste zulässige Ankunftszeit. Die Abfahrtszeit wird ignoriert.

Option 2: CanArriveEarly = false

Wenn CanArriveEarly false ist, definieren Ankunft und Abfahrt das zulässige Zeitfenster. Wenn die Ankunft gesetzt ist und die Abfahrt null ist, wird der Stopp wie ein fester Termin behandelt. Wenn beide gesetzt sind, versucht TrackRoad, den Stopp innerhalb dieses Zeitbereichs zu besuchen.

Option 3: Zwei Zeitfenster

Sie können auch ein zweites Zeitfenster mit TimeConstraintArrival2 und TimeConstraintDeparture2 angeben. Das ist nützlich, wenn ein Stopp nur in zwei getrennten Zeiträumen besucht werden kann, etwa bei eingeschränkten Lieferzeiten in Innenstädten. TimeWindowDepot folgt derselben Logik, geht aber davon aus, dass Fahrzeuge an einem gemeinsamen Depot starten und enden.

Pausen können mit LocationType = Break modelliert werden. Mehrere Abhol- und Lieferketten unterstützen auf Lieferebene nur ein Lieferzeitfenster, und diese untergeordnete Zeitvorgabe darf nicht enger sein als die übergeordnete Einschränkung.

Mehrere Abholungen und Lieferungen#

Dispatch unterstützt Pickup- und Delivery-Verkettungen. Das ist nützlich für Kurierdienste und Workflows, bei denen ein Stopp vor einem anderen besucht werden muss.

Verwenden Sie Midway für den ersten Stopp in einer Kette und Delivery, um den nächsten verknüpften Standort anzugeben. Verwenden Sie DeliveryNonStop, um festzulegen, ob die nächste verknüpfte Lieferung sofort oder später auf derselben Route erfolgen muss.

Wenn zum Beispiel ein Paket an Standort B abgeholt und an Standort M zugestellt wird, bewahrt TrackRoad die erforderliche Beziehung zwischen Abholung und Lieferung und optimiert gleichzeitig die Route rund um die übrigen Stopps.

DeliveryNonStop = true

Wenn DeliveryNonStop true ist, muss der verknüpfte Lieferstopp unmittelbar nach dem Abholstopp besucht werden.

DeliveryNonStop = false

Wenn DeliveryNonStop false ist, muss die verknüpfte Lieferung zwar nach der Abholung erfolgen, aber nicht unmittelbar danach.

Sie können mehrere Lieferungen verketten, z. B. B → M → N, indem Sie Delivery und KeepSameOrder an jedem verknüpften Stopp setzen.

Für Rundtouren definieren Sie Abhol-, Liefer- und Rückgabeorte als Kette. Eine gängige Empfehlung ist DeliveryNonStop = false und KeepSameOrder = true, um flexiblere Optimierung bei gleichzeitiger Wahrung der Geschäftsreihenfolge zu ermöglichen.

TrackRoad API Beispiel für Rundtour-Stopps
Beispiel: Stopps einer Rundtour.
TrackRoad API Beispiel für Rundtour-Route
Beispiel: Route einer Rundtour.

Endpunkte und Basis-URLs#

REST

Element Wert
Basis-URL https://trackservice.trackroad.com
Endpunkt POST /rest/dispatch
Vollständige URL https://trackservice.trackroad.com/rest/dispatch
Content-Type application/json

SOAP

Element Wert
Endpunkt https://trackservice.trackroad.com/TrackService.asmx
WSDL https://trackservice.trackroad.com/TrackService.asmx?WSDL
Methode Dispatch
SOAPAction http://trackservice.trackroad.com/Dispatch

SOAP verwendet dieselben Modelle DispatchSpecification und DispatchResult. Der Hauptunterschied besteht im SOAP-Envelope und der headerbasierten Authentifizierung.

Authentifizierung#

REST-Authentifizierung (X-API-Key)

Fügen Sie Ihren TrackServiceKey in jedem Request in den Header X-API-Key ein. Erstellen Sie den Schlüssel in Ihrem TrackRoad-Konto unter API-Authentifizierung .

curl -X POST "https://trackservice.trackroad.com/rest/dispatch" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_TRACKSERVICEKEY" \
  -d '{ "RoutingService": 0, "DistanceUnit": 0, "RouteOptimize": 0, "Vehicles": [], "Locations": [] }'

Bewahren Sie API-Schlüssel serverseitig auf. Betten Sie Schlüssel nicht in Browser- oder mobilen Client-Code ein.

SOAP-Authentifizierung (SessionIDHeader)

Für SOAP-Requests senden Sie Ihren TrackServiceKey im SessionIDHeader als SessionID. Veraltete Login- und Logout-Aufrufe sind nicht erforderlich, wenn Sie TrackServiceKey-Authentifizierung verwenden.

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema"
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <SessionIDHeader xmlns="http://trackservice.trackroad.com/">
      <SessionID>YOUR_TRACKSERVICEKEY</SessionID>
    </SessionIDHeader>
  </soap:Header>
  <soap:Body>
    <Dispatch xmlns="http://trackservice.trackroad.com/">
      <specification>
        <RoutingService>0</RoutingService>
        <DistanceUnit>0</DistanceUnit>
        <RouteOptimize>0</RouteOptimize>
        <Vehicles />
        <Locations />
      </specification>
    </Dispatch>
  </soap:Body>
</soap:Envelope>

SOAP-Namespaces und Präfixe können je nach Tooling variieren. Ein aus dem WSDL generierter Client ist meist die einfachste Option.

Anfrageschema#

Der Request-Body ist ein einzelnes Objekt: DispatchSpecification. Mindestens müssen Fahrzeuge und Standorte angegeben werden.

DispatchSpecification

Eigenschaft Typ Erforderlich Beschreibung
RoutingServiceint (enum)NeinRouting-Engine. 0 = NetRoad, 1 = TrackRoad, 2 = Bing. Empfohlen: 0 = NetRoad.
IsNeedMatchCodeboolNeinWenn true, werden Geokodierungs-Match-Qualitätscodes eingebunden, sofern relevant.
CurrentTimestring (date-time)NeinAktuelle Zeitreferenz für Zeiteinschränkungen im ISO-8601-Format.
DispatchModeint (enum)NeinOptimierungsstrategie. Empfehlungen zu Modi finden Sie unter Dispatch-Modi.
MinimumOptimizationintNeinSchwellenwert für Optimierungsintensität. Typischer Bereich: 1 bis 10.
DistanceUnitint (enum)Nein0 = Meile, 1 = Kilometer.
RouteOptimizeint (enum)Nein0 = MinimizeTime, 1 = MinimizeDistance. Empfohlen: 0 = MinimizeTime.
VehiclesVehicle[]NeinFür die Disposition verfügbare Fahrzeuge.
LocationsLocation[]JaStopps, die zugewiesen und geordnet werden.

DispatchMode

Eigenschaft Typ Wert Beschreibung
Autoint0Wählt automatisch eine geeignete Dispositionsstrategie aus. Bester Standard-Startpunkt.
EqualStopint1Versucht, eine gleiche Anzahl von Stopps auf die Fahrzeuge zu verteilen.
SingleRegionint2Nützlich, wenn Fahrzeuge geografisch verteilt sind, aber Stopps in ähnlichen Gebieten bedienen.
MultipleRegionint3Nützlich für Fahrzeuge in verschiedenen Städten oder weit entfernten Regionen sowie für Echtzeit-Field-Dispatch.
EqualHourint4Versucht, Arbeit in Routen mit ähnlicher Gesamtzeit aufzuteilen.
EqualDistanceint5Versucht, Arbeit in Routen mit ähnlicher Gesamtdistanz aufzuteilen.
TimeWindowint6Priorisiert Termin- und Lieferzeitfenster. Die Optimierung kann reduziert werden, um Zeitvorgaben einzuhalten.
TimeWindowDepotint7Zeitfenstermodus, der von einem zentralen Depot für alle Fahrzeuge ausgeht.
Optimaint8Hochgenauer Modus für ein einzelnes Fahrzeug, mit oder ohne Zeitfenster.
BalanceLocationint9Balanciert die Anzahl zugewiesener Stopps über mehrere Fahrer.
BalanceTimeint10Balanciert die Routenzeit über mehrere Fahrer.
MinimumVehiclesint11Wählt die minimale Anzahl an Fahrzeugen, die erforderlich ist, um alle Stopps unter Berücksichtigung der Routingfaktoren zu bedienen.

Vehicle

Eigenschaft Typ Erforderlich Beschreibung
NamestringEmpfohlenFahrzeugkennzeichnung, die in den Ergebnissen angezeigt wird.
EmailstringNeinOptionaler Fahrer- oder Fahrzeugkontakt.
GroupstringNeinOptionales Gruppierungsfeld wie Team, Depot oder Region.
SpeedintNeinOptionale Geschwindigkeitsüberschreibung. Wenn auf 0 gesetzt, wird die Standard-Straßengeschwindigkeit verwendet.
MaxStopsintNeinMaximale Anzahl von Stopps pro Route für das Fahrzeug.
MaxWeightdoubleNeinMaximale Gewichtskapazität des Fahrzeugs.
MaxSkidsintNeinMaximale Kapazität für Skids des Fahrzeugs.
MaxVolumedoubleNeinMaximale Volumenkapazität des Fahrzeugs.
MaxMinutesintNeinMaximale Routendauer für das Fahrzeug.
FuelCostdoubleNeinOptionaler Kostenparameter, der von einigen Optimierungsmodi verwendet wird.
OnTheRoadboolNeinWenn true, kann eine mehrtägige Route vom Endort des Vortags fortgesetzt werden, statt zum ursprünglichen Startpunkt zurückzukehren.
Tinstring (date-time)NeinZeitstempel, ab dem das Fahrzeug verfügbar ist.
Toutstring (date-time)NeinZeitstempel, bis zu dem das Fahrzeug verfügbar ist.
StartLocationLocationNeinOptionales Startdepot oder Startposition für das Fahrzeug.
FinishLocationLocationNeinOptionales Zieldepot oder Endposition für das Fahrzeug.
RolesstringNeinOptionale Rollen-Zeichenfolge, die mit Stopp-Bedingungen abgeglichen werden kann.
TransportTypeint (enum)NeinTransportmodus wie Auto, Lkw, Bus, Motorrad, Fußgänger, Roller oder Fahrrad.
ExcludeTollsboolNeinGibt an, ob mautpflichtige Straßen vermieden werden sollen.
ExcludeHighwaysboolNeinGibt an, ob Autobahnen vermieden werden sollen.
UseTruckRouteboolNeinGibt an, ob Lkw-Routen bevorzugt oder zugelassen werden sollen.
WidthfloatNeinFahrzeugbreite in Metern.
HeightfloatNeinFahrzeughöhe in Metern.
LengthfloatNeinFahrzeuglänge in Metern.
AxleLoadfloatNeinAchslast des Fahrzeugs in metrischen Tonnen.
AxleCountintNeinAnzahl der Achsen.
TrackRoad API Beispiel für die OnTheRoad-Funktion eines Fahrzeugs
Beispiel: Verhalten täglicher Routen mit aktiviertem bzw. deaktiviertem OnTheRoad.

Location

Jeder Standort sollte nach Möglichkeit LatLong enthalten. Wenn Koordinaten fehlen, ist Address erforderlich, damit TrackRoad den Stopp geokodieren kann.

Eigenschaft Typ Erforderlich Beschreibung
MatchCodeint (enum)NeinGeocode-Match-Qualitätscode.
NamestringNeinStopp-Bezeichnung, die in den Ergebnissen angezeigt wird.
DeliverystringNeinName des verknüpften Lieferorts oder Kundenbezeichnung.
DeliveryNonStopboolNeinBestimmt, ob die verknüpfte Lieferung unmittelbar nach dem aktuellen Stopp erfolgen muss.
KeepSameOrderboolNeinWenn true, bleibt die im Request definierte relative Reihenfolge erhalten.
VehiclestringNeinOptionale Vorzuweisung zu einem bestimmten Fahrzeug über den Namen.
DescriptionstringNeinOptionale Hinweise oder Beschreibung.
PhonestringNeinOptionale Kontakttelefonnummer.
LatLongLatLongBedingtBevorzugte Koordinateneingabe. Erforderlich, wenn keine Address angegeben wird.
AddressAddressBedingtAdresseingabe, die zur Geokodierung verwendet wird, wenn LatLong nicht angegeben ist.
PriorityintNeinPrioritätshinweis für die Optimierung.
WaitintNeinService- oder Wartezeit am Stopp.
VolumedoubleNeinVolumenbedarf, der von der Fahrzeugkapazität verbraucht wird.
WeightdoubleNeinGewichtsbedarf, der von der Fahrzeugkapazität verbraucht wird.
SkidsintNeinSkid-Bedarf, der von der Fahrzeugkapazität verbraucht wird.
TimeConstraintArrivalstring (date-time)NeinPrimärer Ankunftswert des Zeitfensters.
TimeConstraintDeparturestring (date-time)NeinPrimärer Abfahrtswert des Zeitfensters.
TimeConstraintArrival2string (date-time)NeinOptionaler zweiter Ankunftswert des Zeitfensters.
TimeConstraintDeparture2string (date-time)NeinOptionaler zweiter Abfahrtswert des Zeitfensters.
LocationTypeint (enum)Nein0 = Midway, 1 = Start, 2 = Finish, 3 = Delivery, 4 = MidwayDrop, 5 = Break.
CanArriveEarlyboolNeinWenn false, ist eine Ankunft vor dem zulässigen Zeitfenster nicht erlaubt.
ConditionsstringNeinOptionale Geschäftsregel oder Rollen-Matching-Bedingung.

LatLong

Eigenschaft Typ Erforderlich Beschreibung
LatitudedoubleJaBreitengrad in Grad (-90 bis 90).
LongitudedoubleJaLängengrad in Grad (-180 bis 180).

Address

Eigenschaft Typ Erforderlich Beschreibung
StreetstringEmpfohlenStraßenadresse.
CitystringEmpfohlenStadt.
StatestringNeinBundesland oder Region.
PostalCodestringNeinPostleitzahl.
CountrystringEmpfohlenLand.

Antwortschema#

Eine erfolgreiche Antwort gibt DispatchResult mit fahrzeugbezogenen Routenelementen und optionalen Fehlern oder Warnungen zurück.

DispatchResult

Eigenschaft Typ Beschreibung
ItemsVehicleItem[]Fahrzeugbezogene Ergebniselemente mit der zugewiesenen Route.
ErrorsError[]Optionale Fehler oder Warnungen.
Statusint (enum)Vorgangsstatus: 0 = None, 1 = Success, 2 = Failed, 3 = SuccessWithErrors.

VehicleItem

Eigenschaft Typ Beschreibung
VehicleVehicleDas Fahrzeug, das dieser Route zugeordnet ist.
LocationsLocation[]Geordnete Standorte, die diesem Fahrzeug zugewiesen sind.

Error

Eigenschaft Typ Beschreibung
MessagestringMenschenlesbare Fehler- oder Warnmeldung.

Beispiele#

Beispiel-Anfrage- und Antwort-Codeblöcke können unverändert bleiben und müssen nicht lokalisiert werden.

{
  "RoutingService": 0,
  "DistanceUnit": 0,
  "RouteOptimize": 0,
  "DispatchMode": 0,
  "Vehicles": [
    {
      "Name": "Truck 1",
      "StartLocation": { "LatLong": { "Latitude": 37.7946, "Longitude": -122.3950 }, "LocationType": 1 },
      "FinishLocation": { "LatLong": { "Latitude": 37.7946, "Longitude": -122.3950 }, "LocationType": 2 }
    }
  ],
  "Locations": [
    { "Name": "Stop A", "LatLong": { "Latitude": 37.7897, "Longitude": -122.4011 }, "LocationType": 0 },
    { "Name": "Stop B", "LatLong": { "Latitude": 37.7810, "Longitude": -122.4110 }, "LocationType": 0 }
  ]
}

REST request examples (multiple languages)#

curl -X POST "https://trackservice.trackroad.com/rest/dispatch" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_TRACKSERVICEKEY" \
  -d '{
    "RoutingService": 0,
    "DistanceUnit": 0,
    "RouteOptimize": 0,
    "DispatchMode": 0,
    "Vehicles": [
      {
        "Name": "Truck 1",
        "StartLocation": { "LatLong": { "Latitude": 37.7946, "Longitude": -122.3950 }, "LocationType": 1 },
        "FinishLocation": { "LatLong": { "Latitude": 37.7946, "Longitude": -122.3950 }, "LocationType": 2 }
      }
    ],
    "Locations": [
      { "Name": "Stop A", "LatLong": { "Latitude": 37.7897, "Longitude": -122.4011 }, "LocationType": 0 },
      { "Name": "Stop B", "LatLong": { "Latitude": 37.7810, "Longitude": -122.4110 }, "LocationType": 0 }
    ]
  }'

SOAP request examples (multiple languages)#

SOAP uses the same DispatchSpecification model, but it’s wrapped in a SOAP envelope and authenticated via SessionIDHeader (SessionID = TrackServiceKey).

curl -X POST "https://trackservice.trackroad.com/TrackService.asmx" \
  -H "Content-Type: text/xml; charset=utf-8" \
  -H "SOAPAction: http://trackservice.trackroad.com/Dispatch" \
  -d @dispatch-soap.xml

SOAP: Raw request (Envelope + SessionIDHeader)#

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema"
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <SessionIDHeader xmlns="http://trackservice.trackroad.com/">
      <SessionID>YOUR_TRACKSERVICEKEY</SessionID>
    </SessionIDHeader>
  </soap:Header>
  <soap:Body>
    <Dispatch xmlns="http://trackservice.trackroad.com/">
      <specification>
        <RoutingService>0</RoutingService>
        <DistanceUnit>0</DistanceUnit>
        <RouteOptimize>0</RouteOptimize>
        <DispatchMode>0</DispatchMode>
        <Vehicles></Vehicles>
        <Locations></Locations>
      </specification>
    </Dispatch>
  </soap:Body>
</soap:Envelope>

JSON: Response example#

{
  "Items": [
    {
      "Vehicle": { "Name": "Truck 1" },
      "Locations": [
        { "Name": "Stop A", "LatLong": { "Latitude": 37.7897, "Longitude": -122.4011 } },
        { "Name": "Stop B", "LatLong": { "Latitude": 37.7810, "Longitude": -122.4110 } }
      ]
    }
  ],
  "Errors": [],
  "Status": 1
}

SOAP: Response example#

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <DispatchResponse xmlns="http://trackservice.trackroad.com/">
      <DispatchResult>
        <Status>1</Status>
        <Errors />

        <Items>
          <VehicleItem>
            <Vehicle>
              <Name>Truck 1</Name>
            </Vehicle>

            <Locations>
              <Location>
                <Name>Stop A</Name>
                <LocationType>0</LocationType>
                <LatLong>
                  <Latitude>37.7897</Latitude>
                  <Longitude>-122.4011</Longitude>
                </LatLong>
              </Location>

              <Location>
                <Name>Stop B</Name>
                <LocationType>0</LocationType>
                <LatLong>
                  <Latitude>37.7810</Latitude>
                  <Longitude>-122.4110</Longitude>
                </LatLong>
              </Location>
            </Locations>
          </VehicleItem>
        </Items>

      </DispatchResult>
    </DispatchResponse>
  </soap:Body>
</soap:Envelope>

Häufige Fehler#

  • REST 401 / Unauthorized: Fehlender oder ungültiger X-API-Key.
  • REST 403 / Forbidden: Der Schlüssel ist gültig, aber blockiert, abgelaufen oder ohne Guthaben.
  • Validierungsfehler: Ein Stopp enthält weder LatLong noch Address, oder die Koordinaten sind ungültig.
  • SOAP-Authentifizierungsfehler: Fehlender/ungültiger SessionIDHeader oder leere SessionID.

Best Practices

  • Bevorzugen Sie LatLong, um Geokodierungsmehrdeutigkeiten zu vermeiden und die Routing-Konsistenz zu verbessern.
  • Verwenden Sie StartLocation und FinishLocation für depotbasiertes Routing und bessere ETAs.
  • Fügen Sie Kapazitätseinschränkungen wie Gewicht, Volumen und Skids hinzu, um realistischere Routenzuweisungen zu erhalten.
  • Verwenden Sie Zeitfenster, wenn Stopps innerhalb von Kunden- oder Betriebszeiten besucht werden müssen.
  • Verwenden Sie für SOAP den TrackServiceKey im SessionIDHeader. Der veraltete Login-Flow ist nicht erforderlich.

FAQ#

Was macht die Dispatch API?
Dispatch optimiert Stopps über mehrere Fahrzeuge und gibt geordnete Routen pro Fahrzeug mit Zeit- und Distanzausgaben zurück.
Wie authentifiziere ich mich bei Dispatch REST und SOAP?
REST verwendet Ihren TrackServiceKey im Header X-API-Key. SOAP verwendet denselben TrackServiceKey im SessionIDHeader als SessionID.
Benötige ich LatLong oder Address für Stopps?
LatLong wird bevorzugt. Wenn LatLong nicht angegeben ist, ist Address erforderlich, damit TrackRoad den Stopp geokodieren kann.

Bereit, Routen zu optimieren?

Erstellen Sie Ihren API-Schlüssel und beginnen Sie dann mit der Integration von Dispatch für Multi-Fahrzeug-Routenoptimierung über REST oder SOAP.

API-Schlüssel erhalten SOAP WSDL Swagger UI