Skip to main content

Delete a child project

MethodPath
DELETE/v1/slim/project/child/:subProjectId

Authentication · Access policies

Deletes an empty direct child project of your current project, including the setup Ovok created with it. Use it to remove a child project that is no longer needed.

Auth: Bearer token for a project admin. No other role passes. Scope: subProjectId must be a direct child of the caller's project (from the token).

Behaviour​

  • The child must be empty: no Patient, Device or Location, and no child projects of its own. Otherwise the request is refused with 409 and nothing is changed. The 409 body has error: "project_not_empty", a counts object per resource type and the childProjectIds.
  • On success Ovok unlinks the child from your project, deletes its access policies, practitioners, memberships, threshold plan, client applications, top-level organizations and tenant code, deletes the project, then revokes its Signals tenant.
  • User accounts are never deleted: a user can belong to other projects. Audit records (Provenance, AuditEvent) are kept.
  • Two deletes of the same project cannot run at once: the second gets 409.
  • The delete is safe to retry. If the Signals revoke fails, the project is already deleted and the request answers 502. Send the same request again to finish it.
  • Returns { "success": true }.

Example​

curl -X DELETE 'https://api.sandbox.ovok.com/v1/slim/project/child/3f1c2b7e-8d4a-4c1e-9b2f-6a7d5e4c3b21' \
-H "Authorization: Bearer ${OVOK_TOKEN}"

Successful response​

200 — The sub tenant was deleted successfully.

Errors​

StatusMeaning
401The bearer token is missing or invalid, or the session carries no project.
403The caller is not a project admin.
404subProjectId is not a direct child of the caller's project.
409The project still holds residents, devices, locations or child projects, or another delete of it is in progress.
422subProjectId is empty.
502The project was deleted, but its Signals tenant could not be revoked. Retry the delete.