solarOS Organization API

Organization API

Get one project-contained Work Order

Returns Work Order details including workOrderNumber, customer { id, displayName } (the Project's customer), scopeItems, url (the Work Order page in solarOS), and schedulingContext, the nullable dispatcher-facing access, timing, and coordination instructions shared across appointments. Text formatting is preserved.

/api/v1/work-orders/{id}

Returns Work Order details including workOrderNumber, customer { id, displayName } (the Project's customer), scopeItems, url (the Work Order page in solarOS), and schedulingContext, the nullable dispatcher-facing access, timing, and coordination instructions shared across appointments. Text formatting is preserved.

Get one project-contained Work Order. Use an organization API key with work_orders:read. Check the response envelope and meta.requestId before triggering dependent workflow steps.

Required scopes

work_orders:read

Parameters

NameInTypeDescription
idrequiredpathstringWork Order identifier returned by the Organization API.

Request body

This endpoint does not accept a JSON request body.

Responses

200

Work Order envelope

#/components/schemas/OrgApiResourceEnvelope

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:read

#/components/schemas/OrgApiError

404

Not found

#/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:read404 Not found429 Rate limit exceeded

Static examples

curl -X GET "$SOLAROS_BASE_URL/api/v1/work-orders/$SOLAROS_WORK_ORDER" \
  -H "Authorization: Bearer $SOLAROS_API_KEY"