client.release_gates
client.release_gates — the releaseGates operations.
On AsyncKindgi every method is the same, awaited.
client.release_gates.list()
Section titled “client.release_gates.list()”list( *, limit: int | None = None, cursor: str | None = None, agent_id: str | UUID | None = None, scope_kind: Literal['tenant', 'org', 'project', 'segment'] | None = None, scope_id: str | UUID | None = None, segments: Sequence[ScopeSegment | Mapping[str, str]] | None = None, include_retired: bool | None = None, timeout: float | None = None,) -> ReleaseGatePageList release gates. GET /v1/release-gates
Each release gate's latest active version. agentId narrows it to one agent's; scopeKind (with scopeId and segment) to one scope's. A retired gate (every version unregistered) is listed only with ?includeRetired=true, as its highest version with unregisteredAt, so it can be found and a version reinstated.
client.release_gates.publish()
Section titled “client.release_gates.publish()”publish( body: PublishReleaseGateBody | Mapping[str, Any] | None = None, /, *, idempotency_key: str | None = None, timeout: float | None = None, **fields: Any,) -> ReleaseGatePublish a release gate. POST /v1/release-gates
Registers a release gate, or a new version of one: what a pin of agentId for scope must show. One gate per agent and scope: another gate id for a scope that has one is refused with 409 release-gate-scope-taken (details.heldBy names it; publish a new version of that one instead), and a new version can't change the agent or scope (409 release-gate-scope-changed). The spec is checked strictly: an unknown key is refused (400 validation-failed, details.issues). Needs admin on the tenant: whoever may pin can't loosen their own gate.
client.release_gates.get()
Section titled “client.release_gates.get()”get(release_gate_id: str | UUID, /, *, timeout: float | None = None) -> ReleaseGateGet a release gate. GET /v1/release-gates/{releaseGateId}
The release gate's latest active version.