Trips
Get trip stop
Retrieve a single trip stop by trip and stop ID, including the location, appointment window, arrival and departure timestamps, and stop-level notes.
GET
/
api
/
p
/
v
{version}
/
trips
/
{tripId}
/
stops
/
{stopId}
Get trip stop
curl --request GET \
--url https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId} \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}")
.header("Authorization", "Bearer <token>")
.asString();{
"AppointmentRequested": true,
"AppointmentConfirmed": true,
"ScheduleType": "<string>",
"Id": "<string>",
"StopType": "<string>",
"References": [
{
"Name": "<string>",
"Value": "<string>",
"Id": "<string>",
"ReferenceId": "<string>",
"Type": "<string>",
"Access": "<string>",
"Origin": "<string>"
}
],
"$type": "<string>",
"AppointmentDate": "2023-11-07T05:31:56Z",
"LoadingType": "<string>",
"Address": {
"Street": "<string>",
"City": "<string>",
"State": "<string>",
"ZipCode": "<string>",
"Country": "<string>"
},
"Coordinates": {
"Latitude": "<string>",
"Longitude": "<string>"
},
"Status": "<string>",
"ArrivedAt": "2023-11-07T05:31:56Z",
"DepartedAt": "2023-11-07T05:31:56Z",
"CompanyId": "<string>",
"CompanyNumber": "<string>",
"CompanyName": "<string>",
"Eta": {
"Planned": "2023-11-07T05:31:56Z",
"Live": "2023-11-07T05:31:56Z",
"Manual": "2023-11-07T05:31:56Z"
}
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}This endpoint retrieves a single stop record associated with a given trip, including scheduling information, arrival/departure timestamps, location details, and references.
Replace:
Refer to the Rate Limits documentation for more information.
Endpoint
GET /api/p/v{version}/trips/{tripId}/stops/{stopId}
Request Parameters
The following parameters are required in the URL path:| Parameter | Type | Required | Description |
|---|---|---|---|
| version | String | Yes | The API version to use. |
| tripId | String | Yes | Unique identifier of the trip. |
| stopId | String | Yes | Unique identifier of the stop within the trip. |
Example CURL request
curl --location 'https://integrations.alvys.com/api/p/v1/trips/{tripId}/stops/{stopId}' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
{version}with the API version (for example1){tripId}with the actual trip ID{stopId}with the stop IDYOUR_ACCESS_TOKENwith your Bearer token
curl --location 'https://integrations.alvys.com/api/p/v1/trips/000c3a9bf0000000bf000d000e000a0b/stops/000a3b9bf0000000bf000d000e000a0c' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ...'
Response Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | Yes | Unique identifier of the stop. |
| Address.City | string | No | City of the stop location. |
| Address.State | string | No | State of the stop location. |
| Address.Street | string | No | Street address of the stop location. |
| Address.ZipCode | string | No | ZIP code of the stop location. |
| AppointmentConfirmed | boolean | No | Indicates whether the appointment has been confirmed. |
| AppointmentDate | string (datetime) | No | Appointment date/time for the stop. Populated when scheduleType = APPT. |
| AppointmentRequested | boolean | No | Indicates whether an appointment has been requested. |
| ArrivedAt | string (datetime) | No | Timestamp when the stop was arrived at (UTC). |
| CompanyId | string | No | Unique identifier of the company associated with the stop. |
| CompanyName | string | No | Name of the company associated with the stop. |
| CompanyNumber | string | No | Registration or identification number of the company. |
| Coordinates.Latitude | string | No | Latitude of the stop location. |
| Coordinates.Longitude | string | No | Longitude of the stop location. |
| DepartedAt | string (datetime) | No | Timestamp when the stop was departed from (UTC). |
| Eta | object | No | Estimated time of arrival at this stop. null when no planned, live, or manual estimate exists. Planned and Live require HOS-aware ETAs (Growth or Scale package, or the Samsara Premium add-on); Manual is available on every plan. |
| Eta.Planned | string (datetime) | No | ETA from route planning, set when the trip is planned or re-planned. |
| Eta.Live | string (datetime) | No | ETA recalculated from the latest vehicle location while the trip is in transit. |
| Eta.Manual | string (datetime) | No | ETA entered by a user or integration, or defaulted from the stop date or appointment. |
| LoadingType | string | No | Loading type at the stop (for example Live, Drop, Hook, Drop&Hook). |
| References[] | array | No | List of references associated with the stop. |
| References[].Access | string | No | Access level of the reference (Internal, Public). |
| References[].Id | string | No | Unique identifier of the reference. |
| References[].Name | string | No | Name of the reference field. |
| References[].Origin | string | No | Origin of the reference (for example Manual, Integration). |
| References[].ReferenceId | string | No | External reference identifier. |
| References[].Type | string | No | Reference type (for example Text, Date). |
| References[].Value | string | No | Value of the reference. |
| ScheduleType | string | No | Schedule type of the stop (APPT or FCFS). |
| Status | string | No | Current operational status of the stop. |
| StopType | string | No | Type of stop (for example Pickup, Delivery, Waypoint). |
| StopWindow.Begin | string (datetime) | No | Start of the delivery window when scheduleType = FCFS. |
| StopWindow.End | string (datetime) | No | End of the delivery window when scheduleType = FCFS. |
| $type | string | No | Polymorphic type discriminator for the stop representation (appointment, delivery_window, waypoint). |
Example Response
{
"AppointmentRequested": true,
"AppointmentConfirmed": true,
"AppointmentDate": "2026-03-16T11:05:40.106Z",
"ScheduleType": "APPT",
"LoadingType": "Live",
"Id": "string",
"Address": {
"Street": "123 Industrial Rd",
"City": "Dallas",
"State": "TX",
"ZipCode": "75201"
},
"Coordinates": {
"Latitude": "32.7767",
"Longitude": "-96.7970"
},
"Status": "Open",
"StopType": "Pickup",
"ArrivedAt": "2026-03-16T11:05:40.106Z",
"DepartedAt": "2026-03-16T11:45:40.106Z",
"References": [
{
"Id": "string",
"ReferenceId": "PO123456",
"Name": "PO Number",
"Value": "PO123456",
"Type": "Text",
"Access": "Public",
"Origin": "Manual"
}
],
"CompanyId": "string",
"CompanyNumber": "GT530",
"CompanyName": "Alvys Distribution",
"Eta": {
"Planned": "2026-03-16T10:40:00.000Z",
"Live": "2026-03-16T10:52:00.000Z",
"Manual": null
},
"$type": "appointment"
}
Status Codes
| Status Code | Description |
|---|---|
| 200 OK | Stop successfully retrieved. |
| 404 Not Found | Trip or stop does not exist or is not visible. |
Versioning
Theversion parameter in the URL path specifies which version of the API you are using. Including the version ensures that your integration interacts with the correct API contract and remains compatible as the API evolves.
For more details, see the Versioning documentation.
Rate Limits
All endpoints are subject to API rate limits to ensure service stability and protect against traffic spikes.Refer to the Rate Limits documentation for more information.
Authorizations
OAuth 2.0 client-credentials access token. Obtain one from https://auth.alvys.com/oauth/token (grant_type=client_credentials, audience=https://api.alvys.com/public/), then paste it here. The playground sends it as Authorization: Bearer <token>.
Path Parameters
API version (e.g., 1.0)
Example:
"1.0"
Response
OK
- Option 1
- Option 2
- Option 3
Show child attributes
Show child attributes
Type discriminator for polymorphic serialization
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Estimated time of arrival at this stop. Null when no estimate exists.
Show child attributes
Show child attributes
⌘I
Get trip stop
curl --request GET \
--url https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId} \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://integrations.alvys.com/api/p/v{version}/trips/{tripId}/stops/{stopId}")
.header("Authorization", "Bearer <token>")
.asString();{
"AppointmentRequested": true,
"AppointmentConfirmed": true,
"ScheduleType": "<string>",
"Id": "<string>",
"StopType": "<string>",
"References": [
{
"Name": "<string>",
"Value": "<string>",
"Id": "<string>",
"ReferenceId": "<string>",
"Type": "<string>",
"Access": "<string>",
"Origin": "<string>"
}
],
"$type": "<string>",
"AppointmentDate": "2023-11-07T05:31:56Z",
"LoadingType": "<string>",
"Address": {
"Street": "<string>",
"City": "<string>",
"State": "<string>",
"ZipCode": "<string>",
"Country": "<string>"
},
"Coordinates": {
"Latitude": "<string>",
"Longitude": "<string>"
},
"Status": "<string>",
"ArrivedAt": "2023-11-07T05:31:56Z",
"DepartedAt": "2023-11-07T05:31:56Z",
"CompanyId": "<string>",
"CompanyNumber": "<string>",
"CompanyName": "<string>",
"Eta": {
"Planned": "2023-11-07T05:31:56Z",
"Live": "2023-11-07T05:31:56Z",
"Manual": "2023-11-07T05:31:56Z"
}
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}{
"Type": "<string>",
"Title": "<string>",
"Status": 123,
"Detail": "<string>",
"Instance": "<string>"
}