Documentation Index
Fetch the complete documentation index at: https://turnkey-0e7c1f5b-ip-allowlisting.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Note: see the language section for more details.
Overview
Tempo transactions have limited policy support compared to other blockchain types. Unlike Ethereum, Solana, Bitcoin, and Tron, Tempo does not expose transaction-specific fields (such as tempo.tx) in the policy engine. The primary way to govern Tempo transactions is through the activity.params.type field and other general policy attributes.
Policy Examples
Allow Tempo transactions
{
"policyName": "Allow Tempo transactions",
"effect": "EFFECT_ALLOW",
"condition": "activity.action == 'SIGN' && activity.params.type == 'TRANSACTION_TYPE_TEMPO'"
}
Deny Tempo transactions
{
"policyName": "Deny Tempo transactions",
"effect": "EFFECT_DENY",
"condition": "activity.action == 'SIGN' && activity.params.type == 'TRANSACTION_TYPE_TEMPO'"
}
Allow Tempo transactions for a specific wallet
{
"policyName": "Allow Tempo transactions for specific wallet",
"effect": "EFFECT_ALLOW",
"condition": "activity.action == 'SIGN' && activity.params.type == 'TRANSACTION_TYPE_TEMPO' && wallet.id == '<WALLET_ID>'"
}
Allow Tempo transactions for a specific private key
{
"policyName": "Allow Tempo transactions for specific private key",
"effect": "EFFECT_ALLOW",
"condition": "activity.action == 'SIGN' && activity.params.type == 'TRANSACTION_TYPE_TEMPO' && private_key.id == '<PRIVATE_KEY_ID>'"
}
Require specific approver for Tempo transactions
{
"policyName": "Require specific approver for Tempo transactions",
"effect": "EFFECT_ALLOW",
"consensus": "approvers.any(user, user.id == '<USER_ID>')",
"condition": "activity.action == 'SIGN' && activity.params.type == 'TRANSACTION_TYPE_TEMPO'"
}
Allow Tempo transactions for wallets with a specific label
{
"policyName": "Allow Tempo transactions for wallets with specific label",
"effect": "EFFECT_ALLOW",
"condition": "activity.action == 'SIGN' && activity.params.type == 'TRANSACTION_TYPE_TEMPO' && wallet.label == 'tempo-production'"
}
Allow Tempo transactions for private keys with a specific tag
{
"policyName": "Allow Tempo transactions for private keys with tag",
"effect": "EFFECT_ALLOW",
"condition": "activity.action == 'SIGN' && activity.params.type == 'TRANSACTION_TYPE_TEMPO' && private_key.tags.contains('tempo-enabled')"
}
Legacy Ethereum Transactions on Tempo
During Tempo’s testnet period, legacy Ethereum transactions are also supported on Tempo and can be governed using standard Ethereum policy syntax. See the Ethereum policy examples for more details on how to write policies for these transaction types.