Solana and SVM Compatible Blockchains (beta) Signers
secret_key
The svm::secret_key
signer can be used to synchronously sign a transaction.
Inputs
- Name
secret_key
- Required
- optional
- Type
- string
- Description
The secret key used to sign messages and transactions.
- Name
mnemonic
- Required
- optional
- Type
- string
- Description
The mnemonic phrase used to generate the secret key. This input will not be used if the
secret_key
input is provided.
- Name
derivation_path
- Required
- optional
- Type
- string
- Description
The derivation path used to generate the secret key. This input will not be used if the
secret_key
input is provided.
- Name
keypair_json
- Required
- optional
- Type
- string
- Description
A path to a keypair.json file containing the secret key. This input will not be used if the
secret_key
ormnemonic
inputs are provided.
- Name
is_encrypted
- Required
- optional
- Type
- bool
- Description
Coming soon
- Name
password
- Required
- optional
- Type
- string
- Description
Coming soon
Outputs
When the secret_key
action is successfully executed, the following outputs are attached to the action
- Name
public_key
- Type
- string
- Description
The public key of the account generated from the secret key, mnemonic, or keypair file.
- Name
address
- Type
- string
- Description
The SVM address generated from the secret key, mnemonic, or keypair file. This is an alias for the
public_key
output.
Example using secret_key
signer "deployer" "svm::secret_key" {
secret_key = input.secret_key
}
web_wallet
The svm::web_wallet
signer will allow a Runbook operator to sign the transaction with the browser signer of their choice.
Inputs
- Name
expected_address
- Required
- optional
- Type
- string
- Description
The SVM address that is expected to connect to the Runbook execution. Omitting this field will allow any address to be used for this signer.
Outputs
When the web_wallet
action is successfully executed, the following outputs are attached to the action
- Name
address
- Type
- string
- Description
The address of the account. This is an alias for the
public_key
output.
- Name
public_key
- Type
- string
- Description
The address of the account.
Example using web_wallet
signer "alice" "svm::web_wallet" {
expected_address = "zbBjhHwuqyKMmz8ber5oUtJJ3ZV4B6ePmANfGyKzVGV"
}
squads
The svm::squads
signer can be used sign a transaction with a squads multisig.
Inputs
- Name
address
- Required
- optional
- Type
- addon(svm::pubkey)
- Description
The Squad multisig address.
- Name
create_key
- Required
- optional
- Type
- addon(svm::pubkey)
- Description
The create key used to derive the Squad multisig address.
- Name
vault_index
- Required
- optional
- Type
- integer
- Description
The index of the vault to be created. If omitted,
0
will be used.
- Name
initiator
- Required
- required
- Type
- string
- Description
A reference to a signer construct, which will be used to create the Squads Vault Transaction & Proposal. This signer must have the
Initiate
permission in the Squads Multisig.
- Name
payer
- Required
- optional
- Type
- string
- Description
A reference to a signer construct, which will be used to pay for the Squads Vault Transaction & Proposal creation. If omitted, the
initiator
will be used.
- Name
program_id
- Required
- optional
- Type
- addon(svm::pubkey)
- Description
The program ID of the Squad program. If omitted, the default program ID will be used.
- Name
squads_frontend_url
- Required
- optional
- Type
- string
- Description
The URL of the Squads frontend. If omitted, the default URL 'https://app.squads.so' will be used.
Outputs
When the squads
action is successfully executed, the following outputs are attached to the action
- Name
public_key
- Type
- string
- Description
The public key of the Squad vault for the provided vault index. This is an alias for the
vault_public_key
output
- Name
address
- Type
- string
- Description
The public key of the Squad vault for the provided vault index. This is an alias for the
vault_public_key
output
- Name
vault_public_key
- Type
- string
- Description
The public key of the Squad vault for the provided vault index.
- Name
vault_address
- Type
- string
- Description
The public key of the Squad vault for the provided vault index. This is an alias for the
vault_public_key
output
- Name
multisig_public_key
- Type
- string
- Description
The public key of the Squad multisig pda. This address should not be funded.
- Name
multisig_address
- Type
- string
- Description
The public key of the Squad multisig pda. This address should not be funded. This is an alias for the
multisig_public_key
output
Example using squads
signer "initiator" "svm::web_wallet" {
expected_address = input.initiator_address
}
signer "deployer" "svm::squads" {
public_key = input.squad_public_key
initiator = signer.initiator
}