FieldRoutes API docs logoFieldRoutes API

Scheduling

route

5 endpoints. Start at search to collect IDs, then resolve them through get.

Write · 2

Read operations

get/route/getTry it

get route

Get Bulk data for route. Accepts an array of routeIDs. Returns a max of 1000 records. This function has additional non-standard filters Latitude and Longitude for distance calculation. If these are not specified the office location will be used.

Parameters

routeIDsarray

No description in the upstream reference.

latitudedouble

Latitude for distance calculcations. If not specified, the office longitude will be used

longitudedouble

Longitude for distance calculcations. If not specified, the office longitude will be used

maxDistanceinteger

Maximum number of miles from the route average to return.

Returns

routeIDinteger

Unique Identifier

titleinteger

No description in the upstream reference.

templateIDinteger

No description in the upstream reference.

dateAddedstring

No description in the upstream reference.

addedByinteger

ID of employee who added this route

officeIDinteger

No description in the upstream reference.

groupTitleinteger

No description in the upstream reference.

datestring

date of this route

Request

/route/get
curl -X POST 'https://{subdomain}.pestroutes.com/api/route/get' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'Accept: application/json' \
  --data-urlencode 'routeIDs=value' \
  --data-urlencode 'latitude=value' \
  --data-urlencode 'authenticationKey=<your-key>' \
  --data-urlencode 'authenticationToken=<your-token>'

Response

success:true
]
count:2
}
by id/route/{id}Try it

Fetch by id route

Get route data for single ID -- please provide a specific record ID in the URL structure. This function has additional non-standard filters Latitude and Longitude for distance calculation. If these are not specified the office location will be used.

Parameters

latitudedouble

Latitude for distance calculcations. If not specified, the office longitude will be used

longitudedouble

Longitude for distance calculcations. If not specified, the office longitude will be used

maxDistanceinteger

Maximum number of miles from the route average to return.

Returns

routeIDinteger

Unique Identifier

titleinteger

No description in the upstream reference.

templateIDinteger

No description in the upstream reference.

dateAddedstring

No description in the upstream reference.

addedByinteger

ID of employee who added this route

officeIDinteger

No description in the upstream reference.

groupTitleinteger

No description in the upstream reference.

datestring

date of this route

Request

/route/{id}
curl -X POST 'https://{subdomain}.pestroutes.com/api/route/{id}' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'Accept: application/json' \
  --data-urlencode 'latitude=value' \
  --data-urlencode 'longitude=value' \
  --data-urlencode 'authenticationKey=<your-key>' \
  --data-urlencode 'authenticationToken=<your-token>'

Response

success:true
routeID:7511
title:0
templateID:7752
dateAdded:"2026-08-10 00:00:00"
addedBy:1
officeID:2602
groupTitle:0
date:"2026-05-06 00:00:00"
dayNotes:0
dayAlert:2
dayID:5450
additionalTechs:"sample-additionalTechs"
assignedTech:1
apiCanSchedule:0
scheduleTeams:"sample-scheduleTeams"
scheduleTypes:"sample-scheduleTypes"
averageLatitude:150.5
averageLongitude:71.5
averageDistance:103.5
dateUpdated:"2026-04-07 00:00:00"
distanceScore:0
}
}

Write operations

create/route/createTry it

create route

create a group

Parameters

datestring

DayID to create for

templateIDinteger

templateID from office software

assignedTechinteger

employeeID

autoCreateGroupinteger

set as 1 if the group should be auto-created with the template title, set as 0 to reject on missing group

Returns

Returns a success acknowledgement.

Request

/route/create
curl -X POST 'https://{subdomain}.pestroutes.com/api/route/create' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'Accept: application/json' \
  --data-urlencode 'date=value' \
  --data-urlencode 'templateID=1' \
  --data-urlencode 'authenticationKey=<your-key>' \
  --data-urlencode 'authenticationToken=<your-token>'

Response

success:true
routeID:4821
}
update/route/updateTry it

update route

Update route details

Parameters

datestring

DayID to create for

assignedTechinteger

employeeID

autoCreateGroupinteger

set as 1 if the group should be auto-created with the template title, set as 0 to reject on missing group routeID - integer - required Primary key to the route table.

Returns

Returns a success acknowledgement.

Request

/route/update
curl -X POST 'https://{subdomain}.pestroutes.com/api/route/update' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'Accept: application/json' \
  --data-urlencode 'date=value' \
  --data-urlencode 'assignedTech=1' \
  --data-urlencode 'authenticationKey=<your-key>' \
  --data-urlencode 'authenticationToken=<your-token>'

Response

success:true
routeID:4821
}