org-biome-installations

Operations of the Biome Host API. Paths are relative to your deployment's API host.

GET /api/biome-host-api/org-biome-installations

List this org's ORG-SCOPED biome installations (projectId IS NULL). Optionally only those of one biomeId. Archived installations are excluded unless includeArchived=true.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
biomeIdquerystringnoReturn only installations of this biome (the manifest xema.id, lowercase kebab-case). Absent: every biome. A biome with no installation answers an empty list.
includeArchivedquerybooleannoInclude installations whose lifecycle is archived. Default false — archived is terminal: archived rows are never resolved and are ineligible for runtime contribution, so listing one advertises an install nothing will route to.
StatusDescriptionBody
200application/json BiomeInstallationResponseDtoDataArrayEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

GET /api/biome-host-api/org-biome-installations/{id}

Get a single ORG-SCOPED biome installation by id (scoped to this org and projectId IS NULL).

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200application/json BiomeInstallationDetailResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

PUT /api/biome-host-api/org-biome-installations/{id}

Reconcile an ORG-SCOPED installation's in-place spec (configJson, integrations, resources). The pinned version is immutable here — a version change requires a reinstall and is rejected with 409. Re-stamps iac ownership for the declarative control plane; a person's own edit (an org admin, or a member holding the install permission for the row's scope) adopts an unowned row to ui and leaves an owned one with its owner.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyes

Request body: application/json UpdateOrgBiomeInstallationDto

StatusDescriptionBody
200application/json BiomeInstallationResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

DELETE /api/biome-host-api/org-biome-installations/{id}

Uninstall an ORG-SCOPED biome installation. Idempotent — deleting an already-gone install returns 200 with existed=false so a reconciler retry is safe. Tears down any workload, deletes the row and starts the uninstall cascade, whose workflowId is returned (null when nothing was deleted). The org's workflow definitions and the biome's schema are retired only when no installation of the biome, of any owner, remains in the org.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200application/json OrgBiomeInstallationDeleteResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

POST /api/biome-host-api/org-biome-installations/{id}/rescope

Promote an installation's owner — user → project → org. Only broadening moves are legal; a demotion or a same-tier move is refused with 422. Publishing to org scope requires the org admin role; a personal installation may only be promoted by its own owner. A collision at the target scope is a 409 — re-scoping never merges two installations.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyes

Request body: application/json RescopeBiomeInstallationDto

StatusDescriptionBody
200application/json BiomeInstallationRescopeResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto