OpenVibe.Zone API
Generated at from
openvibe-contracts v0.177.0 and
openvibe-sdk v0.44.0.
Server https://openvibe.zone. 9 routes performing 8 capabilities. OpenAPI 3.1 document.
GET /api/v1/projects/{project_id}/zones
List a project's object zones: GET /api/v1/projects/:project_id/zones, filtered by env and paged.
- Capabilities
- zone.zone.list
- Visibility
- public
- Parameters
project_id(path, required)env(query)include_deleted(query) — Also list zones in state deleted. Default false.limit(query) — Items per page, 1 to 200. A query string carries it as a string, which must name the same range.cursor(query) — next_cursor of the previous page.
- Input
- zone.object-zone-list-query@1
- Response
application/jsonzone.object-zone-list@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.zone.list</strong> (public): List a project's object zones: GET /api/v1/projects/:project_id/zones, filtered by env and paged. Callers: a developer app of the project with this capability, or a person who administers the project, signed in on openvibe.zone.</p>POST /api/v1/projects/{project_id}/zones
Create a named object zone in one environment of a project.
- Capabilities
- zone.zone.create
- Visibility
- public
- Parameters
project_id(path, required)
- Request body
application/jsonzone.object-zone-create-request@1- Response
application/jsonzone.object-zone@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.zone.create</strong> (public): Create a named object zone in one environment of a project. POST /api/v1/projects/:project_id/zones with an Idempotency-Key header answers 201 with the zone. A name held by a provisioning or active zone of that environment answers 409 zone.name_taken, a name held by a deleting or deleted one answers 409 zone.name_retired, and going over the project's zones quota answers 403 zone.quota_exceeded. Zone provisions the zone in Media before it becomes active. Callers: a developer app of the project with this capability, or a person who administers the project, signed in on openvibe.zone.</p>GET /api/v1/resources
Read OpenVibe.Zone's resource index (ADR-048): GET /api/v1/resources lists the zones Zone owns as a page of common.resource-summary@1 (common.resource-list-result@1, kind zone.object-zone, id zon_<ULI
- Capabilities
- zone.resource.read
- Visibility
- first-party
- Response
application/jsoncommon.resource-list-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.resource.read</strong> (first-party): Read OpenVibe.Zone's resource index (ADR-048): GET /api/v1/resources lists the zones Zone owns as a page of common.resource-summary@1 (common.resource-list-result@1, kind zone.object-zone, id zon_<ULID>, with the project_id of the Network project that owns it), and GET /api/v1/resources/:ovrn reads one. Every authority serves these for OpenVibe.Services to fan out and merge.</p>GET /api/v1/resources/{ovrn}
Read OpenVibe.Zone's resource index (ADR-048): GET /api/v1/resources lists the zones Zone owns as a page of common.resource-summary@1 (common.resource-list-result@1, kind zone.object-zone, id zon_<ULI
- Capabilities
- zone.resource.read
- Visibility
- first-party
- Parameters
ovrn(path, required)
- Response
application/jsoncommon.resource-list-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.resource.read</strong> (first-party): Read OpenVibe.Zone's resource index (ADR-048): GET /api/v1/resources lists the zones Zone owns as a page of common.resource-summary@1 (common.resource-list-result@1, kind zone.object-zone, id zon_<ULID>, with the project_id of the Network project that owns it), and GET /api/v1/resources/:ovrn reads one. Every authority serves these for OpenVibe.Services to fan out and merge.</p>POST /api/v1/resources/control
Control a zone through OpenVibe.Zone's control API (ADR-048, plan T13 step 10): POST /api/v1/resources/control takes one common.resource-control-request@1 naming a zone.object-zone by its OVRN, from a
- Capabilities
- zone.resource.control
- Visibility
- first-party
- Request body
application/jsoncommon.resource-control-request@1- Response
application/jsoncommon.resource-control-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.resource.control</strong> (first-party): Control a zone through OpenVibe.Zone's control API (ADR-048, plan T13 step 10): POST /api/v1/resources/control takes one common.resource-control-request@1 naming a zone.object-zone by its OVRN, from a first-party service (OpenVibe.Services) acting for the person in on_behalf_of, who must be an admin or owner of the project. Action: delete (recursive: the zone answers NoSuchBucket at once, Media tombstones and purges every object with no restore window, and the name is retired). The default zone, and a zone holding an object under a retention hold, are refused. Any other action is refused unsupported. dry_run decides and explains without applying. The first answer per (caller, project, idempotency_key) is kept and returned for a repeat; the same key with another request is refused. Answers common.resource-control-result@1.</p>GET /api/v1/zones/{zone_id}
Read one object zone: GET /api/v1/zones/:zone_id.
- Capabilities
- zone.zone.read
- Visibility
- public
- Parameters
zone_id(path, required)
- Response
application/jsonzone.object-zone@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.zone.read</strong> (public): Read one object zone: GET /api/v1/zones/:zone_id. Callers: a developer app of the project with this capability, or a person who administers the project, signed in on openvibe.zone.</p>PATCH /api/v1/zones/{zone_id}
Change an object zone's quota_bytes or description: PATCH /api/v1/zones/:zone_id.
- Capabilities
- zone.zone.manage
- Visibility
- public
- Parameters
zone_id(path, required)
- Request body
application/jsonzone.object-zone-update-request@1- Response
application/jsonzone.object-zone@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.zone.manage</strong> (public): Change an object zone's quota_bytes or description: PATCH /api/v1/zones/:zone_id. Name, environment and access are immutable. A quota change takes effect once Media acknowledges it. Callers: a developer app of the project with this capability, or a person who administers the project, signed in on openvibe.zone.</p>DELETE /api/v1/zones/{zone_id}
Delete an object zone: DELETE /api/v1/zones/:zone_id answers 202 with the zone in state deleting.
- Capabilities
- zone.zone.delete
- Visibility
- public
- Parameters
zone_id(path, required)recursive(query) — Delete the zone's objects too. Default false.
- Input
- zone.object-zone-delete-query@1
- Response
application/jsonzone.object-zone@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>zone.zone.delete</strong> (public): Delete an object zone: DELETE /api/v1/zones/:zone_id answers 202 with the zone in state deleting. A zone with objects needs recursive=true (else 409 zone.not_empty), a zone with a held object answers 409 zone.held, and the default zone answers 409 zone.default. Media tombstones every object at once, with no restore window, and erases every copy within 24 hours. A hold placed after the request delays only that object's purge. The name is retired, never reused. Callers: a developer app of the project with this capability, or a person who administers the project, signed in on openvibe.zone.</p>GET /api/v1/zones/{zone_id}/usage
Read an object zone's usage: GET /api/v1/zones/:zone_id/usage.
- Capabilities
- zone.usage.read
- Visibility
- public
- Parameters
zone_id(path, required)
- Response
application/jsonzone.object-zone-usage@1- Errors
- errors.problem@1 (application/problem+json)