Skip to content

Recovery Objective

A Recovery Objective sets how much data one Capability may lose and how fast it returns, proven by a restore drill on a cadence.

Properties

PropertyTypeRequiredDescription
recoveryPointstringrequiredThe most data a failure may lose, as a window such as 15m.
recoveryTimestringrequiredHow fast the Capability returns after a failure, as a window such as 4h.
drillEverystringrequiredThe restore drill cadence, such as quarterly.
lastDrilldatetimeWhen the last restore drill met both objectives.

Object

JSON
{
  "$id": "https://api.sb/routewise.dev/recovery-objectives/recovery_objective_1",
  "$type": "RecoveryObjective",
  "recoveryPoint": "Example recovery point",
  "recoveryTime": "Example recovery time",
  "drillEvery": "Example drill every",
  "lastDrill": "2026-10-22T12:00:00Z"
}

Relationships

Verbs

  1. createCreates a Recovery Objective.
    POST /{namespace}/recovery-objectivesdoRecoveryObjective.created
  2. getReturns one Recovery Objective by id.
    GET /{namespace}/recovery-objectives/{id}readNo Event
  3. listReturns Recovery Objectives, newest first, one page at a time.
    GET /{namespace}/recovery-objectivesreadNo Event
  4. updateChanges the given properties of a Recovery Objective.
    PATCH /{namespace}/recovery-objectives/{id}doRecoveryObjective.updated
  5. deleteDeletes a Recovery Objective; its history is kept.
    DELETE /{namespace}/recovery-objectives/{id}doRecoveryObjective.deleted
  6. drillDrill restores one Capability’s records into an isolated namespace and records whether the restore met both objectives.
    POST /{namespace}/recovery-objectives/{objective}/drilldoRecoveryObjective.drilled

Permissions

Which Access level may call each Verb. One-way Verbs wait their delay window.

Operationowneradminmemberviewer
RecoveryObjective.createYesYesYesNo
RecoveryObjective.getYesYesYesYes
RecoveryObjective.listYesYesYesYes
RecoveryObjective.updateYesYesYesNo
RecoveryObjective.deleteYesYesYesNo
RecoveryObjective.drillYesYesYesNo

Call it

Text
Drill the latest recovery objective.

Example

Payments carries a Recovery Objective of 15m for data and 1h for service, drilled quarterly. The last drill restored the namespace in 22 minutes, so both objectives held.