DynVoltDYNVOLT · developers

Defects

Defects endpoints of the DynVolt Open API.

O&M defect log: list, create, and update. Writes support idempotency keys.

GET /v1/sites/{site_id}/defects

O&M defects (?location_id&logger_id&status&severity&offset&limit).

Scope: om:read · Module: om

Query parameterTypeRequiredDescription
statusstringnoFilter by defect status.
severitystringnoFilter by severity.
location_idintegernoFilter by location.
logger_idintegernoRestrict to a single logger (plant). Omit for all plants.
offsetintegernoRows to skip (pagination).
limitintegernoMaximum rows to return (capped at 200).
curl "https://api.owner.dynvolt.com/v1/sites/pv-ljubas/defects" \
  -H "Authorization: Bearer $DYNVOLT_API_KEY"

POST /v1/sites/{site_id}/defects

Log a defect.

Scope: om:write · Module: om · Write (rate-limited at 30/min)

  • Supports the Idempotency-Key header for safe retries (24-hour replay). Returns 409 conflict_safe_mode while the site is in commissioning safe mode.
curl -X POST "https://api.owner.dynvolt.com/v1/sites/pv-ljubas/defects" \
  -H "Authorization: Bearer $DYNVOLT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{ ... }'

GET /v1/sites/{site_id}/defects/{defect_id}

One defect.

Scope: om:read · Module: om

curl "https://api.owner.dynvolt.com/v1/sites/pv-ljubas/defects/55" \
  -H "Authorization: Bearer $DYNVOLT_API_KEY"

PUT /v1/sites/{site_id}/defects/{defect_id}

Update a defect.

Scope: om:write · Module: om · Write (rate-limited at 30/min)

  • Supports the Idempotency-Key header for safe retries (24-hour replay). Returns 409 conflict_safe_mode while the site is in commissioning safe mode.
curl -X PUT "https://api.owner.dynvolt.com/v1/sites/pv-ljubas/defects/55" \
  -H "Authorization: Bearer $DYNVOLT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{ ... }'