Velocity Plus API Endpoints

Tag: Carriers
URI: api/broker/v1/{brokerDivisionId}/carriers/upload
Method: POST
This endpoint is used to upload the list of carriers that you will be assigning loads to.
You will also provide a list of one or more users that should be invited to be admin users for that Carrier.
You will only need to on-board a carrier once.
Calling this endpoint for the carrier a second time will update the data for that Carrier.

Tag: Loads
URI: api/broker/v1/{brokerDivisionId}/loads
Method: PUT
When sending a load from a TMS to Velocity+, it is created on the Velocity+ platform.
This endpoint is used to create or update a load on the Velocity+ platform.
Once a load is created, the load can be offered to one or more carriers or Assigned to a single carrier using the Offer and Assign endpoints listed in this document.

Tag: Loads
URI: api/broker/v1/{brokerDivisionId}/loads/{brokerLoadNumber}/assign
Method: POST
This endpoint is used to assign an existing load to a Carrier.
The Carrier that the load is to be assigned to must also exist in our system.

Tag: Loads
URI: api/broker/v1/{brokerDivisionId}/loads/{brokerLoadNumber}/rate-confirmation
Method: PUT
This endpoint is used to upload a rate confirmation sheet to a load that has been assigned to a Carrier.
As part of the upload, the Rate and Rate types can be adjusted.
Additionally, the endpoint allows indicating an amount that has been paid in Advance.

Tag: Breadcrumbs
URI: api/broker/v1/{brokerDivisionId}/breadcrumbs
Method: GET
This endpoint is used to retrieve breadcrumb data for all loads matching the search criteria.
Search criteria is set via the query string parameters.
For more details about the search filters, see the Transflo API online documentation.

URI: …/load/breadcrumbs
Method: POST
This is the main controller method for getting all Breadcrumbs associated with a load, by load identifier.
Request Parameters
Parameter |
Value |
Description |
Parameter Type |
Data Type |
---|---|---|---|---|
Authorization |
Required |
Access token |
Header |
String |
Request |
Required |
Request |
Body |
Breadcrumb By Load Request Model { LoadId (integer, optional), LoadNumber (string, optional), BrokerLoadNumber (string, optional), BolNumber (string, optional), DriverEmail (string, optional), FromDate (string, optional), ToDate (string, optional) } |
Example:
{
"LoadId": 0,
"LoadNumber": "string",
"BrokerLoadNumber": "string",
"BolNumber": "string",
"DriverEmail": "string",
"FromDate": "2018-01-03T15:39:01.046Z",
"ToDate": "2018-01-03T15:39:01.046Z"
}
Response
Content Type: application/json
[
{
"DeviceId": "string",
"DeviceType": "string",
"Email": "string",
"Location": {
"Latitude": 0,
"Longitude": 0,
"MapUrl": "string"
},
"Timestamp": "2018-01-03T15:39:01.031Z",
"Speed": 0
}
]
Other Response Messages:
HTTP Status Code | Reason |
---|---|
204 |
NoContent – No breadcrumbs found. |
401 |
Unauthorized – Authorization Header is missing/invalid. |
500 |
InternalServerError – An unexpected error has occurred. |
URI: … /driver/breadcrumbs
Method: POST - This is the main controller method for getting all Breadcrumbs associated with a driver for a given datetime range.
Request Parameters
Parameter | Value | Description |
Parameter Type |
---|---|---|---|
Authorization |
Required |
Access token (provided by Transflo) |
Header |
Request |
Required |
Request |
Body |
Data Type |
---|
String |
Breadcrumb ByDriverRequestModel { DriverEmail (string, optional), FromDate (string, optional), ToDate (string, optional) } |
Example:
{
"DriverEmail": "string",
"FromDate": "2018-01-03T15:39:01.060Z",
"ToDate": "2018-01-03T15:39:01.060Z"
}
Response
Content Type: application/json
[
{
"DeviceId": "string",
"DeviceType": "string",
"Email": "string",
"Location": {
"Latitude": 0,
"Longitude": 0,
"MapUrl": "string"
},
"Timestamp": "2018-01-03T15:39:01.053Z",
"Speed": 0
}
]
Other Response Messages:
HTTP Status Code |
Reason |
---|---|
204 |
NoContent – No breadcrumbs found. |
401 |
Unauthorized – Authorization Header is missing/invalid. |
500 |
InternalServerError – An unexpected error has occurred. |
URI:… /breadcrumbs
Method: POST
This is the main controller method for getting all Breadcrumbs for a given datetime range.
Request Parameters
Parameter | Value | Description |
Parameter Type |
---|---|---|---|
Authorization |
Required |
Access token |
Header |
Request |
Required |
Request |
Body |
Data Type |
---|
String |
BreadcrumbRequestModel { FromDate (string, optional), ToDate (string, optional) } |
Example:
{
"FromDate": "2018-01-04T13:43:38.559Z",
"ToDate": "2018-01-04T13:43:38.559Z"
}
Response
Content Type: application/json
[
{
"DeviceId": "string",
"DeviceType": "string",
"Email": "string",
"Location": {
"Latitude": 0,
"Longitude": 0,
"MapUrl": "string"
},
"Timestamp": "2018-01-04T13:43:38.548Z",
"Speed": 0
}
]
Other Response Messages:
HTTP Status Code |
Reason |
---|---|
204 |
NoContent – No breadcrumbs found. |
401 |
Unauthorized – Authorization Header is missing/invalid. |
500 |
InternalServerError – An unexpected error has occurred. |

Tag: Events
URI: api/broker/v1/{brokerDivisionId}/load-events
Method: GET
This endpoint is used to retrieve all load events based on search criteria set in the query string parameters. For more details about the search filters, see the Transflo API online documentation.

URI… /locations
Method: POST - This is the main controller method for getting the current location for a list of devices.
Request Parameters
Parameter | Value | Description |
Parameter Type |
---|---|---|---|
Authorization |
Required |
Access token (provided by Transflo) |
Header |
Request |
Required |
Request |
Body |
Data Type |
---|
String |
Array[string] |
Response
Content Type: application/json
[
{
"UnitId": "string",
"Location": {
"Latitude": 0,
"Longitude": 0,
"MapUrl": "string"
},
"Error": "string"
}
]
Other Response Messages:
HTTP Status Code |
Reason |
---|---|
204 |
NoContent – No breadcrumbs found. |
401 |
Unauthorized – Authorization Header is missing/invalid. |
500 |
InternalServerError – An unexpected error has occurred. |

Tag: Offers
URI: api/broker/v1/{brokerDivisionId}/offers
Method:GET
This endpoint is used to retrieve all offer responses based on search criteria set in the query string parameters. For more details about the search filters, see the Transflo API online documentation.

Tag: Offers
URI: api/broker/v1/{brokerDivisionId}/offers
Method: PUT
This endpoint is used to offer an existing load to one or more carriers. The load must already exist on the Transflo Velocity+ Command Center platform and all carriers that are being offered the load must have been uploaded previously.

Tag: Offers
URI: api/broker/v1/{brokerDivisionId}/offers
Method: DELETE
This endpoint is used to remove (or rescind) an offer that was made to a carrier.
The Load will be marked as Not Available for that carrier.

Some TMS providers will take breadcrumbs and map them in their TMS.
Others prefer to display our mapping and load information by clicking a link.
Velocity+ calls this the “Share Link.”
Clicking on the link opens up a Velocity+ web page that shows load information, including the mapped load route, aka Track & Trace breadcrumbs.
To ensure that this link and the load information is not accessible to the world at large, an Authorization Token is sent with the request.
Method: GET
URL: {protocol}://{baseAddress}/api/broker/v1/{brokerDivisionId}/loads/{brokerLoadNumber}/tracking
protocol = "http" for our test environments "https" for production
baseAddress = "svc.transflomobile.com/integration" in production. Not currently deployed to a test environment.
brokerDivisionId = The broker's division Id. This is provided by Transflo.
brokerLoadNumber = the brokers identifier for the load.
Required Headers:
Authorization: Basic {token}
token = The broker's Authorization Token. This is the same one used by the broker to communicate with the other Integration.Webservice API endpoints.