Mark a Service Appointment en route
Transitions a dispatched appointment to EN_ROUTE. The body is optional. Accepted body fields are ignored by this action but still participate in idempotency matching; prefer an empty object.
Transitions a dispatched appointment to EN_ROUTE. The body is optional. Accepted body fields are ignored by this action but still participate in idempotency matching; prefer an empty object.
Mark a Service Appointment en route. Use an organization API key with service_appointments:start. Check the response envelope and meta.requestId before triggering dependent workflow steps.
Required scopes
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| idrequired | path | string | Service Appointment identifier returned by the Organization API. |
Request body
| Field | Type | Description |
|---|---|---|
| completedAt | string | null | Optional unless marked required. |
| notes | string | null | Optional unless marked required. |
| reason | CUSTOMER_REQUEST | TECH_UNAVAILABLE | WEATHER | RESCHEDULED | NO_SHOW | OTHER | Optional unless marked required. |
{}Responses
En-route action envelope
#/components/schemas/OrgApiActionEnvelope
Missing or invalid organization API key
#/components/schemas/OrgApiError
Organization billing access or an endpoint-specific business quota denied the request
#/components/schemas/OrgApiError
Missing required scope: service_appointments:start
#/components/schemas/OrgApiError
Rate limit exceeded
#/components/schemas/OrgApiError
Errors
Static examples
curl -X POST "$SOLAROS_BASE_URL/api/v1/service-appointments/$SOLAROS_SERVICE_APPOINTMENT/en-route" \
-H "Authorization: Bearer $SOLAROS_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SOLAROS_IDEMPOTENCY_KEY" \
--data '{}'