Routes List API (List Saved Routes)

Use Routes to retrieve a list of previously saved routes using filters like date range, owner, and route name. For SOAP integrations, use GetRouteList.

TrackRoad Routes List API showing saved routes filtered by date range, owner, and route name (REST + SOAP GetRouteList).
List and filter previously saved routes (REST Routes List and SOAP GetRouteList).

Need the full contract?

Swagger includes all fields, enums, and models for Routes and other endpoints. SOAP is available via the WSDL.

View Swagger UI View SOAP WSDL API Reference Overview

Table of Contents

  1. What Routes does
  2. Endpoints and base URLs
  3. Authentication (REST & SOAP)
  4. Request schema
  5. Response schema
  6. Examples (REST & SOAP)
  7. Common errors
  8. Best practices
  9. Related endpoints

What Routes does#

Routes returns a list of saved routes for your account. It’s typically used to build dashboards, sync route history, or allow users to search and open existing routes.

If you need details for a single route (stops, directions, timings), use the Route API (or the SOAP method that returns a full route payload).

Endpoints and base URLs#

SOAP#

Item Value
Endpoint https://trackservice.trackroad.com/TrackService.asmx
WSDL https://trackservice.trackroad.com/TrackService.asmx?WSDL
Method GetRouteList
SOAPAction http://TrackService.TrackRoad.com/GetRouteList

Authentication ( SOAP)#

SOAP authentication (SessionIDHeader)#

For SOAP, send your TrackServiceKey in SessionIDHeader as SessionID. Login/Logout are not required when using TrackServiceKey.

Request schema#

The request body is a single object that describes your filters. For SOAP (GetRouteList), these are sent as parameters.

RouteListSpecification (REST) / GetRouteList parameters (SOAP)#

Field Type Required Description
FromDate string (date-time) No Filter routes created/updated on or after this timestamp (ISO 8601).
ToDate string (date-time) No Filter routes created/updated on or before this timestamp (ISO 8601).
Owner string No Filter by owner/username (if supported by your account).
RouteName string No Filter by route name (exact/partial match depending on implementation).

If your Swagger exposes paging or additional filters (status, tags, max results), add them here as additional rows.

Response schema#

A successful response returns a list of routes matching your filters.

RoutesResult (REST)#

Property Type Description
Routes RouteSummary[] List of routes (summary records).
Errors Error[] Optional errors/warnings.
Status int (enum) 0=None, 1=Success, 2=Failed, 3=SuccessWithErrors.

RouteSummary#

Property Type Description
RouteID string / int Route identifier used to fetch route details.
RouteName string Human-friendly route name.
Distance double Total route distance.
Time int Total route time (seconds, unless your account is configured differently).
Owner string Owner/creator identifier (if available).
DateCreated string (date-time) Created timestamp.

SOAP returns the same idea (a list of route summary rows) wrapped inside a SOAP envelope.

Examples ( SOAP)#

SOAP: request examples (multiple languages)#

SOAP requires SessionIDHeader (SessionID = TrackServiceKey) and the SOAPAction header http://TrackService.TrackRoad.com/GetRouteList.

<!-- POST https://trackservice.trackroad.com/TrackService.asmx -->
<!-- Content-Type: text/xml; charset=utf-8 -->
<!-- SOAPAction: "http://TrackService.TrackRoad.com/GetRouteList" -->

<?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>
    <GetRouteList xmlns="http://TrackService.TrackRoad.com/">
      <FromDate>2026-01-01T00:00:00Z</FromDate>
      <ToDate>2026-01-31T23:59:59Z</ToDate>
      <Owner>dispatcher@company.com</Owner>
      <RouteName>January</RouteName>
    </GetRouteList>
  </soap:Body>
</soap:Envelope>

SOAP: response example (shape)#

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <GetRouteListResponse xmlns="http://TrackService.TrackRoad.com/">
      <GetRouteListResult>
        <Routes>
          <RouteSummary>
            <RouteID>12345</RouteID>
            <RouteName>January - North Zone</RouteName>
            <Distance>82.4</Distance>
            <Time>14250</Time>
            <Owner>dispatcher@company.com</Owner>
            <DateCreated>2026-01-12T16:21:00Z</DateCreated>
          </RouteSummary>
        </Routes>
        <Status>1</Status>
        <Errors />
      </GetRouteListResult>
    </GetRouteListResponse>
  </soap:Body>
</soap:Envelope>

Common errors#

  • REST 401 / Unauthorized: Missing or invalid X-API-Key.
  • REST 403 / Forbidden: Key is valid but blocked, expired, or lacks credit.
  • SOAP authentication error: Missing/invalid SessionIDHeader (SessionID must be your TrackServiceKey).
  • Invalid date format: Provide ISO 8601 date-times (example: 2026-01-31T23:59:59Z).

Best practices#

  • Use date filters to keep payloads fast and predictable (e.g., last 7–30 days).
  • Cache route lists if you render dashboards repeatedly (and refresh on-demand).
  • Follow up with Route details only when the user selects a route (don’t fetch details for every list item).
  • Prefer REST unless you must integrate with a SOAP-only system.

Want route details?

Use Routes to find saved RouteID values, then call Route API to load full stop lists, distances, and timing details.

Go to Route API View Swagger UI