API documentation | API docs for agents | OpenAPI 3.1
POST /api/v1/loads/{loadId}/stops/{stopId}/event
ark.record_load_stop_event
Records or clears an actual arrival or departure time for a visible dispatched load stop and runs configured milestone side effects.
- Availability
- Expanded preview
- Scopes
loads:write- ARK permissions
one of: canEditLoadone of: canAssignLoads- Team visibility
- Required and enforced
- Idempotency-Key
- Required for this write
- Approval
- No MCP approval on REST API-token calls
- Rate limit
- API credential and organization budgets
Parameters
loadIdpathstringrequired- format: uuid
stopIdpathstringrequired- format: uuid
Idempotency-Keyheaderstringrequired- Required for external write operations. Reuse the same key only for exact retries of the same request body.
- min length: 1; max length: 200
Request body
eventTypestringrequiredone of: arrival, departure
actionstringone of: set, clear; default: "set"
occurredAtstringRequired when action is set. Omit when action is clear.
format: date-time
Example request
Shell
curl -X POST 'https://arktms.com/api/v1/loads/<loadId>/stops/<stopId>/event' \
-H "Authorization: Bearer $ARK_API_TOKEN" \
-H "Idempotency-Key: <unique-key>" \
-H "Content-Type: application/json" \
-d '{
"eventType": "arrival"
}'Success response
Recorded load stop event
objectstringrequiredokbooleanrequiredapi_versionstringrequiredrequest_idstringrequireddataobjectrequireddata.loadIdstringrequiredformat: uuid
data.stopobjectrequireddata.eventTypestringrequiredone of: arrival, departure
data.actionstringrequiredone of: set, clear
data.occurredAtstring | nullrequiredformat: date-time
data.stopIndexintegerrequireddata.notificationResultobject | nulldata.ediResultobject | nulldata.project44Resultobject | nulldata.sideEffectErrorstring | nullrequiredErrors
HTTP 400- Invalid request
HTTP 401- Authentication required
HTTP 403- Permission, scope, team, or entitlement denied
HTTP 404- Resource not found
HTTP 409- Idempotency conflict or in-progress retry