API/Web Console features must be licensed/activated.
The TRBOnet API/Web Console version must match the installed TRBOnet build. Release packages are available Downloads section on the website or this article.
If you run a different build, contact support@trbonet.com with your exact build number.
The TRBOnet API/Web Console version must match the installed TRBOnet build. Release packages are available Downloads section on the website or this article.
If you run a different build, contact support@trbonet.com with your exact build number.
Data transfer based on schedule
Export Data task
Use the built-in Export Data task (see the User Manual → Export Data). Configure a schedule to generate files for downstream ingestion.
TRBOnet API
Load GPS history (C#)
Client client = new Client();
List<Device> m_devices = new List<Device>();
int requestId = 0;
void GetGpsHistoryForWeek()
{
var ids = m_devices.ConvertAll(d => d.ID);
client.HistoryDataReceived += client_HistoryDataReceived;
requestId = client.GetHistory(
ids,
DateTime.Now.Subtract(TimeSpan.FromDays(7)),
DateTime.Now,
false, false,
new Objects.Reports.Filters.GPSCorrectParams(),
false);
}
void client_HistoryDataReceived(object sender, Objects.Event_args.HistoryDataReceivedEventArgs e)
{
if (e.RequestID != requestId) return;
foreach (var kv in e.HistoryList)
{
int deviceId = kv.Key;
List<GPSInfo> gps = kv.Value;
// Process gps data...
}
}
List<Device> m_devices = new List<Device>();
int requestId = 0;
void GetGpsHistoryForWeek()
{
var ids = m_devices.ConvertAll(d => d.ID);
client.HistoryDataReceived += client_HistoryDataReceived;
requestId = client.GetHistory(
ids,
DateTime.Now.Subtract(TimeSpan.FromDays(7)),
DateTime.Now,
false, false,
new Objects.Reports.Filters.GPSCorrectParams(),
false);
}
void client_HistoryDataReceived(object sender, Objects.Event_args.HistoryDataReceivedEventArgs e)
{
if (e.RequestID != requestId) return;
foreach (var kv in e.HistoryList)
{
int deviceId = kv.Key;
List<GPSInfo> gps = kv.Value;
// Process gps data...
}
}
TRBOnet Web Console
Full list of examples available on the Demo Web Console installation page.
GetLocations (simplified SOAP bodies; replace placeholders)
SOAP 1.1
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<TrbonetHeader xmlns="http://trbonet.com/">
<UserName>USER</UserName>
<Password>PASS</Password>
</TrbonetHeader>
</soap:Header>
<soap:Body>
<GetLocations xmlns="http://trbonet.com/">
<start>2025-10-22T00:00:00Z</start>
<end>2025-10-29T00:00:00Z</end>
<radioId>12345</radioId>
</GetLocations>
</soap:Body>
</soap:Envelope>
<soap:Header>
<TrbonetHeader xmlns="http://trbonet.com/">
<UserName>USER</UserName>
<Password>PASS</Password>
</TrbonetHeader>
</soap:Header>
<soap:Body>
<GetLocations xmlns="http://trbonet.com/">
<start>2025-10-22T00:00:00Z</start>
<end>2025-10-29T00:00:00Z</end>
<radioId>12345</radioId>
</GetLocations>
</soap:Body>
</soap:Envelope>
SOAP 1.2
<soap12:Envelope xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Header>
<TrbonetHeader xmlns="http://trbonet.com/">
<UserName>USER</UserName>
<Password>PASS</Password>
</TrbonetHeader>
</soap12:Header>
<soap12:Body>
<GetLocations xmlns="http://trbonet.com/">
<start>2025-10-22T00:00:00Z</start>
<end>2025-10-29T00:00:00Z</end>
<radioId>12345</radioId>
</GetLocations>
</soap12:Body>
</soap12:Envelope>
<soap12:Header>
<TrbonetHeader xmlns="http://trbonet.com/">
<UserName>USER</UserName>
<Password>PASS</Password>
</TrbonetHeader>
</soap12:Header>
<soap12:Body>
<GetLocations xmlns="http://trbonet.com/">
<start>2025-10-22T00:00:00Z</start>
<end>2025-10-29T00:00:00Z</end>
<radioId>12345</radioId>
</GetLocations>
</soap12:Body>
</soap12:Envelope>
Responses return a list of location records (e.g., GpsDataEx items with IDs and radio IDs, plus coordinates in the full schema).
Data transfer in Real-time
TRBOnet API
Subscribe to live GPS updates (C#)
client.DeviceLocationChanged += UpdateDeviceLocation;
void UpdateDeviceLocation(object sender, DeviceLocationChangedEventArgs e)
{
foreach (var i in e.GPSData)
{
Device device = m_devices.Find(d => d.ID == i.DeviceID);
if (device != null)
device.GPSInfo.Update(i);
}
}
void UpdateDeviceLocation(object sender, DeviceLocationChangedEventArgs e)
{
foreach (var i in e.GPSData)
{
Device device = m_devices.Find(d => d.ID == i.DeviceID);
if (device != null)
device.GPSInfo.Update(i);
}
}