solarOS Organization API

Organization API

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.

/api/v1/work-orders/{id}/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

work_orders:completeIdempotency-Key required

Parameters

NameInTypeDescription
idrequiredpathstringWork Order identifier returned by the Organization API.

Request body

objectrequired
FieldTypeDescription
completedDatestring | nullOptional unless marked required.
notesstring | nullOptional unless marked required.
completeworkorderRequest
{
  "completedDate": "2026-08-12",
  "notes": "Install completed and photos uploaded."
}

Responses

200

Work Order completion action envelope

#/components/schemas/OrgApiActionEnvelope

401

Missing or invalid organization API key

#/components/schemas/OrgApiError

402

Organization billing access or an endpoint-specific business quota denied the request

#/components/schemas/OrgApiError

403

Missing required scope: work_orders:complete

#/components/schemas/OrgApiError

429

Rate limit exceeded

#/components/schemas/OrgApiError

Errors

401 Missing or invalid organization API key402 Organization billing access or an endpoint-specific business quota denied the request403 Missing required scope: work_orders:complete429 Rate limit exceeded

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."}'