Keywords

block-height​

Introduced in: Clarity 1
output: uint
description:
Returns the current block height of the Stacks blockchain as an uint
example:
(> block-height 1000) ;; returns true if the current block-height has passed 1000 blocks.

burn-block-height​

Introduced in: Clarity 1
output: uint
description:
Returns the current block height of the underlying burn blockchain as a uint
example:
(> burn-block-height 1000) ;; returns true if the current height of the underlying burn blockchain has passed 1000 blocks.

chain-id​

Introduced in: Clarity 2
output: uint
description:
Returns the 32-bit chain ID of the blockchain running this transaction
example:
(print chain-id) ;; Will print 'u1' if the code is running on mainnet, and 'u2147483648' on testnet, and other values on different chains.

contract-caller​

Introduced in: Clarity 1
output: principal
description:
Returns the caller of the current contract context. If this contract is the first one called by a signed transaction, the caller will be equal to the signing principal. If contract-call? was used to invoke a function from a new contract, contract-caller changes to the calling contract's principal. If as-contract is used to change the tx-sender context, contract-caller also changes to the same contract principal.
example:
(print contract-caller) ;; Will print out a Stacks address of the transaction sender

false​

Introduced in: Clarity 1
output: bool
description:
Boolean false constant.
example:
(and true false) ;; Evaluates to false
(or false true) ;; Evaluates to true

is-in-mainnet​

Introduced in: Clarity 2
output: bool
description:
Returns a boolean indicating whether or not the code is running on the mainnet
example:
(print is-in-mainnet) ;; Will print 'true' if the code is running on the mainnet

is-in-regtest​

Introduced in: Clarity 1
output: bool
description:
Returns whether or not the code is running in a regression test
example:
(print is-in-regtest) ;; Will print 'true' if the code is running in a regression test

none​

Introduced in: Clarity 1
output: (optional ?)
description:
Represents the none option indicating no value for a given optional (analogous to a null value).
example:
(define-public (only-if-positive (a int))
(if (> a 0)
(some a)
none))
(only-if-positive 4) ;; Returns (some 4)
(only-if-positive (- 3)) ;; Returns none

stx-liquid-supply​

Introduced in: Clarity 1
output: uint
description:
Returns the total number of micro-STX (uSTX) that are liquid in the system as of this block.
example:
(print stx-liquid-supply) ;; Will print out the total number of liquid uSTX

true​

Introduced in: Clarity 1
output: bool
description:
Boolean true constant.
example:
(and true false) ;; Evaluates to false
(or false true) ;; Evaluates to true

tx-sender​

Introduced in: Clarity 1
output: principal
description:
Returns the original sender of the current transaction, or if as-contract was called to modify the sending context, it returns that contract principal.
example:
(print tx-sender) ;; Will print out a Stacks address of the transaction sender

tx-sponsor?​

Introduced in: Clarity 2
output: optional principal
description:
Returns the sponsor of the current transaction if there is a sponsor, otherwise returns None.
example:
(print tx-sponsor?) ;; Will print out an optional value containing the Stacks address of the transaction sponsor