<!-- 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>
curl -X POST "https://trackservice.trackroad.com/TrackService.asmx" \
-H "Content-Type: text/xml; charset=utf-8" \
-H "SOAPAction: \"http://TrackService.TrackRoad.com/GetRouteList\"" \
--data-binary @getroutelist.soap.xml
using System.Net.Http;
using System.Text;
var url = "https://trackservice.trackroad.com/TrackService.asmx";
var soap = @"
YOUR_TRACKSERVICEKEY
2026-01-01T00:00:00Z
2026-01-31T23:59:59Z
dispatcher@company.com
January
";
using var http = new HttpClient();
using var content = new StringContent(soap, Encoding.UTF8, "text/xml");
content.Headers.Clear();
content.Headers.TryAddWithoutValidation("Content-Type", "text/xml; charset=utf-8");
var req = new HttpRequestMessage(HttpMethod.Post, url);
req.Headers.TryAddWithoutValidation("SOAPAction", "\"http://TrackService.TrackRoad.com/GetRouteList\"");
req.Content = content;
var resp = await http.SendAsync(req);
Console.WriteLine(await resp.Content.ReadAsStringAsync());
const url = "https://trackservice.trackroad.com/TrackService.asmx";
const soap = `
YOUR_TRACKSERVICEKEY
2026-01-01T00:00:00Z
2026-01-31T23:59:59Z
dispatcher@company.com
January
`;
const res = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "text/xml; charset=utf-8",
"SOAPAction": "\"http://TrackService.TrackRoad.com/GetRouteList\""
},
body: soap
});
console.log(await res.text());
import okhttp3.*;
public class Main {
public static void main(String[] args) throws Exception {
OkHttpClient client = new OkHttpClient();
String soap = ""
+ ""
+ ""
+ ""
+ "YOUR_TRACKSERVICEKEY"
+ ""
+ ""
+ ""
+ ""
+ "2026-01-01T00:00:00Z"
+ "2026-01-31T23:59:59Z"
+ "dispatcher@company.com"
+ "January"
+ ""
+ ""
+ "";
RequestBody body = RequestBody.create(soap, MediaType.parse("text/xml; charset=utf-8"));
Request request = new Request.Builder()
.url("https://trackservice.trackroad.com/TrackService.asmx")
.post(body)
.addHeader("SOAPAction", "\"http://TrackService.TrackRoad.com/GetRouteList\"")
.build();
try (Response response = client.newCall(request).execute()) {
System.out.println(response.body().string());
}
}
}
import requests
url = "https://trackservice.trackroad.com/TrackService.asmx"
soap = """
YOUR_TRACKSERVICEKEY
2026-01-01T00:00:00Z
2026-01-31T23:59:59Z
dispatcher@company.com
January
"""
headers = {
"Content-Type": "text/xml; charset=utf-8",
"SOAPAction": "\"http://TrackService.TrackRoad.com/GetRouteList\""
}
r = requests.post(url, data=soap.encode("utf-8"), headers=headers)
print(r.text)
<?php
$url = "https://trackservice.trackroad.com/TrackService.asmx";
$soap = '<?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>';
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Content-Type: text/xml; charset=utf-8",
"SOAPAction: \"http://TrackService.TrackRoad.com/GetRouteList\""
],
CURLOPT_POSTFIELDS => $soap
]);
echo curl_exec($ch);
curl_close($ch);
require "net/http"
uri = URI("https://trackservice.trackroad.com/TrackService.asmx")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
soap = <<~XML
YOUR_TRACKSERVICEKEY
2026-01-01T00:00:00Z
2026-01-31T23:59:59Z
dispatcher@company.com
January
XML
req = Net::HTTP::Post.new(uri)
req["Content-Type"] = "text/xml; charset=utf-8"
req["SOAPAction"] = "\"http://TrackService.TrackRoad.com/GetRouteList\""
req.body = soap
res = http.request(req)
puts res.body
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
url := "https://trackservice.trackroad.com/TrackService.asmx"
soap := []byte(`
YOUR_TRACKSERVICEKEY
2026-01-01T00:00:00Z
2026-01-31T23:59:59Z
dispatcher@company.com
January
`)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(soap))
req.Header.Set("Content-Type", "text/xml; charset=utf-8")
req.Header.Set("SOAPAction", "\"http://TrackService.TrackRoad.com/GetRouteList\"")
resp, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
b, _ := io.ReadAll(resp.Body)
fmt.Println(string(b))
}
import java.net.URI
import java.net.http.HttpClient
import java.net.http.HttpRequest
import java.net.http.HttpResponse
fun main() {
val url = "https://trackservice.trackroad.com/TrackService.asmx"
val soap = """
YOUR_TRACKSERVICEKEY
2026-01-01T00:00:00Z
2026-01-31T23:59:59Z
dispatcher@company.com
January
""".trimIndent()
val client = HttpClient.newHttpClient()
val req = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "text/xml; charset=utf-8")
.header("SOAPAction", "\"http://TrackService.TrackRoad.com/GetRouteList\"")
.POST(HttpRequest.BodyPublishers.ofString(soap))
.build()
val resp = client.send(req, HttpResponse.BodyHandlers.ofString())
println(resp.body())
}
#include <stdio.h>
#include <curl/curl.h>
int main(void) {
CURL *curl = curl_easy_init();
if(!curl) return 1;
const char *url = "https://trackservice.trackroad.com/TrackService.asmx";
const char *soap =
""
""
""
""
"YOUR_TRACKSERVICEKEY"
""
""
""
""
"2026-01-01T00:00:00Z"
"2026-01-31T23:59:59Z"
"dispatcher@company.com"
"January"
""
""
"";
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Content-Type: text/xml; charset=utf-8");
headers = curl_slist_append(headers, "SOAPAction: \"http://TrackService.TrackRoad.com/GetRouteList\"");
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, soap);
CURLcode res = curl_easy_perform(curl);
curl_slist_free_all(headers);
curl_easy_cleanup(curl);
return (res == CURLE_OK) ? 0 : 1;
}
#include <curl/curl.h>
#include <string>
int main() {
CURL* curl = curl_easy_init();
if(!curl) return 1;
std::string url = "https://trackservice.trackroad.com/TrackService.asmx";
std::string soap =
""
""
""
""
"YOUR_TRACKSERVICEKEY"
""
""
""
""
"2026-01-01T00:00:00Z"
"2026-01-31T23:59:59Z"
"dispatcher@company.com"
"January"
""
""
"";
struct curl_slist* headers = NULL;
headers = curl_slist_append(headers, "Content-Type: text/xml; charset=utf-8");
headers = curl_slist_append(headers, "SOAPAction: \"http://TrackService.TrackRoad.com/GetRouteList\"");
curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, soap.c_str());
CURLcode res = curl_easy_perform(curl);
curl_slist_free_all(headers);
curl_easy_cleanup(curl);
return (res == CURLE_OK) ? 0 : 1;
}
#import <Foundation/Foundation.h>
int main() {
@autoreleasepool {
NSURL *url = [NSURL URLWithString:@"https://trackservice.trackroad.com/TrackService.asmx"];
NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:url];
[req setHTTPMethod:@"POST"];
[req setValue:@"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[req setValue:@"\"http://TrackService.TrackRoad.com/GetRouteList\"" forHTTPHeaderField:@"SOAPAction"];
NSString *soap = @""
""
""
""
"YOUR_TRACKSERVICEKEY"
""
""
""
""
"2026-01-01T00:00:00Z"
"2026-01-31T23:59:59Z"
"dispatcher@company.com"
"January"
""
""
"";
[req setHTTPBody:[soap dataUsingEncoding:NSUTF8StringEncoding]];
NSURLSessionDataTask *task =
[[NSURLSession sharedSession] dataTaskWithRequest:req
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) { NSLog(@"%@", error); return; }
NSString *text = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@", text);
}];
[task resume];
[[NSRunLoop currentRunLoop] run];
}
return 0;
}
import Foundation
let url = URL(string: "https://trackservice.trackroad.com/TrackService.asmx")!
var req = URLRequest(url: url)
req.httpMethod = "POST"
req.setValue("text/xml; charset=utf-8", forHTTPHeaderField: "Content-Type")
req.setValue("\"http://TrackService.TrackRoad.com/GetRouteList\"", forHTTPHeaderField: "SOAPAction")
let soap = """
YOUR_TRACKSERVICEKEY
2026-01-01T00:00:00Z
2026-01-31T23:59:59Z
dispatcher@company.com
January
"""
req.httpBody = soap.data(using: .utf8)
let task = URLSession.shared.dataTask(with: req) { data, _, error in
if let error = error { print(error); return }
print(String(data: data ?? Data(), encoding: .utf8) ?? "")
}
task.resume()
RunLoop.main.run()