Renew Usership
Renew the active rental usership (tenant lease) period of an Entity resource. Extends the renter’s temporary usage right; does not modify entity ownership. Only the current entity renter (tenant) is authorized to execute this instruction.
open-token entity renew-usership --help
Synopsis
open-token entity renew-usership <Name> <Days>
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
<Name> | String | Yes | Target entity resource name (e.g. open://google.com, open://app.google.com). Must be an existing on‑chain entity account, may contain dot separators for multi‑level hierarchy. Must hold an active non‑expired rent/usership lease. |
<Days> | u32 | Yes | Additional days to extend the entity rental usership. Subject to on‑chain minimum and maximum rent duration constraints. |
Behaviour
- Transaction signer must match stored entity renter public key; returns
RenterMismatchif authorization check fails. - Validates an active non‑expired rent lease exists for this entity; fails when no rent is active or rent already expired (
RentExpired). - Extends rent expiry timestamp by adding provided
<Days>converted to seconds (days * 86400). - Deducts rent renewal payment according to on‑chain treasury rent‑rate configuration.
- Does not change entity ownership, meta, body content, or ownership expiry timestamp.
- Only extends temporary tenant usership window; entity legal owner remains unchanged throughout the lease.
- When rent expires, usership privileges are automatically revoked; full usage rights revert back to entity owner.
- Logical resolution note: Even if entity usership is valid, the entity is unresolvable via
open://scheme if its parent Ecosystem has expired.
Constraints & Validation Rules
RenterMismatch: Signer is not the current renter of this entity.RentExpired: Existing rent lease has expired; cannot renew expired usership.DaysTooSmall: Supplied days value is below program‑enforced minimum rent duration.RentTooLong: Requested extension exceeds program maximum allowed rent duration.NameTooLong/NameEmpty: Invalid entity name input.NameExpired: Underlying entity ownership registration is expired; rent operations are unavailable.ParentNotCreated: Parent Ecosystem namespace does not exist on‑chain.MaxEntityLevelIsFour: Entity name hierarchy depth exceeds program‑defined maximum level.
Usage Example
Renew multi‑level entity open://app.google.com usership for 7 days:
open-token entity renew-usership open://app.google.com 7