TransactionPreconditionsResponse
public struct TransactionPreconditionsResponse : Decodable, Sendable
Represents transaction preconditions that must be met for a transaction to be valid.
Preconditions allow fine-grained control over when and how a transaction can be submitted and executed. They provide advanced features like time windows, ledger bounds, sequence constraints, and additional signing requirements.
All preconditions are optional. If not specified, the transaction has no constraints beyond the standard requirements (valid signatures, sufficient fee, correct sequence number).
Common use cases:
- Time-locked transactions that can only execute within specific time windows
- Ledger-locked transactions valid only for specific ledger ranges
- Sequence-gated transactions requiring specific account age or sequence progression
- Multi-party transactions requiring additional signers beyond the account’s configured signers
See also:
- Stellar developer docs
- PreconditionsTimeBoundsResponse for time constraints
- PreconditionsLedgerBoundsResponse for ledger constraints
-
Time window (Unix timestamps) during which this transaction is valid. Nil if no time constraints.
Declaration
Swift
public var timeBounds: PreconditionsTimeBoundsResponse? -
Ledger sequence range during which this transaction is valid. Nil if no ledger constraints.
Declaration
Swift
public var ledgerBounds: PreconditionsLedgerBoundsResponse? -
Minimum source account sequence number required. Transaction invalid if account sequence is less. Nil if no constraint.
Declaration
Swift
public var minAccountSequence: String? -
Minimum age (in seconds) the source account must have existed. Nil if no age requirement.
Declaration
Swift
public var minAccountSequenceAge: String? -
Minimum ledger gap since the source account’s sequence number was last modified. Nil if no gap requirement.
Declaration
Swift
public var minAccountSequenceLedgerGap: Int? -
Additional signer keys required beyond the account’s configured signers. Array of public keys. Nil if none required.
Declaration
Swift
public var extraSigners: [String]? -
Declaration
Swift
public init(from decoder: Decoder) throws
View on GitHub
Install in Dash