Complete a Work Order
Explicitly completes a project-contained Work Order through app domain services. Requires Idempotency-Key. Side effects include entitlement fulfillment sync, Project Item sync, audit, domain event, usage, and action response. Required scope: work_orders:complete.
Explicitly completes a project-contained Work Order through app domain services. Requires Idempotency-Key. Side effects include entitlement fulfillment sync, Project Item sync, audit, domain event, usage, and action response. Required scope: work_orders:complete.
Complete a Work Order. Use an organization API key with work_orders:complete. Check the response envelope and meta.requestId before triggering dependent workflow steps.
Required scopes
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| idrequired | path | string | Work Order identifier returned by the Organization API. |
Request body
| Field | Type | Description |
|---|---|---|
| completedDate | string | null | Optional unless marked required. |
| notes | string | null | Optional unless marked required. |
{
"completedDate": "2026-08-12",
"notes": "Install completed and photos uploaded."
}Responses
Work Order completion 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: work_orders:complete
#/components/schemas/OrgApiError
Rate limit exceeded
#/components/schemas/OrgApiError
Errors
Static examples
curl -X POST "$SOLAROS_BASE_URL/api/v1/work-orders/$SOLAROS_WORK_ORDER/complete" \
-H "Authorization: Bearer $SOLAROS_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SOLAROS_IDEMPOTENCY_KEY" \
--data '{"completedDate":"2026-08-12","notes":"Install completed and photos uploaded."}'