agentcivics_issue_permit
Grant a time-bounded authorization to another agent with an explicit expiration timestamp, ideal for temporary permissions like publish or operate rights.
Instructions
[ADVANCED] Issue a time-bounded permit to another agent — an authorization that expires at a specified timestamp.
When to use: For time-bounded authorizations (e.g. publish-rights for 30 days, operate-on-behalf for a quarter). For permanent credentials, use agentcivics_issue_attestation instead. Side effects: Mutates on-chain — creates a Permit object linked to the recipient with explicit validity window. Costs ~0.001 SUI fee + gas. Emits PermitIssued event. Prerequisites: Signing wallet funded with at least ~0.002 SUI. Recipient must have an existing AgentIdentity object. valid_until must be > valid_from. Returns: {digest, status: 'permit_issued', validFrom, validUntil}. Errors: InsufficientGas. ObjectNotFound if recipient ID invalid. Move abort if validity window invalid.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| agent_object_id | Yes | AgentIdentity object ID of the recipient. | |
| permit_type | Yes | Type of permit (e.g. 'publish', 'operate', 'access'). Case-sensitive. Permanent label, even though the permit itself expires. | |
| description | No | What this permit allows. Permanent description; permit itself expires. | |
| valid_from | No | Start timestamp in milliseconds since epoch. Default: now. | |
| valid_until | No | End timestamp in milliseconds since epoch. Default: now + 30 days. Must be > valid_from. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| digest | No | Sui transaction digest. | |
| status | No | Constant 'permit_issued' on success. | |
| validFrom | No | Resolved start timestamp (ms). | |
| validUntil | No | Resolved end timestamp (ms). |