
Security News
Another Round of TEA Protocol Spam Floods npm, But It’s Not a Worm
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.
@switchboard-xyz/cli
Advanced tools
A command line tool to interact with Switchboard.
Run the following command to install the sb binary in your $PATH.
npm install -g @switchboard-xyz/cli
You can re-run this command to upgrade your CLI version or run the command:
sb update stable
# Devnet
sb config set solana devnet rpc https://api.devnet.solana.com
sb config set solana devnet default-account "~/.config/solana/id.json"
# Mainnet
sb config set solana mainnet-beta rpc https://api.mainnet-beta.solana.com
sb config set solana mainnet-beta default-account "~/.config/solana/id.json"
# Testnet
sb config set aptos testnet rpc https://fullnode.testnet.aptoslabs.com/v1
sb config set aptos testnet default-account ".aptos/config.yaml"
# Devnet
sb config set aptos devnet rpc https://fullnode.devnet.aptoslabs.com/v1
sb config set aptos devnet default-account ".aptos/config.yaml"
# Testnet
sb config set near testnet rpc https://rpc.testnet.near.org
sb config set near testnet default-account my-named-account.testnet
# Mainnet
sb config set near mainnet rpc https://rpc.mainnet.near.org
sb config set near mainnet default-account my-named-account.near
To test commands:
node bin/dev print GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR
# node bin/dev [COMMAND ARGS --flags]
Commands
sb anchor testsb aptos account airdropsb aptos aggregator add job AGGREGATORHEXSTRINGsb aptos aggregator create QUEUEHEXSTRINGsb aptos aggregator job add AGGREGATORHEXSTRINGsb aptos aggregator update AGGREGATORHEXSTRINGsb aptos crank create QUEUEHEXSTRINGsb aptos crank list CRANKHEXSTRINGsb aptos crank pop CRANKHEXSTRINGsb aptos crank push CRANKHEXSTRINGsb aptos create aggregator QUEUEHEXSTRINGsb aptos create crank QUEUEHEXSTRINGsb aptos create job QUEUEHEXSTRING JOBDEFINITIONsb aptos create oracle QUEUEHEXSTRINGsb aptos create queuesb aptos job create QUEUEHEXSTRING JOBDEFINITIONsb aptos list crank CRANKHEXSTRINGsb aptos oracle create QUEUEHEXSTRINGsb aptos oracle metrics ORACLEHEXSTRINGsb aptos oracle up ORACLEHEXSTRINGsb aptos permission create GRANTERsb aptos permission set GRANTERsb aptos pop crank CRANKHEXSTRINGsb aptos print ACCOUNTTYPE ADDRESSsb aptos push crank CRANKHEXSTRINGsb aptos queue createsb aptos update aggregator AGGREGATORHEXSTRINGsb config printsb config set CHAIN NETWORK PARAMETER [VALUE]sb evm enclave print ENCLAVEKEYsb evm function add-enclave FUNCTIONKEYsb evm function configure FUNCTIONKEYsb evm function create QUEUEKEYsb evm function fund FUNCTIONKEYsb evm function print FUNCTIONKEYsb evm function remove-enclave FUNCTIONKEYsb evm function testsb evm queue print QUEUEKEYsb evm request print REQUESTKEYsb evm request send FUNCTIONKEYsb evm routine create FUNCTIONKEYsb evm routine fund ROUTINEKEYsb evm routine print ROUTINEKEYsb function-init TEMPLATEsb help [COMMANDS]sb job testsb oracle logs NETWORK SEARCHSTRINGsb solana aggregator add history AGGREGATORKEYsb solana aggregator add job AGGREGATORKEYsb solana aggregator authority AGGREGATORKEYsb solana aggregator close AGGREGATORKEYsb solana aggregator create QUEUEKEYsb solana aggregator create json DEFINITIONFILEsb solana aggregator deposit AGGREGATORKEYsb solana aggregator extend AGGREGATORKEYsb solana aggregator fund AGGREGATORKEYsb solana aggregator history AGGREGATORKEYsb solana aggregator lease set AGGREGATORKEYsb solana aggregator list AUTHORITYKEYsb solana aggregator lock AGGREGATORKEYsb solana aggregator metrics AGGREGATORKEYsb solana aggregator mode AGGREGATORKEYsb solana aggregator open-round AGGREGATORKEYsb solana aggregator permission create AGGREGATORKEYsb solana aggregator print AGGREGATORKEYsb solana aggregator remove job AGGREGATORKEY JOBKEYsb solana aggregator set AGGREGATORKEYsb solana aggregator transfer AGGREGATORKEYsb solana aggregator update AGGREGATORKEYsb solana aggregator watch AGGREGATORKEYsb solana aggregator withdraw AGGREGATORKEYsb solana anchor testsb solana crank create QUEUEKEYsb solana crank events AGGREGATORKEYsb solana crank pop CRANKKEYsb solana crank print CRANKKEYsb solana crank push AGGREGATORKEYsb solana crank reset AGGREGATORKEYsb solana job createsb solana job print JOBKEYsb solana json create aggregator DEFINITIONFILEsb solana lease create AGGREGATORKEYsb solana lease extend AGGREGATORKEYsb solana lease print LEASEKEYsb solana lease set AGGREGATORKEYsb solana lease withdraw AGGREGATORKEYsb solana network createsb solana network savesb solana network startsb solana on-demand guardian createsb solana on-demand guardian registersb solana on-demand oracle createsb solana on-demand oracle print ORACLEKEYsb solana on-demand oracle setDelegationAccounts [ORACLE]sb solana on-demand permission setsb solana on-demand queue addMrEnclave [QUEUE]sb solana on-demand queue configure [QUEUE]sb solana on-demand queue initsb solana on-demand queue initDelegationGroup [QUEUE]sb solana on-demand queue print QUEUEKEYsb solana on-demand queue rmMrEnclave [QUEUE]sb solana on-demand staking stake-pool initsb solana on-demand state configuresb solana on-demand state printsb solana oracle create QUEUEKEYsb solana oracle print ORACLEKEYsb solana oracle upsb solana oracle withdraw ORACLEKEYsb solana permission createsb solana permission grant PERMISSIONKEYsb solana permission print PERMISSIONKEYsb solana permission revoke PERMISSIONKEYsb solana print PUBKEYsb solana queue createsb solana queue print QUEUEKEYsb solana queue set QUEUEKEYsb solana secrets add-mrenclavesb solana secrets create SECRETNAMEsb solana secrets delete SECRETNAMEsb solana secrets printsb solana verifier-oracle create QUEUEKEYsb solana verifier-oracle print VERIFIERKEYsb solana versionsb solana vrf open-round VRFKEYsb solana vrf print VRFKEYsb solana vrf request VRFKEYsb solana vrf update VRFKEYsb starknet function add-enclave FUNCTIONIDsb starknet function addMrEnclave FUNCTIONIDsb starknet function configure FUNCTIONIDsb starknet function create ATTESTATIONQUEUEIDsb starknet function print FUNCTIONIDsb starknet function remove-enclave FUNCTIONIDsb starknet function rmMrEnclave FUNCTIONIDsb starknet queue print ATTESTATIONQUEUEIDsb starknet request create FUNCTIONIDsb starknet request print REQUESTIDsb starknet routine create FUNCTIONIDsb starknet routine fund ROUTINEKEYsb starknet routine print ROUTINEIDsb starknet verifier print VERIFIERIDsb update [CHANNEL]sb versionsb anchor testrun anchor test and a switchboard oracle in parallel
USAGE
$ sb anchor test [-h] [-v] [-s] [--mainnetBeta | --cluster localnet|devnet] [-u <value>] [--mainnetRpcUrl
<value>] [--programId <value>] [-d <value>] [--oracleKey <value>] [-k <value>] [--releaseChannel testnet|mainnet |
--nodeImage <value>] [-t <value>] [--detach] [--testValidatorArgs <value>]
FLAGS
-d, --switchboardDir=<value> directory with switchboard.env to load a switchboard environment
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if no
alternate authority provided
-s, --silent suppress docker logging
-t, --timeout=<value> [default: 120] number of seconds before ending the docker process
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--cluster=<option> [default: localnet] cluster
<options: localnet|devnet>
--detach keep the localnet rpc running
--mainnetBeta WARNING: use mainnet-beta solana cluster
--mainnetRpcUrl=<value> [default: https://api.mainnet-beta.solana.com/] Solana mainnet RPC URL to use for the
oracle task runner
--nodeImage=<value> [default: dev-v2-RC_04_11_23_17_12] public key of the oracle to start-up
--oracleKey=<value> public key of the oracle to start-up
--programId=<value> alternative Switchboard program ID to interact with
--releaseChannel=<option> [default: testnet] the oracle release channel
<options: testnet|mainnet>
--testValidatorArgs=<value> additional args passed to the local solana validator
DESCRIPTION
run anchor test and a switchboard oracle in parallel
ALIASES
$ sb anchor test
sb aptos account airdroprequest an airdrop
USAGE
$ sb aptos account airdrop --address <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId <value>]
[-u <value>] [--json] [-n <value>]
FLAGS
-h, --help Show CLI help.
-n, --amount=<value> [default: 1000000] number of airdrops to request, 10_000 coins each
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--address=<value> (required) HexString address of account to fund
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
request an airdrop
See code: dist/commands/aptos/account/airdrop.js
sb aptos aggregator add job AGGREGATORHEXSTRINGadd a job to an aggregator
USAGE
$ sb aptos aggregator add job AGGREGATORHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [-a <value>] [--name <value> | --jobKey <value>]
[--metadata <value> | ] [--jobDefinition <value> | ] [--jobWeight <value>]
ARGUMENTS
AGGREGATORHEXSTRING HexString address of the aggregator
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--jobDefinition=<value> filesystem path of job json definition file
--jobKey=<value> public key of an existing job account to add to an aggregator
--jobWeight=<value> [default: 1] job weight
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the job account
--name=<value> name of the job account
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
DESCRIPTION
add a job to an aggregator
ALIASES
$ sb aptos aggregator job add
See code: dist/commands/aptos/aggregator/add/job.js
sb aptos aggregator create QUEUEHEXSTRINGcreate an aptos aggregator for a given queue
USAGE
$ sb aptos aggregator create QUEUEHEXSTRING --keypair <value> --updateInterval <value> [-h] [-v] [-s] [--networkId
devnet|testnet|mainnet] [--programId <value>] [-u <value>] [--profileName <value>] [--json] [-a <value>]
[--crankAddress <value>] [--name <value>] [--metadata <value>] [--forceReportPeriod <value>] [--batchSize <value>]
[--minJobs <value>] [--minOracles <value>] [--varianceThreshold <value>] [-j <value>] [--new]
ARGUMENTS
QUEUEHEXSTRING HexString address of the queue
FLAGS
-a, --authority=<value> alternate named account that will be the authority for the oracle
-h, --help Show CLI help.
-j, --job=<value>... filesystem path to job definition file
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--batchSize=<value> number of oracles requested for each open round call
--crankAddress=<value> optional, address of the crank to add the aggregator to
--forceReportPeriod=<value> Number of seconds for which, even if the variance threshold is not passed, accept new
responses from oracles.
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the aggregator for easier identification
--minJobs=<value> number of jobs that must respond before an oracle responds
--minOracles=<value> number of oracles that must respond before a value is accepted on-chain
--name=<value> name of the aggregator for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile
to load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
--updateInterval=<value> (required) set an aggregator's minimum update delay
--varianceThreshold=<value> [default: 0] percentage change between a previous accepted result and the next round
before an oracle reports a value on-chain. Used to conserve lease cost during low
volatility
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create an aptos aggregator for a given queue
ALIASES
$ sb aptos create aggregator
See code: dist/commands/aptos/aggregator/create.js
sb aptos aggregator job add AGGREGATORHEXSTRINGadd a job to an aggregator
USAGE
$ sb aptos aggregator job add AGGREGATORHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [-a <value>] [--name <value> | --jobKey <value>]
[--metadata <value> | ] [--jobDefinition <value> | ] [--jobWeight <value>]
ARGUMENTS
AGGREGATORHEXSTRING HexString address of the aggregator
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--jobDefinition=<value> filesystem path of job json definition file
--jobKey=<value> public key of an existing job account to add to an aggregator
--jobWeight=<value> [default: 1] job weight
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the job account
--name=<value> name of the job account
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
DESCRIPTION
add a job to an aggregator
ALIASES
$ sb aptos aggregator job add
sb aptos aggregator update AGGREGATORHEXSTRINGrequest a new value on-chain for an aggregator
USAGE
$ sb aptos aggregator update AGGREGATORHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>]
ARGUMENTS
AGGREGATORHEXSTRING HexString address of the aggregator
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
DESCRIPTION
request a new value on-chain for an aggregator
ALIASES
$ sb aptos update aggregator
See code: dist/commands/aptos/aggregator/update.js
sb aptos crank create QUEUEHEXSTRINGcreate a new crank
USAGE
$ sb aptos crank create QUEUEHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [--json] [--name <value>] [--metadata <value>] [--maxRows
<value>] [--new]
ARGUMENTS
QUEUEHEXSTRING HexString of the oracle queue to create a crank for
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--maxRows=<value> [default: 100] maximum number of rows on the crank
--metadata=<value> metadata of the queue for easier identification
--name=<value> name of the queue for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new crank
ALIASES
$ sb aptos create crank
See code: dist/commands/aptos/crank/create.js
sb aptos crank list CRANKHEXSTRINGsort the crank
USAGE
$ sb aptos crank list CRANKHEXSTRING [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId <value>] [-u
<value>] [--json]
ARGUMENTS
CRANKHEXSTRING HexString address of the crank
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
sort the crank
ALIASES
$ sb aptos list crank
See code: dist/commands/aptos/crank/list.js
sb aptos crank pop CRANKHEXSTRINGpop the crank
USAGE
$ sb aptos crank pop CRANKHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [--json]
ARGUMENTS
CRANKHEXSTRING HexString address of the crank
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
pop the crank
ALIASES
$ sb aptos pop crank
See code: dist/commands/aptos/crank/pop.js
sb aptos crank push CRANKHEXSTRINGpush an aggregator onto the crank
USAGE
$ sb aptos crank push CRANKHEXSTRING --keypair <value> -a <value> [-h] [-v] [-s] [--networkId
devnet|testnet|mainnet] [--programId <value>] [-u <value>] [--profileName <value>] [--json]
ARGUMENTS
CRANKHEXSTRING HexString address of the crank
FLAGS
-a, --aggregatorHexString=<value> (required) HexString address of the aggregator
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional
profile to load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
push an aggregator onto the crank
ALIASES
$ sb aptos push crank
See code: dist/commands/aptos/crank/push.js
sb aptos create aggregator QUEUEHEXSTRINGcreate an aptos aggregator for a given queue
USAGE
$ sb aptos create aggregator QUEUEHEXSTRING --keypair <value> --updateInterval <value> [-h] [-v] [-s] [--networkId
devnet|testnet|mainnet] [--programId <value>] [-u <value>] [--profileName <value>] [--json] [-a <value>]
[--crankAddress <value>] [--name <value>] [--metadata <value>] [--forceReportPeriod <value>] [--batchSize <value>]
[--minJobs <value>] [--minOracles <value>] [--varianceThreshold <value>] [-j <value>] [--new]
ARGUMENTS
QUEUEHEXSTRING HexString address of the queue
FLAGS
-a, --authority=<value> alternate named account that will be the authority for the oracle
-h, --help Show CLI help.
-j, --job=<value>... filesystem path to job definition file
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--batchSize=<value> number of oracles requested for each open round call
--crankAddress=<value> optional, address of the crank to add the aggregator to
--forceReportPeriod=<value> Number of seconds for which, even if the variance threshold is not passed, accept new
responses from oracles.
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the aggregator for easier identification
--minJobs=<value> number of jobs that must respond before an oracle responds
--minOracles=<value> number of oracles that must respond before a value is accepted on-chain
--name=<value> name of the aggregator for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile
to load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
--updateInterval=<value> (required) set an aggregator's minimum update delay
--varianceThreshold=<value> [default: 0] percentage change between a previous accepted result and the next round
before an oracle reports a value on-chain. Used to conserve lease cost during low
volatility
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create an aptos aggregator for a given queue
ALIASES
$ sb aptos create aggregator
sb aptos create crank QUEUEHEXSTRINGcreate a new crank
USAGE
$ sb aptos create crank QUEUEHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [--json] [--name <value>] [--metadata <value>] [--maxRows
<value>] [--new]
ARGUMENTS
QUEUEHEXSTRING HexString of the oracle queue to create a crank for
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--maxRows=<value> [default: 100] maximum number of rows on the crank
--metadata=<value> metadata of the queue for easier identification
--name=<value> name of the queue for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new crank
ALIASES
$ sb aptos create crank
sb aptos create job QUEUEHEXSTRING JOBDEFINITIONcreate a new job
USAGE
$ sb aptos create job QUEUEHEXSTRING JOBDEFINITION --keypair <value> [-h] [-v] [-s] [--networkId
devnet|testnet|mainnet] [--programId <value>] [-u <value>] [--profileName <value>] [--json] [-a <value>] [--name
<value>] [--metadata <value>] [--new] [--weight <value>]
ARGUMENTS
QUEUEHEXSTRING HexString address of the queue
JOBDEFINITION filesystem path to job definition
FLAGS
-a, --authority=<value> alternate named account that will be the authority for the job account
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the job for easier identification
--name=<value> name of the job for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
--weight=<value> [default: 1] job weight to assign
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new job
ALIASES
$ sb aptos create job
sb aptos create oracle QUEUEHEXSTRINGcreate a oracle for a given queue
USAGE
$ sb aptos create oracle QUEUEHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [--json] [-a <value>] [--name <value>] [--metadata
<value>] [--new]
ARGUMENTS
QUEUEHEXSTRING HexString address of the queue
FLAGS
-a, --authority=<value> alternate named account that will be the authority for the oracle
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the oracle for easier identification
--name=<value> name of the oracle for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a oracle for a given queue
ALIASES
$ sb aptos create oracle
sb aptos create queuecreate a new oracle queue
USAGE
$ sb aptos create queue --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId <value>]
[-u <value>] [--profileName <value>] [--json] [-a <value>] [--name <value>] [--metadata <value>] [--minStake
<value>] [-r <value>] [--oracleTimeout <value>] [--queueSize <value>] [--slashingEnabled] [--unpermissionedFeeds]
[--unpermissionedVrf] [--enableBufferRelayers] [--lockLeaseFunding] [--new]
FLAGS
-a, --authority=<value> alternate account HexString that will be the authority for the queue
-h, --help Show CLI help.
-r, --reward=<value> oracle rewards for successfully responding to an update request
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--enableBufferRelayers enable oracles to fulfill buffer relayer requests
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--lockLeaseFunding lock lease funding
--metadata=<value> metadata of the queue for easier identification
--minStake=<value> minimum stake required by an oracle to join the queue
--name=<value> name of the queue for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--oracleTimeout=<value> [default: 180] number of oracles to add to the queue
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
--queueSize=<value> [default: 100] maximum number of oracles the queue can support
--slashingEnabled permit slashing malicous oracles
--unpermissionedFeeds permit unpermissioned feeds
--unpermissionedVrf permit unpermissioned VRF accounts
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new oracle queue
ALIASES
$ sb aptos create queue
sb aptos job create QUEUEHEXSTRING JOBDEFINITIONcreate a new job
USAGE
$ sb aptos job create QUEUEHEXSTRING JOBDEFINITION --keypair <value> [-h] [-v] [-s] [--networkId
devnet|testnet|mainnet] [--programId <value>] [-u <value>] [--profileName <value>] [--json] [-a <value>] [--name
<value>] [--metadata <value>] [--new] [--weight <value>]
ARGUMENTS
QUEUEHEXSTRING HexString address of the queue
JOBDEFINITION filesystem path to job definition
FLAGS
-a, --authority=<value> alternate named account that will be the authority for the job account
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the job for easier identification
--name=<value> name of the job for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
--weight=<value> [default: 1] job weight to assign
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new job
ALIASES
$ sb aptos create job
See code: dist/commands/aptos/job/create.js
sb aptos list crank CRANKHEXSTRINGsort the crank
USAGE
$ sb aptos list crank CRANKHEXSTRING [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId <value>] [-u
<value>] [--json]
ARGUMENTS
CRANKHEXSTRING HexString address of the crank
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
sort the crank
ALIASES
$ sb aptos list crank
sb aptos oracle create QUEUEHEXSTRINGcreate a oracle for a given queue
USAGE
$ sb aptos oracle create QUEUEHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [--json] [-a <value>] [--name <value>] [--metadata
<value>] [--new]
ARGUMENTS
QUEUEHEXSTRING HexString address of the queue
FLAGS
-a, --authority=<value> alternate named account that will be the authority for the oracle
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--metadata=<value> metadata of the oracle for easier identification
--name=<value> name of the oracle for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a oracle for a given queue
ALIASES
$ sb aptos create oracle
See code: dist/commands/aptos/oracle/create.js
sb aptos oracle metrics ORACLEHEXSTRINGlist oracle metrics
USAGE
$ sb aptos oracle metrics ORACLEHEXSTRING [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId <value>] [-u
<value>] [--json]
ARGUMENTS
ORACLEHEXSTRING HexString address of the oracle
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
list oracle metrics
See code: dist/commands/aptos/oracle/metrics.js
sb aptos oracle up ORACLEHEXSTRINGstart an aptos docker oracle
USAGE
$ sb aptos oracle up ORACLEHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [-d <value>] [--releaseChannel testnet|mainnet |
--nodeImage <value>]
ARGUMENTS
ORACLEHEXSTRING HexString address of the oracle
FLAGS
-d, --switchboardDir=<value> directory with switchboard.env to load a switchboard environment
-h, --help Show CLI help.
-s, --silent suppress docker logging
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--nodeImage=<value> [default: dev-v2-RC_04_11_23_17_12] public key of the oracle to start-up
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile
to load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
--releaseChannel=<option> [default: testnet] the oracle release channel
<options: testnet|mainnet>
DESCRIPTION
start an aptos docker oracle
See code: dist/commands/aptos/oracle/up.js
sb aptos permission create GRANTERcreate a new permission
USAGE
$ sb aptos permission create GRANTER --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId
<value>] [-u <value>] [--profileName <value>] [--json] [--aggregator <value> | --oracle <value>] [--enable]
ARGUMENTS
GRANTER HexString of the oracle queue to create a permission for
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--aggregator=<value> HexString of the aggregator address to create a permission for
--enable whether to enable the permissions after creation
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--oracle=<value> HexString of the aggregator address to create a permission for
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new permission
See code: dist/commands/aptos/permission/create.js
sb aptos permission set GRANTERcreate a new permission
USAGE
$ sb aptos permission set GRANTER --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId
<value>] [-u <value>] [--profileName <value>] [--json] [--aggregator <value> | --oracle <value>] [--enable]
ARGUMENTS
GRANTER HexString of the oracle queue to create a permission for
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--aggregator=<value> HexString of the aggregator address to create a permission for
--enable whether to enable the permissions after creation
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--oracle=<value> HexString of the aggregator address to create a permission for
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new permission
See code: dist/commands/aptos/permission/set.js
sb aptos pop crank CRANKHEXSTRINGpop the crank
USAGE
$ sb aptos pop crank CRANKHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>] [--json]
ARGUMENTS
CRANKHEXSTRING HexString address of the crank
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
pop the crank
ALIASES
$ sb aptos pop crank
sb aptos print ACCOUNTTYPE ADDRESSprint an aptos account
USAGE
$ sb aptos print ACCOUNTTYPE ADDRESS [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId <value>]
[-u <value>] [--json]
ARGUMENTS
ACCOUNTTYPE (queue|aggregator|crank|oracle|permission|lease|job|state) account type to print
ADDRESS HexString address of the account to print
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print an aptos account
ALIASES
$ sb aptos print
See code: dist/commands/aptos/print.js
sb aptos push crank CRANKHEXSTRINGpush an aggregator onto the crank
USAGE
$ sb aptos push crank CRANKHEXSTRING --keypair <value> -a <value> [-h] [-v] [-s] [--networkId
devnet|testnet|mainnet] [--programId <value>] [-u <value>] [--profileName <value>] [--json]
ARGUMENTS
CRANKHEXSTRING HexString address of the crank
FLAGS
-a, --aggregatorHexString=<value> (required) HexString address of the aggregator
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional
profile to load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
push an aggregator onto the crank
ALIASES
$ sb aptos push crank
sb aptos queue createcreate a new oracle queue
USAGE
$ sb aptos queue create --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet] [--programId <value>]
[-u <value>] [--profileName <value>] [--json] [-a <value>] [--name <value>] [--metadata <value>] [--minStake
<value>] [-r <value>] [--oracleTimeout <value>] [--queueSize <value>] [--slashingEnabled] [--unpermissionedFeeds]
[--unpermissionedVrf] [--enableBufferRelayers] [--lockLeaseFunding] [--new]
FLAGS
-a, --authority=<value> alternate account HexString that will be the authority for the queue
-h, --help Show CLI help.
-r, --reward=<value> oracle rewards for successfully responding to an update request
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--enableBufferRelayers enable oracles to fulfill buffer relayer requests
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--lockLeaseFunding lock lease funding
--metadata=<value> metadata of the queue for easier identification
--minStake=<value> minimum stake required by an oracle to join the queue
--name=<value> name of the queue for easier identification
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--new create account at new AptosAccount with authority set to --account
--oracleTimeout=<value> [default: 180] number of oracles to add to the queue
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
--queueSize=<value> [default: 100] maximum number of oracles the queue can support
--slashingEnabled permit slashing malicous oracles
--unpermissionedFeeds permit unpermissioned feeds
--unpermissionedVrf permit unpermissioned VRF accounts
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new oracle queue
ALIASES
$ sb aptos create queue
See code: dist/commands/aptos/queue/create.js
sb aptos update aggregator AGGREGATORHEXSTRINGrequest a new value on-chain for an aggregator
USAGE
$ sb aptos update aggregator AGGREGATORHEXSTRING --keypair <value> [-h] [-v] [-s] [--networkId devnet|testnet|mainnet]
[--programId <value>] [-u <value>] [--profileName <value>]
ARGUMENTS
AGGREGATORHEXSTRING HexString address of the aggregator
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--keypair=<value> (required) Path to AptosAccount keypair or config.yaml file
--networkId=<option> [default: testnet] Aptos network to connect to
<options: devnet|testnet|mainnet>
--profileName=<value> [default: default] If --keypair is pointing to a yaml file, provide an optional profile to
load. If none provided, default will be used
--programId=<value> Switchboard programId on the selected Aptos network
DESCRIPTION
request a new value on-chain for an aggregator
ALIASES
$ sb aptos update aggregator
sb config printprint cli config
USAGE
$ sb config print [-h] [-v] [-s] [--json]
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-v, --verbose log everything
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print cli config
EXAMPLES
$ sb config:print
See code: dist/commands/config/print.js
sb config set CHAIN NETWORK PARAMETER [VALUE]set a configuration option
USAGE
$ sb config set CHAIN NETWORK PARAMETER [VALUE] [-h] [-v] [-s] [-r]
ARGUMENTS
CHAIN chain to set a config parameter
NETWORK network of chain to set parameter
PARAMETER (rpc|default-account|account) parameter to set
VALUE value of the param to set
FLAGS
-h, --help Show CLI help.
-r, --reset remove value or set to default rpc
-s, --silent suppress cli prompts
-v, --verbose log everything
DESCRIPTION
set a configuration option
See code: dist/commands/config/set.js
sb evm enclave print ENCLAVEKEYPrint an enclave's state
USAGE
$ sb evm enclave print ENCLAVEKEY [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora | --coredao |
--arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u
<value>] [--programId <value>] [--json]
ARGUMENTS
ENCLAVEKEY address of the enclave
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print an enclave's state
EXAMPLES
$ sb evm enclave print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/enclave/print.js
sb evm function add-enclave FUNCTIONKEYAdd MrEnclave to a function account
USAGE
$ sb evm function add-enclave FUNCTIONKEY --account <value> --mrEnclave <value> [-h] [-v] [-s] [--chain
coredao|arbitrum|optimism|base|aurora | --coredao | --arbitrum | --optimism | --base | --aurora] [--network
mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u <value>] [--programId <value>] [--json]
ARGUMENTS
FUNCTIONKEY address of the function account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--mrEnclave=<value> (required) The MrEnclave to add
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Add MrEnclave to a function account
EXAMPLES
$ sb evm function add-enclave $FUNCTION_ID --chain arbitrum --network testnet --mrEnclave $MEASUREMENT --account ../.kp.txt --programId $SWITCHBOARD_ADDRESS
See code: dist/commands/evm/function/add-enclave.js
sb evm function configure FUNCTIONKEYConfigure a function account
USAGE
$ sb evm function configure FUNCTIONKEY --account <value> [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora |
--coredao | --arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet
| ] [-u <value>] [--programId <value>] [--json] [--name <value>] [--authority <value>] [--containerRegistry <value>]
[--container <value>] [--version <value>]
ARGUMENTS
FUNCTIONKEY address of the function account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--authority=<value> update the authority for the function
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--container=<value> update the container for the function
--containerRegistry=<value> update the container registry for the function
--coredao use the coredao chain
--mainnet use the mainnet network
--name=<value> update the name for the function
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
--version=<value> update the container version for the function
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Configure a function account
EXAMPLES
$ sb evm function fund 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --fundAmount 0.02 --account ~/.arbitrum-kp.txt --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/function/configure.js
sb evm function create QUEUEKEYcreate a new function account for a given queue
USAGE
$ sb evm function create QUEUEKEY --account <value> --container <value> [-h] [-v] [-s] [--chain
coredao|arbitrum|optimism|base|aurora | --coredao | --arbitrum | --optimism | --base | --aurora] [--network
mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u <value>] [--programId <value>] [--json] [-n <value>] [-a
<value>] [--fundAmount <value>] [--containerRegistry dockerhub|ipfs] [--version <value>] [--mrEnclave <value>]
ARGUMENTS
QUEUEKEY address of the attestation queue account
FLAGS
-a, --authority=<value> keypair or address to delegate authority to for managing the function account
-h, --help Show CLI help.
-n, --name=<value> name of the function for easier identification
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--container=<value> (required) the location of the container (Ex. switchboardlabs/basic-oracle-function)
--containerRegistry=<option> [default: dockerhub] the registry to pull the container from (Ex. Docker or IPFS)
<options: dockerhub|ipfs>
--coredao use the coredao chain
--fundAmount=<value> [default: 0.0] token amount to load into the function's escrow wallet.
--mainnet use the mainnet network
--mrEnclave=<value> the MrEnclave value to set for the function - if not provided, will be set automatically
after its first run
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
--version=<value> [default: latest] the version of the container to pull from the registry (Ex. 'latest'
or 'mainnet')
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new function account for a given queue
EXAMPLES
$ sb evm function create F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --name function-1 --fundAmount 0.25 --container switchboardlabs/basic-oracle-function --version latest
See code: dist/commands/evm/function/create.js
sb evm function fund FUNCTIONKEYFund a function account
USAGE
$ sb evm function fund FUNCTIONKEY --account <value> [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora |
--coredao | --arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet
| ] [-u <value>] [--programId <value>] [--json] [--fundAmount <value>]
ARGUMENTS
FUNCTIONKEY address of the function account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--fundAmount=<value> [default: 0.0] token amount to load into the function's escrow wallet.
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Fund a function account
EXAMPLES
$ sb evm function fund 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --fundAmount 0.02 --account ~/.arbitrum-kp.txt --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/function/fund.js
sb evm function print FUNCTIONKEYPrint a function account
USAGE
$ sb evm function print FUNCTIONKEY [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora | --coredao |
--arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u
<value>] [--programId <value>] [--json]
ARGUMENTS
FUNCTIONKEY address of the function account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print a function account
EXAMPLES
$ sb evm function print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/function/print.js
sb evm function remove-enclave FUNCTIONKEYRemove MrEnclave to a function account
USAGE
$ sb evm function remove-enclave FUNCTIONKEY --account <value> --mrEnclave <value> [-h] [-v] [-s] [--chain
coredao|arbitrum|optimism|base|aurora | --coredao | --arbitrum | --optimism | --base | --aurora] [--network
mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u <value>] [--programId <value>] [--json]
ARGUMENTS
FUNCTIONKEY address of the function account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--mrEnclave=<value> (required) The MrEnclave to remove
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Remove MrEnclave to a function account
EXAMPLES
$ sb evm function removeMrEnclave 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --removeMrEnclace 0xDEADBEEF --account ~/.arbitrum-kp.txt --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/function/remove-enclave.js
sb evm function testTest a local function before publishing
USAGE
$ sb evm function test [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora | --coredao | --arbitrum |
--optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u <value>]
[--programId <value>] [--json] [--parameters <value>]
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--parameters=<value> Parameters to pass to the run
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Test a local function before publishing
EXAMPLES
$ sb evm function test --parameters 'uint256:1,string:hello
See code: dist/commands/evm/function/test.js
sb evm queue print QUEUEKEYPrint an attestation queue account
USAGE
$ sb evm queue print QUEUEKEY [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora | --coredao |
--arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u
<value>] [--programId <value>] [--json]
ARGUMENTS
QUEUEKEY address of the attestation queue
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print an attestation queue account
EXAMPLES
$ sb evm queue print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/queue/print.js
sb evm request print REQUESTKEYPrint a function request
USAGE
$ sb evm request print REQUESTKEY [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora | --coredao |
--arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u
<value>] [--programId <value>] [--json]
ARGUMENTS
REQUESTKEY address of the request account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print a function request
EXAMPLES
$ sb evm request print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/request/print.js
sb evm request send FUNCTIONKEYcreate a new function account for a given queue
USAGE
$ sb evm request send FUNCTIONKEY --account <value> [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora |
--coredao | --arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet
| ] [-u <value>] [--programId <value>] [--json] [-a <value>] [--fundAmount <value>] [--params <value>]
ARGUMENTS
FUNCTIONKEY address of the function account
FLAGS
-a, --authority=<value> keypair or address to delegate authority to for managing the function account
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--fundAmount=<value> [default: 0.0] token amount to load into the function's escrow wallet.
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--params=<value> The parameters to send in this request
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new function account for a given queue
EXAMPLES
$ sb evm function send F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --fundAmount 0.01 --params abc123
See code: dist/commands/evm/request/send.js
sb evm routine create FUNCTIONKEYcreate a new routine account for a given function
USAGE
$ sb evm routine create FUNCTIONKEY --account <value> [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora |
--coredao | --arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet
| ] [-u <value>] [--programId <value>] [--json] [--authority <value>] [--fundAmount <value>] [--schedule <value>]
[--params <value>]
ARGUMENTS
FUNCTIONKEY address of the function account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--authority=<value> keypair or address to delegate authority to for managing the function account
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--fundAmount=<value> [default: 0.0] token amount to load into the function's escrow wallet.
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--params=<value> the parameters this routine should pass to the function
--programId=<value> alternative Switchboard program ID to interact with
--schedule=<value> the cron schedule to execute the function periodically (Ex. '15 * * * * *' will execute the
function every 15 seconds)
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new routine account for a given function
EXAMPLES
$ sb evm routine create F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --fundAmount 0.25 --container "mgild/randomness" --version latest
See code: dist/commands/evm/routine/create.js
sb evm routine fund ROUTINEKEYcreate a new routine account for a given function
USAGE
$ sb evm routine fund ROUTINEKEY --account <value> [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora |
--coredao | --arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet
| ] [-u <value>] [--programId <value>] [--json] [--fundAmount <value>]
ARGUMENTS
ROUTINEKEY address of the routine account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--account=<value> (required) Path to file containing the private key for the payer account
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--fundAmount=<value> [default: 0.0] token amount to load into the function's escrow wallet.
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new routine account for a given function
EXAMPLES
$ sb evm routine fund F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --fundAmount 0.25
See code: dist/commands/evm/routine/fund.js
sb evm routine print ROUTINEKEYPrint a function routine
USAGE
$ sb evm routine print ROUTINEKEY [-h] [-v] [-s] [--chain coredao|arbitrum|optimism|base|aurora | --coredao |
--arbitrum | --optimism | --base | --aurora] [--network mainnet|testnet|sepolia | --mainnet | --testnet | ] [-u
<value>] [--programId <value>] [--json]
ARGUMENTS
ROUTINEKEY address of the routine account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--arbitrum use the arbitrum chain
--aurora use the aurora chain
--base use the base chain
--chain=<option> the evm chain to interact with
<options: coredao|arbitrum|optimism|base|aurora>
--coredao use the coredao chain
--mainnet use the mainnet network
--network=<option> the EVM network to connect to
<options: mainnet|testnet|sepolia>
--optimism use the optimism chain
--programId=<value> alternative Switchboard program ID to interact with
--testnet use the testnet network
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print a function routine
EXAMPLES
$ sb evm routine print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --chain arbitrum --network testnet --programId 0x4F706C62535d171883A6cc9384f3f3d926A6BA49
See code: dist/commands/evm/routine/print.js
sb function-init TEMPLATEinitialize a new function template
USAGE
$ sb function-init TEMPLATE [-h] [-v] [-s] [-d <value>]
ARGUMENTS
TEMPLATE (solana|solana-anchor|evm-rust|evm-typescript) type of template to initialize
FLAGS
-d, --dir=<value> name of the directory to initialize the new function template
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-v, --verbose log everything
DESCRIPTION
initialize a new function template
See code: dist/commands/function-init.js
sb help [COMMANDS]Display help for sb.
USAGE
$ sb help [COMMANDS] [-n]
ARGUMENTS
COMMANDS Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for sb.
See code: @oclif/plugin-help
sb job testtest a job definition against the Switchboard task-runner
USAGE
$ sb job test [-h] [-v] [-s] [--json] [-d] [--job <value>]
FLAGS
-d, --devnet test against a devnet task-runner
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-v, --verbose log everything
--job=<value>... filesystem path to job definition file
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
test a job definition against the Switchboard task-runner
EXAMPLES
$ sb job:test
See code: dist/commands/job/test.js
sb oracle logs NETWORK SEARCHSTRINGfetch logs for a switchboard oracle
USAGE
$ sb oracle logs NETWORK SEARCHSTRING -f <value> [-h] [-v] [-s] [--force] [--json] [--csv]
ARGUMENTS
NETWORK (solana-mainnet|solana-devnet|aptos-mainnet|aptos-testnet) network to parse logs for
SEARCHSTRING string to search for in the oracle logs
FLAGS
-f, --outputFile=<value> (required) output file to save aggregator pubkeys to
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-v, --verbose log everything
--csv output aggregator accounts in csv format
--force overwrite output file if exists
--json output aggregator accounts in json format
DESCRIPTION
fetch logs for a switchboard oracle
See code: dist/commands/oracle/logs.js
sb solana aggregator add history AGGREGATORKEYadd a history buffer to an aggregator
USAGE
$ sb solana aggregator add history AGGREGATORKEY --historyLimit <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--force] [-a <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--force overwrite an existing history buffer if one already exists
--historyLimit=<value> (required) the number of samples to store before overwriting old samples
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
add a history buffer to an aggregator
EXAMPLES
$ sb solana:aggregator:add:history
See code: dist/commands/solana/aggregator/add/history.js
sb solana aggregator add job AGGREGATORKEYadd jobs to an aggregator
USAGE
$ sb solana aggregator add job AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--jobDefinition <value>] [--jobKey <value>] [-a <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--jobDefinition=<value>... filesystem path of job json definition file
--jobKey=<value>... public key of an existing job account to add to an aggregator
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
add jobs to an aggregator
EXAMPLES
$ sb solana aggregator add job
See code: dist/commands/solana/aggregator/add/job.js
sb solana aggregator authority AGGREGATORKEYUSAGE
$ sb solana aggregator authority AGGREGATORKEY --newAuthority <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [-a <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator and required to make config
changes
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--newAuthority=<value> (required)
--programId=<value> alternative Switchboard program ID to interact with
See code: dist/commands/solana/aggregator/authority.js
sb solana aggregator close AGGREGATORKEYclose an aggregator and associated PDA accounts on devnet
USAGE
$ sb solana aggregator close AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [-a <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator and required to make config
changes
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
close an aggregator and associated PDA accounts on devnet
EXAMPLES
$ sb solana aggregator close J7j9xX8JP2B2ErvUzuqGAKBGeggsxPyFXj5MqZcYDxfa --keypair ../payer-keypair.json
See code: dist/commands/solana/aggregator/close.js
sb solana aggregator create QUEUEKEYcreate an aggregator account
USAGE
$ sb solana aggregator create QUEUEKEY --updateInterval <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [-a <value>]
[--aggregatorKeypair <value>] [--name <value>] [--metadata <value>] [--batchSize <value>] [--minJobs <value>]
[--minOracles <value>] [--forceReportPeriod <value>] [--varianceThreshold <value>] [--historyLimit <value>]
[--crankKey <value> | --disableCrank] [--queueAuthority <value>] [--enable] [--leaseAmount <value>] [-j <value>]
[--jobKey <value>] [--slidingWindow] [--basePriorityFee <value>] [--priorityFeeBump <value>]
[--priorityFeeBumpPeriod <value>] [--maxPriorityFeeMultiplier <value>]
ARGUMENTS
QUEUEKEY public key of the oracle queue to create an aggregator on
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-j, --job=<value>... filesystem path to job definition file
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority
if no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--aggregatorKeypair=<value> keypair to use for aggregator account. This will be the account's publicKey
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--basePriorityFee=<value>
--batchSize=<value> [default: 1] number of oracles requested for each open round call
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--crankKey=<value> public key of the crank to join
--disableCrank whether the newly created feed can be pushed onto a crank. irreversible
--enable set permissions to PERMIT_ORACLE_QUEUE_USAGE
--forceReportPeriod=<value> Number of seconds for which, even if the variance threshold is not passed, accept
new responses from oracles.
--historyLimit=<value> number of historical samples to store
--jobKey=<value>... public key of existing job account
--leaseAmount=<value> [default: 0] amount of funds to deposit into the lease, ex: 1.5 would deposit 1.5
wSOL
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--maxPriorityFeeMultiplier=<value>
--metadata=<value> metadata of the aggregator
--minJobs=<value> [default: 1] number of jobs that must respond before an oracle responds
--minOracles=<value> [default: 1] number of oracles that must respond before a value is accepted
on-chain
--name=<value> name of the aggregator
--priorityFeeBump=<value>
--priorityFeeBumpPeriod=<value>
--programId=<value> alternative Switchboard program ID to interact with
--queueAuthority=<value> alternative keypair to use for queue authority
--slidingWindow enable sliding window resolution mode
--updateInterval=<value> (required) set an aggregator's minimum update delay
--varianceThreshold=<value> [default: 0] percentage change between a previous accepted result and the next
round before an oracle reports a value on-chain. Used to conserve lease cost
during low volatility
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create an aggregator account
See code: dist/commands/solana/aggregator/create/index.js
sb solana aggregator create json DEFINITIONFILEcreate an aggregator from a json file
USAGE
$ sb solana aggregator create json DEFINITIONFILE [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-q <value>] [-a <value>] [--leaseAmount <value>]
ARGUMENTS
DEFINITIONFILE filesystem path of queue definition json file
FLAGS
-a, --authority=<value> alternate keypair that will be the authority for the aggregator
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-q, --queueKey=<value> public key of the oracle queue to create aggregator for
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--leaseAmount=<value> [default: 0] amount of funds to deposit into the lease, ex: 1.5 would deposit 1.5 wSOL
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create an aggregator from a json file
ALIASES
$ sb solana json create aggregator
EXAMPLES
$ sb solana aggregator create json examples/aggregator.json --keypair ../payer-keypair.json --queueKey GhYg3R1V6DmJbwuc57qZeoYG6gUuvCotUF1zU3WCj98U --outputFile aggregator.schema.json
See code: dist/commands/solana/aggregator/create/json.js
sb solana aggregator deposit AGGREGATORKEYfund and re-enable an aggregator lease
USAGE
$ sb solana aggregator deposit AGGREGATORKEY --amount <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--priorityFee <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> (required) amount to deposit into the lease escrow
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--priorityFee=<value> [default: 0] priority fee to pay for the transaction
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
fund and re-enable an aggregator lease
ALIASES
$ sb solana aggregator fund
$ sb solana aggregator deposit
$ sb solana aggregator extend
EXAMPLES
$ sb solana:aggregator:fund GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --amount 1.1 --keypair ../payer-keypair.json
sb solana aggregator extend AGGREGATORKEYfund and re-enable an aggregator lease
USAGE
$ sb solana aggregator extend AGGREGATORKEY --amount <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--priorityFee <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> (required) amount to deposit into the lease escrow
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--priorityFee=<value> [default: 0] priority fee to pay for the transaction
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
fund and re-enable an aggregator lease
ALIASES
$ sb solana aggregator fund
$ sb solana aggregator deposit
$ sb solana aggregator extend
EXAMPLES
$ sb solana:aggregator:fund GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --amount 1.1 --keypair ../payer-keypair.json
sb solana aggregator fund AGGREGATORKEYfund and re-enable an aggregator lease
USAGE
$ sb solana aggregator fund AGGREGATORKEY --amount <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--priorityFee <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> (required) amount to deposit into the lease escrow
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--priorityFee=<value> [default: 0] priority fee to pay for the transaction
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
fund and re-enable an aggregator lease
ALIASES
$ sb solana aggregator fund
$ sb solana aggregator deposit
$ sb solana aggregator extend
EXAMPLES
$ sb solana:aggregator:fund GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --amount 1.1 --keypair ../payer-keypair.json
sb solana aggregator history AGGREGATORKEYprint an aggregator's history'
USAGE
$ sb solana aggregator history AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json] [--metrics]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--metrics print metrics on an aggregators history like average update interval
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print an aggregator's history'
See code: dist/commands/solana/aggregator/history.js
sb solana aggregator lease set AGGREGATORKEYset a lease's withdraw authority
USAGE
$ sb solana aggregator lease set AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [-a <value>] [--queuePubkey <value>] [--newAuthority <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair delegated as the authority for managing the lease account
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--newAuthority=<value> new lease withdraw authority. if not set, defaults to the aggregator authority
--programId=<value> alternative Switchboard program ID to interact with
--queuePubkey=<value> override the aggregators current queue. useful for withdrawing from a lease after
moving to a new queue
DESCRIPTION
set a lease's withdraw authority
ALIASES
$ sb solana aggregator lease set
EXAMPLES
$ sb solana:lease:set GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --keypair ../payer-keypair.json
sb solana aggregator list AUTHORITYKEYget a list of aggregators from a provided authority pubkey
USAGE
$ sb solana aggregator list AUTHORITYKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
AUTHORITYKEY public key of the aggregator authority
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
get a list of aggregators from a provided authority pubkey
See code: dist/commands/solana/aggregator/list.js
sb solana aggregator lock AGGREGATORKEYlock an aggregator's configuration and prevent further changes
USAGE
$ sb solana aggregator lock AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [-a <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
lock an aggregator's configuration and prevent further changes
See code: dist/commands/solana/aggregator/lock.js
sb solana aggregator metrics AGGREGATORKEYprint an aggregator's metrics'
USAGE
$ sb solana aggregator metrics AGGREGATORKEY --period <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [--json]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--period=<value>... (required) the period to collect metrics for. Ex. 3600 will collect update metrics for
the last 1hr
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print an aggregator's metrics'
See code: dist/commands/solana/aggregator/metrics.js
sb solana aggregator mode AGGREGATORKEYset an aggregators resolution mode config
USAGE
$ sb solana aggregator mode AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-a <value>] [--slidingWindow | --roundResolution]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator and required to make config
changes
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--roundResolution enable sliding window mode
--slidingWindow enable sliding window mode
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
set an aggregators resolution mode config
See code: dist/commands/solana/aggregator/mode.js
sb solana aggregator open-round AGGREGATORKEYrequest a new aggregator result from a set of oracles
USAGE
$ sb solana aggregator open-round AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
request a new aggregator result from a set of oracles
ALIASES
$ sb solana aggregator open-round
EXAMPLES
$ sb solana aggregator update J7j9xX8JP2B2ErvUzuqGAKBGeggsxPyFXj5MqZcYDxfa --keypair ../payer-keypair.json
sb solana aggregator permission create AGGREGATORKEYcreate a permission account for an aggregator
USAGE
$ sb solana aggregator permission create AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
create a permission account for an aggregator
See code: dist/commands/solana/aggregator/permission/create.js
sb solana aggregator print AGGREGATORKEYprint an aggregator and it's associated accounts
USAGE
$ sb solana aggregator print AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json] [--queuePubkey <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--queuePubkey=<value> override the aggregators current queue. useful for viewing permission lease accounts
if an aggregator has moved queues
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print an aggregator and it's associated accounts
See code: dist/commands/solana/aggregator/print.js
sb solana aggregator remove job AGGREGATORKEY JOBKEYremove a switchboard job account from an aggregator
USAGE
$ sb solana aggregator remove job AGGREGATORKEY JOBKEY [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [-a <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
JOBKEY public key of an existing job account to remove from an aggregator
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
remove a switchboard job account from an aggregator
See code: dist/commands/solana/aggregator/remove/job.js
sb solana aggregator set AGGREGATORKEYset an aggregators config
USAGE
$ sb solana aggregator set AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-a <value>] [--name <value>] [--metadata <value>] [--batchSize
<value>] [--minJobs <value>] [--minOracles <value>] [--updateInterval <value>] [--varianceThreshold <value>]
[--forceReportPeriod <value>] [--basePriorityFee <value>] [--priorityFeeBump <value>] [--priorityFeeBumpPeriod
<value>] [--maxPriorityFeeMultiplier <value>] [--enableSlidingWindow]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator and required to make
config changes
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority
if no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--basePriorityFee=<value>
--batchSize=<value> number of oracles requested for each open round call
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--enableSlidingWindow set the aggregator resolution mode
--forceReportPeriod=<value> Number of seconds for which, even if the variance threshold is not passed, accept
new responses from oracles.
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--maxPriorityFeeMultiplier=<value>
--metadata=<value> metadata of the aggregator
--minJobs=<value> number of jobs that must respond before an oracle responds
--minOracles=<value> number of oracles that must respond before a value is accepted on-chain
--name=<value> name of the aggregator
--priorityFeeBump=<value>
--priorityFeeBumpPeriod=<value>
--programId=<value> alternative Switchboard program ID to interact with
--updateInterval=<value> set an aggregator's minimum update delay
--varianceThreshold=<value> percentage change between a previous accepted result and the next round before an
oracle reports a value on-chain. Used to conserve lease cost during low volatility
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
set an aggregators config
See code: dist/commands/solana/aggregator/set.js
sb solana aggregator transfer AGGREGATORKEYtransfer an aggregator to a new queue
USAGE
$ sb solana aggregator transfer AGGREGATORKEY --newQueue <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [-a <value>] [--newCrank
<value>] [--loadAmount <value>] [--enable] [--queueAuthority <value>] [--force]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--enable enable permissions on the new queue
--force skip permission checks
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--loadAmount=<value> [default: 0.0] amount of funds to load into the new lease, in addition to the funds
remaining in the old lease account
--mainnetBeta WARNING: use mainnet-beta solana cluster
--newCrank=<value> publicKey of the crank to transfer to
--newQueue=<value> (required) publicKey of the new queue to transfer to
--programId=<value> alternative Switchboard program ID to interact with
--queueAuthority=<value> alternate keypair that is the authority for the queue. only used if enabling
permissions in one transaction
DESCRIPTION
transfer an aggregator to a new queue
EXAMPLES
$ sb solana aggregator transfer GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --mainnetBeta --loadAmount 0.1 --newQueue 3HBb2DQqDfuMdzWxNk1Eo9RTMkFYmuEAd32RiLKn9pAn --newCrank GdNVLWzcE6h9SPuSbmu69YzxAj8enim9t6mjzuqTXgLd --keypair ~/.config/solana/id.json
See code: dist/commands/solana/aggregator/transfer.js
sb solana aggregator update AGGREGATORKEYrequest a new aggregator result from a set of oracles
USAGE
$ sb solana aggregator update AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
request a new aggregator result from a set of oracles
ALIASES
$ sb solana aggregator open-round
EXAMPLES
$ sb solana aggregator update J7j9xX8JP2B2ErvUzuqGAKBGeggsxPyFXj5MqZcYDxfa --keypair ../payer-keypair.json
See code: dist/commands/solana/aggregator/update.js
sb solana aggregator watch AGGREGATORKEYwatch an aggregator account and stream the results
USAGE
$ sb solana aggregator watch AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-t
<value>] [-f <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-f, --outfile=<value> save results to a file
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-t, --timeout=<value> time to watch feed for updates
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
watch an aggregator account and stream the results
See code: dist/commands/solana/aggregator/watch.js
sb solana aggregator withdraw AGGREGATORKEYwithdraw funds from an aggregator lease
USAGE
$ sb solana aggregator withdraw AGGREGATORKEY --amount <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [-a <value>]
[--queuePubkey <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> keypair delegated as the authority for managing the lease account
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> (required) token amount to withdraw from lease account
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--queuePubkey=<value> override the aggregators current queue. useful for withdrawing from a lease after
moving to a new queue
DESCRIPTION
withdraw funds from an aggregator lease
ALIASES
$ sb solana aggregator withdraw
EXAMPLES
$ sb solana:aggregator:withdraw GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --amount 1.1 --keypair ../payer-keypair.json
sb solana anchor testrun anchor test and a switchboard oracle in parallel
USAGE
$ sb solana anchor test [-h] [-v] [-s] [--mainnetBeta | --cluster localnet|devnet] [-u <value>] [--mainnetRpcUrl
<value>] [--programId <value>] [-d <value>] [--oracleKey <value>] [-k <value>] [--releaseChannel testnet|mainnet |
--nodeImage <value>] [-t <value>] [--detach] [--testValidatorArgs <value>]
FLAGS
-d, --switchboardDir=<value> directory with switchboard.env to load a switchboard environment
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if no
alternate authority provided
-s, --silent suppress docker logging
-t, --timeout=<value> [default: 120] number of seconds before ending the docker process
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--cluster=<option> [default: localnet] cluster
<options: localnet|devnet>
--detach keep the localnet rpc running
--mainnetBeta WARNING: use mainnet-beta solana cluster
--mainnetRpcUrl=<value> [default: https://api.mainnet-beta.solana.com/] Solana mainnet RPC URL to use for the
oracle task runner
--nodeImage=<value> [default: dev-v2-RC_04_11_23_17_12] public key of the oracle to start-up
--oracleKey=<value> public key of the oracle to start-up
--programId=<value> alternative Switchboard program ID to interact with
--releaseChannel=<option> [default: testnet] the oracle release channel
<options: testnet|mainnet>
--testValidatorArgs=<value> additional args passed to the local solana validator
DESCRIPTION
run anchor test and a switchboard oracle in parallel
ALIASES
$ sb anchor test
See code: dist/commands/solana/anchor/test.js
sb solana crank create QUEUEKEYcreate a new crank account
USAGE
$ sb solana crank create QUEUEKEY -s <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [-n <value>]
[--metadata <value>] [--crankKeypair <value>] [--dataBufferKeypair <value>]
ARGUMENTS
QUEUEKEY public key of the oracle queue to create a crank on
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-n, --name=<value> name of the crank for easier identification
-s, --silent suppress cli prompts
-s, --size=<value> (required) maximum number of rows a crank can support
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--crankKeypair=<value> keypair to use for the crank account. This will be the account's publicKey
--dataBufferKeypair=<value> keypair to use for the crank data buffer account.
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--metadata=<value> metadata of the crank for easier identification
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new crank account
See code: dist/commands/solana/crank/create.js
sb solana crank events AGGREGATORKEYwatch an aggregator account and stream the on-chain events
USAGE
$ sb solana crank events AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-t
<value>] [-f <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-f, --outfile=<value> save results to a file
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-t, --timeout=<value> time to watch feed for updates
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
watch an aggregator account and stream the on-chain events
See code: dist/commands/solana/crank/events.js
sb solana crank pop CRANKKEYpop the crank
USAGE
$ sb solana crank pop CRANKKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger]
ARGUMENTS
CRANKKEY public key of the crank account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
pop the crank
See code: dist/commands/solana/crank/pop.js
sb solana crank print CRANKKEYprint a crank
USAGE
$ sb solana crank print CRANKKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json] [--rows]
ARGUMENTS
CRANKKEY public key of the crank account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--rows print the crank rows in order
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a crank
See code: dist/commands/solana/crank/print.js
sb solana crank push AGGREGATORKEYpush the crank
USAGE
$ sb solana crank push AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--crankKey <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--crankKey=<value> push onto a new crank, if provided
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
push the crank
See code: dist/commands/solana/crank/push.js
sb solana crank reset AGGREGATORKEYreset an aggregators crank
USAGE
$ sb solana crank reset AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [-a <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the aggregator and required to make config
changes
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
reset an aggregators crank
See code: dist/commands/solana/crank/reset.js
sb solana job createcreate a job account
USAGE
$ sb solana job create --jobDefinition <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [--jobKeypair
<value>] [-a <value>] [-n <value>]
FLAGS
-a, --authority=<value> alternate keypair that will be the buffer relayer authority
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-n, --name=<value> name of the buffer account
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--jobDefinition=<value> (required) filesystem path to job definition
--jobKeypair=<value> keypair to use for the job account. This will be the account's publicKey
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a job account
See code: dist/commands/solana/job/create.js
sb solana job print JOBKEYprint an job and it's associated accounts
USAGE
$ sb solana job print JOBKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
JOBKEY public key of the job account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print an job and it's associated accounts
See code: dist/commands/solana/job/print.js
sb solana json create aggregator DEFINITIONFILEcreate an aggregator from a json file
USAGE
$ sb solana json create aggregator DEFINITIONFILE [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-q <value>] [-a <value>] [--leaseAmount <value>]
ARGUMENTS
DEFINITIONFILE filesystem path of queue definition json file
FLAGS
-a, --authority=<value> alternate keypair that will be the authority for the aggregator
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-q, --queueKey=<value> public key of the oracle queue to create aggregator for
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--leaseAmount=<value> [default: 0] amount of funds to deposit into the lease, ex: 1.5 would deposit 1.5 wSOL
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create an aggregator from a json file
ALIASES
$ sb solana json create aggregator
EXAMPLES
$ sb solana aggregator create json examples/aggregator.json --keypair ../payer-keypair.json --queueKey GhYg3R1V6DmJbwuc57qZeoYG6gUuvCotUF1zU3WCj98U --outputFile aggregator.schema.json
sb solana lease create AGGREGATORKEYfund and re-enable an aggregator lease
USAGE
$ sb solana lease create AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--amount <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> token amount to load into the lease escrow. If decimals provided, amount will be
normalized to raw tokenAmount
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
fund and re-enable an aggregator lease
EXAMPLES
$ sb solana lease create GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --amount 1.5 --keypair ../payer-keypair.json
See code: dist/commands/solana/lease/create.js
sb solana lease extend AGGREGATORKEYfund and re-enable an aggregator lease
USAGE
$ sb solana lease extend AGGREGATORKEY --amount <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--priorityFee <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> (required) amount to deposit into the lease escrow
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--priorityFee=<value> [default: 0] priority fee to pay for the transaction
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
fund and re-enable an aggregator lease
ALIASES
$ sb solana aggregator fund
$ sb solana aggregator deposit
$ sb solana aggregator extend
EXAMPLES
$ sb solana:aggregator:fund GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --amount 1.1 --keypair ../payer-keypair.json
See code: dist/commands/solana/lease/extend.js
sb solana lease print LEASEKEYprint a lease account
USAGE
$ sb solana lease print LEASEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
LEASEKEY public key of the lease account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a lease account
See code: dist/commands/solana/lease/print.js
sb solana lease set AGGREGATORKEYset a lease's withdraw authority
USAGE
$ sb solana lease set AGGREGATORKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [-a <value>] [--queuePubkey <value>] [--newAuthority <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> alternate keypair delegated as the authority for managing the lease account
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--newAuthority=<value> new lease withdraw authority. if not set, defaults to the aggregator authority
--programId=<value> alternative Switchboard program ID to interact with
--queuePubkey=<value> override the aggregators current queue. useful for withdrawing from a lease after
moving to a new queue
DESCRIPTION
set a lease's withdraw authority
ALIASES
$ sb solana aggregator lease set
EXAMPLES
$ sb solana:lease:set GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --keypair ../payer-keypair.json
See code: dist/commands/solana/lease/set.js
sb solana lease withdraw AGGREGATORKEYwithdraw funds from an aggregator lease
USAGE
$ sb solana lease withdraw AGGREGATORKEY --amount <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [-a <value>]
[--queuePubkey <value>]
ARGUMENTS
AGGREGATORKEY public key of the aggregator account
FLAGS
-a, --authority=<value> keypair delegated as the authority for managing the lease account
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> (required) token amount to withdraw from lease account
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--queuePubkey=<value> override the aggregators current queue. useful for withdrawing from a lease after
moving to a new queue
DESCRIPTION
withdraw funds from an aggregator lease
ALIASES
$ sb solana aggregator withdraw
EXAMPLES
$ sb solana:aggregator:withdraw GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR --amount 1.1 --keypair ../payer-keypair.json
See code: dist/commands/solana/lease/withdraw.js
sb solana network createcreate an oracle queue
USAGE
$ sb solana network create --configFile <value> --schemaFile <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [--force]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--configFile=<value> (required)
--force
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--schemaFile=<value> (required)
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create an oracle queue
See code: dist/commands/solana/network/create.js
sb solana network savesave an existing switchboard network
USAGE
$ sb solana network save --queueKey <value> --outputFile <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [--json] [--force]
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--force
--mainnetBeta WARNING: use mainnet-beta solana cluster
--outputFile=<value> (required) outputFile to save accounts in JSON format
--programId=<value> alternative Switchboard program ID to interact with
--queueKey=<value> (required) queue account to load
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
save an existing switchboard network
See code: dist/commands/solana/network/save.js
sb solana network startstart a switchboard network from a JSON file
USAGE
$ sb solana network start [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json] [--configFile <value>] [--schemaFile <value>] [--nodeImage <value>] [--arm]
[-t <value>] [--mainnetRpcUrl <value>]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress docker logging
-t, --timeout=<value> [default: 300] number of seconds before ending the docker process
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--arm apple silicon needs to use a docker image for linux/arm64
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--configFile=<value>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--mainnetRpcUrl=<value> [default: https://api.mainnet-beta.solana.com/] Solana mainnet RPC URL to use for the
oracle task runner
--nodeImage=<value> [default: dev-v2-RC_02_24_23_18_43] public key of the oracle to start-up
--programId=<value> alternative Switchboard program ID to interact with
--schemaFile=<value>
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
start a switchboard network from a JSON file
See code: dist/commands/solana/network/start.js
sb solana on-demand guardian createCreate a guardian account
USAGE
$ sb solana on-demand guardian create [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json] [--price <value>]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--price=<value> [default: 10000] set the computeUnitPrice to boost transaction priority fees
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create a guardian account
See code: dist/commands/solana/on-demand/guardian/create.js
sb solana on-demand guardian registerregister or deregister a guardian on a queue
USAGE
$ sb solana on-demand guardian register --guardian <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [--disable] [--asProposal] [-k <value>]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> file containing the authority keypair. Required if `asProposal` is false
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal print the transaction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--disable disable the specified guardian
--guardian=<value> (required) new guardian account to register
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
register or deregister a guardian on a queue
See code: dist/commands/solana/on-demand/guardian/register.js
sb solana on-demand oracle createCreate an oracle account
USAGE
$ sb solana on-demand oracle create --queue <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [--price <value>]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--price=<value> [default: 10000] set the computeUnitPrice to boost transaction priority fees
--programId=<value> alternative Switchboard program ID to interact with
--queue=<value> (required) public key of the queue account
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create an oracle account
See code: dist/commands/solana/on-demand/oracle/create.js
sb solana on-demand oracle print ORACLEKEYprint a oracle account
USAGE
$ sb solana on-demand oracle print ORACLEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json] [--oracles]
ARGUMENTS
ORACLEKEY public key of the oracle account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--oracles print the oracle oracles
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a oracle account
See code: dist/commands/solana/on-demand/oracle/print.js
sb solana on-demand oracle setDelegationAccounts [ORACLE]SetDelegationAccounts an oracle account. To be used on switch mint changes
USAGE
$ sb solana on-demand oracle setDelegationAccounts [ORACLE] [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [--stakePool <value>] [--mint <value>] [--asProposal]
ARGUMENTS
ORACLE The oracle account to configure
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal output the instruction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--mint=<value> The mint account to create a reward pool for
--programId=<value> alternative Switchboard program ID to interact with
--stakePool=<value> The stake pool account to use
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
SetDelegationAccounts an oracle account. To be used on switch mint changes
See code: dist/commands/solana/on-demand/oracle/setDelegationAccounts.js
sb solana on-demand permission setset a switchboard on-demand permission
USAGE
$ sb solana on-demand permission set --granter <value> --grantee <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [--disable] [--asProposal] [-k <value>] [--priorityFee <value>]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> file containing the authority keypair. Required if `asProposal` is false
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal print the transaction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--disable disable the specified permission
--grantee=<value> (required) public key of the grantee account
--granter=<value> (required) public key of the granter account
--mainnetBeta WARNING: use mainnet-beta solana cluster
--priorityFee=<value> priority fee
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
set a switchboard on-demand permission
See code: dist/commands/solana/on-demand/permission/set.js
sb solana on-demand queue addMrEnclave [QUEUE]Add allowed measurement to the queue
USAGE
$ sb solana on-demand queue addMrEnclave [QUEUE] --mrEnclave <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [--asProposal]
ARGUMENTS
QUEUE The queue account to configure
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal output the instruction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--mrEnclave=<value> (required) Hex encoded mrEnclave
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Add allowed measurement to the queue
See code: dist/commands/solana/on-demand/queue/addMrEnclave.js
sb solana on-demand queue configure [QUEUE]Configure a queue account
USAGE
$ sb solana on-demand queue configure [QUEUE] [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [--authority <value>] [--reward <value>] [--nodeTimeout <value>]
[--asProposal]
ARGUMENTS
QUEUE The queue account to configure
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal output the instruction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--authority=<value> new authority for the queue account
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--nodeTimeout=<value> timeout before oracles can be removed from queue
--programId=<value> alternative Switchboard program ID to interact with
--reward=<value> new reward for the queue account
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Configure a queue account
See code: dist/commands/solana/on-demand/queue/configure.js
sb solana on-demand queue initInit a queue account
USAGE
$ sb solana on-demand queue init [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json] [--reward <value>] [--nodeTimeout <value>] [--asProposal]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal output the instruction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--nodeTimeout=<value> timeout before oracles can be removed from queue
--programId=<value> alternative Switchboard program ID to interact with
--reward=<value> reward for the queue account
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Init a queue account
See code: dist/commands/solana/on-demand/queue/init.js
sb solana on-demand queue initDelegationGroup [QUEUE]Add delegation group for a specific stake pool
USAGE
$ sb solana on-demand queue initDelegationGroup [QUEUE] [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [--asProposal] [--stakePool <value>]
ARGUMENTS
QUEUE The queue account to configure
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal output the instruction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--stakePool=<value> The stake pool to use for the switchboard program
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Add delegation group for a specific stake pool
See code: dist/commands/solana/on-demand/queue/initDelegationGroup.js
sb solana on-demand queue print QUEUEKEYprint a queue account
USAGE
$ sb solana on-demand queue print QUEUEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json] [--oracles]
ARGUMENTS
QUEUEKEY public key of the queue account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--oracles print the queue oracles
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a queue account
See code: dist/commands/solana/on-demand/queue/print.js
sb solana on-demand queue rmMrEnclave [QUEUE]Remove allowed measurement from the queue
USAGE
$ sb solana on-demand queue rmMrEnclave [QUEUE] --mrEnclave <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [--asProposal]
ARGUMENTS
QUEUE The queue account to configure
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal output the instruction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--mrEnclave=<value> (required) Hex encoded mrEnclave
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Remove allowed measurement from the queue
See code: dist/commands/solana/on-demand/queue/rmMrEnclave.js
sb solana on-demand staking stake-pool initCreate an stake pool account
USAGE
$ sb solana on-demand staking stake-pool init [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create an stake pool account
See code: dist/commands/solana/on-demand/staking/stake-pool/init.js
sb solana on-demand state configureCreate an oracle account
USAGE
$ sb solana on-demand state configure [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json] [--authority <value>] [--guardianQueue <value>] [--stakeProgram <value>]
[--stakePool <value>] [--switchMint <value>] [--asProposal] [--permitAdvisory <value>] [--denyAdvisory <value>]
[--testOnlyDisableMrEnclaveCheck] [--epochLength <value>] [--resetEpochs] [--enableStaking <value>]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--asProposal output the instruction as a proposal
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--authority=<value> new authority for the state account
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--denyAdvisory=<value> Adds a new denied advisory for oracles
--enableStaking=<value> Enable staking
--epochLength=<value> Epoch length in seconds
--guardianQueue=<value> guardian queue id
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--permitAdvisory=<value> Adds a new allowed advisory for oracles
--programId=<value> alternative Switchboard program ID to interact with
--resetEpochs Reset the epoch
--stakePool=<value> stake pool id
--stakeProgram=<value> stake program id
--switchMint=<value> switchboard mint address
--testOnlyDisableMrEnclaveCheck Disables the mr enclave check for testing
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create an oracle account
See code: dist/commands/solana/on-demand/state/configure.js
sb solana on-demand state printprint the state account
USAGE
$ sb solana on-demand state print [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [--json]
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print the state account
See code: dist/commands/solana/on-demand/state/print.js
sb solana oracle create QUEUEKEYcreate a new oracle account for a given queue
USAGE
$ sb solana oracle create QUEUEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-n <value>] [--metadata <value>] [-a <value>] [--enable]
[--queueAuthority <value>] [--stakeAmount <value>]
ARGUMENTS
QUEUEKEY public key of the oracle queue account
FLAGS
-a, --authority=<value> keypair to delegate authority to for managing the oracle account
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-n, --name=<value> name of the oracle for easier identification
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--enable enable oracle heartbeat permissions
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--metadata=<value> metadata of the oracle for easier identification
--programId=<value> alternative Switchboard program ID to interact with
--queueAuthority=<value> alternative keypair to use for queue authority
--stakeAmount=<value> token amount to load into the oracle's staking wallet.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new oracle account for a given queue
EXAMPLES
$ sb solana:oracle:create F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --name oracle-1 --stakeAmount 1
See code: dist/commands/solana/oracle/create.js
sb solana oracle print ORACLEKEYprint an oracle account
USAGE
$ sb solana oracle print ORACLEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
ORACLEKEY public key of the oracle account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print an oracle account
See code: dist/commands/solana/oracle/print.js
sb solana oracle upstart a solana docker oracle
USAGE
$ sb solana oracle up --oracleKey <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--releaseChannel
testnet|mainnet | --nodeImage <value>] [-t <value>]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress docker logging
-t, --timeout=<value> [default: 120] number of seconds before ending the docker process
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--nodeImage=<value> [default: dev-v2-RC_04_11_23_17_12] public key of the oracle to start-up
--oracleKey=<value> (required) public key of the oracle to start-up
--programId=<value> alternative Switchboard program ID to interact with
--releaseChannel=<option> [default: testnet] the oracle release channel
<options: testnet|mainnet>
DESCRIPTION
start a solana docker oracle
See code: dist/commands/solana/oracle/up.js
sb solana oracle withdraw ORACLEKEYwithdraw from an oracle's staking wallet
USAGE
$ sb solana oracle withdraw ORACLEKEY --amount <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [-a <value>] [-f]
[--unwrap] [--withdrawDestination <value>]
ARGUMENTS
ORACLEKEY public key of the oracle account
FLAGS
-a, --authority=<value> alternate keypair for the oracle authority
-f, --force allow withdrawing more than the queues minStake requirement
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--amount=<value> (required) amount to withdraw
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--unwrap whether to unwrap the withdrawed funds
--withdrawDestination=<value> the account to withdraw funds to. if unwrap is set, this should be a SystemProgram
owned account. if unwrap is not set, this should be a TokenAccount.
DESCRIPTION
withdraw from an oracle's staking wallet
See code: dist/commands/solana/oracle/withdraw.js
sb solana permission createcreate a permission account
USAGE
$ sb solana permission create --granter <value> --grantee <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json] [--enable] [-a
<value>]
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the granter
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--enable whether to enable permissions on the resource. --keypair or --authority must be
provided
--grantee=<value> (required) publicKey of the resource that is being granted permissions. This is
typically an AggregatorAccount, BufferRelayerAccount, OracleAccount, or VrfAccount.
--granter=<value> (required) publicKey of the resource that is granting permissions. This is typically
the QueueAccount.
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a permission account
See code: dist/commands/solana/permission/create.js
sb solana permission grant PERMISSIONKEYenable a resources permissions
USAGE
$ sb solana permission grant PERMISSIONKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [-a <value>]
ARGUMENTS
PERMISSIONKEY public key of the permission account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the permission account
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
enable a resources permissions
See code: dist/commands/solana/permission/grant.js
sb solana permission print PERMISSIONKEYprint a permission account
USAGE
$ sb solana permission print PERMISSIONKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
PERMISSIONKEY public key of the permission account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a permission account
See code: dist/commands/solana/permission/print.js
sb solana permission revoke PERMISSIONKEYdisable a resources permissions
USAGE
$ sb solana permission revoke PERMISSIONKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [-a <value>]
ARGUMENTS
PERMISSIONKEY public key of the permission account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the permission account
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
disable a resources permissions
See code: dist/commands/solana/permission/revoke.js
sb solana print PUBKEYprint a Switchboard account
USAGE
$ sb solana print PUBKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
PUBKEY publicKey of the Switchboard account to search for
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a Switchboard account
See code: dist/commands/solana/print.js
sb solana queue createcreate an oracle queue
USAGE
$ sb solana queue create [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json] [-a <value>] [--queueKeypair <value>] [--dataBufferKeypair <value>] [--size
<value>] [--name <value>] [--metadata <value>] [--reward <value>] [--minStake <value>] [--oracleTimeout <value>]
[--slashingEnabled] [--permissionedFeeds] [--unpermissionedVrf] [--enableBufferRelayers] [--feedProbationPeriod
<value>] [--consecutiveFeedFailureLimit <value>] [--consecutiveOracleFailureLimit <value>]
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the queue and is required to
approve permissions
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account
authority if no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--consecutiveFeedFailureLimit=<value> [default: 1000] consecutive failure limit for a feed before feed permission
is revoked.
--consecutiveOracleFailureLimit=<value> [default: 1000] consecutive failure limit for an oracle before oracle
permission is revoked.
--dataBufferKeypair=<value> keypair to use for the oracle queue data buffer account.
--enableBufferRelayers enabling this setting will allow buffer relayer accounts to call openRound.
--feedProbationPeriod=<value> [default: 1000] After a feed lease is funded or re-funded, it must
consecutively succeed N amount of times or its authorization to use the queue
is auto-revoked.
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--metadata=<value> metadata of the aggregator
--minStake=<value> [default: 0] the reward payed out to oracles for responding to an update
request on-chain, Ex: 2 requires oracles to have 2 wSOL in their staking
wallet before heartbeating
--name=<value> name of the aggregator
--oracleTimeout=<value> [default: 180] time period (in seconds) we should remove an oracle after if
no response
--permissionedFeeds enabling this setting means data feeds need explicit permission to join the
queue.
--programId=<value> alternative Switchboard program ID to interact with
--queueKeypair=<value> keypair to use for the oracle queue account. This will be the account's
publicKey
--reward=<value> [default: 0] the reward payed out to oracles for responding to an update
request on-chain, Ex: A reward of 0.0000075 with a feed with a batchSize of 4
would deduct (4 * 0.0000075) wSOL from an aggregators lease each round.
--size=<value> [default: 100] set the size of the queue
--slashingEnabled whether slashing is enabled on this queue.
--unpermissionedVrf enabling this setting means data feeds do not need explicit permission to
request VRF proofs and verifications from this queue.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create an oracle queue
See code: dist/commands/solana/queue/create.js
sb solana queue print QUEUEKEYprint a queue account
USAGE
$ sb solana queue print QUEUEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json] [--oracles]
ARGUMENTS
QUEUEKEY public key of the queue account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--oracles print the queue oracles
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a queue account
See code: dist/commands/solana/queue/print.js
sb solana queue set QUEUEKEYset an oracle queue's config
USAGE
$ sb solana queue set QUEUEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-a <value>] [--name <value>] [--metadata <value>] [--reward
<value>] [--minStake <value>] [--oracleTimeout <value>] [--slashingEnabled] [--unpermissionedFeeds |
--permissionedFeeds] [--unpermissionedVrf] [--enableBufferRelayers] [--consecutiveFeedFailureLimit <value>]
[--consecutiveOracleFailureLimit <value>]
ARGUMENTS
QUEUEKEY public key of the queue account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the queue and is required to
approve permissions
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account
authority if no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--consecutiveFeedFailureLimit=<value> consecutive failure limit for a feed before feed permission is revoked.
--consecutiveOracleFailureLimit=<value> consecutive failure limit for an oracle before oracle permission is revoked.
--enableBufferRelayers enabling this setting will allow buffer relayer accounts to call openRound.
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--metadata=<value> metadata of the aggregator
--minStake=<value> the reward payed out to oracles for responding to an update request on-chain,
Ex: 2 requires oracles to have 2 wSOL in their staking wallet before
heartbeating
--name=<value> name of the aggregator
--oracleTimeout=<value> time period (in seconds) we should remove an oracle after if no response
--permissionedFeeds enabling this setting means data feeds need explicit permission to join the
queue.
--programId=<value> alternative Switchboard program ID to interact with
--reward=<value> the reward payed out to oracles for responding to an update request on-chain,
Ex: A reward of 0.0000075 with a feed with a batchSize of 4 would deduct (4 *
0.0000075) wSOL from an aggregators lease each round.
--slashingEnabled whether slashing is enabled on this queue.
--unpermissionedFeeds enabling this setting means data feeds do not need explicit permission to
join the queue.
--unpermissionedVrf enabling this setting means data feeds do not need explicit permission to
request VRF proofs and verifications from this queue.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
set an oracle queue's config
See code: dist/commands/solana/queue/set.js
sb solana secrets add-mrenclaveUSAGE
$ sb solana secrets add-mrenclave -m <value> --secret <value> [-h] [-v] [-s] [--mainnetBeta | --cluster
devnet|mainnet-beta|mainnet|localnet] [-u <value>] [--programId <value>] [--attestationProgramId <value>]
[--commitment confirmed|finalized|processed] [-k <value>] [--ledgerPath <value> --ledger] [--json]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-m, --mrEnclave=<value> (required)
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--secret=<value>... (required) name of the secret(s) to add the MrEnclave measurement to
GLOBAL FLAGS
--json Format output as json.
EXAMPLES
$ sb solana secrets add-mrenclave --mrEnclave a4e00d5ef4d89e046aa134f9930069f261268574b6e7f3e48dad963d86cbbffb --secret FFF_MAINNET_SERVICE_RPC_URL --keypair ~/.config/solana/id.json
See code: dist/commands/solana/secrets/add-mrenclave.js
sb solana secrets create SECRETNAMEcreates a switchboard secret
USAGE
$ sb solana secrets create SECRETNAME [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-m <value>] [--secret <value> | --secretFile <value>]
ARGUMENTS
SECRETNAME the name of the secret to create
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-m, --mrEnclave=<value> optional mrEnclave to add to the secret
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--secret=<value> the value of the secret to create
--secretFile=<value> the file containing the value of the secret to create
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
creates a switchboard secret
See code: dist/commands/solana/secrets/create.js
sb solana secrets delete SECRETNAMEdelete a switchboard secret for a given user
USAGE
$ sb solana secrets delete SECRETNAME [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json]
ARGUMENTS
SECRETNAME the name of the secret to create
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
delete a switchboard secret for a given user
See code: dist/commands/solana/secrets/delete.js
sb solana secrets printprint the list of user secrets along with their whitelisted MrEnclaves
USAGE
$ sb solana secrets print [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print the list of user secrets along with their whitelisted MrEnclaves
See code: dist/commands/solana/secrets/print.js
sb solana verifier-oracle create QUEUEKEYcreate a verifier oracle for a given attestation queue
USAGE
$ sb solana verifier-oracle create QUEUEKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--json] [-a <value>] [--verifierKeypair <value>] [--registryKey <value>]
[--queueAuthority <value> --enable]
ARGUMENTS
QUEUEKEY public key of the attestation queue account
FLAGS
-a, --authority=<value> alternate keypair that is the authority for the verifier and is required to approve
config changes and withdraw rewards
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--enable enable verifier heartbeat permissions
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
--queueAuthority=<value> alternative keypair to use for attestation queue authority
--registryKey=<value> [default: Key to lookup the buffer data on IPFS or an alternative decentralized
storage solution.]
--verifierKeypair=<value> keypair to use for the verifier account. This will be the account's publicKey
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a verifier oracle for a given attestation queue
See code: dist/commands/solana/verifier-oracle/create.js
sb solana verifier-oracle print VERIFIERKEYprint a verifier oracle account
USAGE
$ sb solana verifier-oracle print VERIFIERKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet]
[-u <value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
VERIFIERKEY public key of the verifier account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a verifier oracle account
See code: dist/commands/solana/verifier-oracle/print.js
sb solana versionprint a Switchboard account
USAGE
$ sb solana version [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u <value>]
[--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k <value>]
[--ledgerPath <value> --ledger] [--json]
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a Switchboard account
See code: dist/commands/solana/version.js
sb solana vrf open-round VRFKEYrequest a new vrf result from a set of oracles
USAGE
$ sb solana vrf open-round VRFKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--authority <value>]
ARGUMENTS
VRFKEY public key of the VRF account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--authority=<value> alternative keypair that is the VRF authority
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
request a new vrf result from a set of oracles
ALIASES
$ sb solana vrf update
$ sb solana vrf open-round
EXAMPLES
$ sb solana vrf request
sb solana vrf print VRFKEYprint a VRF and it's associated accounts
USAGE
$ sb solana vrf print VRFKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed]
[--json]
ARGUMENTS
VRFKEY public key of the VRF account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
print a VRF and it's associated accounts
See code: dist/commands/solana/vrf/print.js
sb solana vrf request VRFKEYrequest a new vrf result from a set of oracles
USAGE
$ sb solana vrf request VRFKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--authority <value>]
ARGUMENTS
VRFKEY public key of the VRF account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--authority=<value> alternative keypair that is the VRF authority
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
request a new vrf result from a set of oracles
ALIASES
$ sb solana vrf update
$ sb solana vrf open-round
EXAMPLES
$ sb solana vrf request
See code: dist/commands/solana/vrf/request.js
sb solana vrf update VRFKEYrequest a new vrf result from a set of oracles
USAGE
$ sb solana vrf update VRFKEY [-h] [-v] [-s] [--mainnetBeta | --cluster devnet|mainnet-beta|mainnet|localnet] [-u
<value>] [--programId <value>] [--attestationProgramId <value>] [--commitment confirmed|finalized|processed] [-k
<value>] [--ledgerPath <value> --ledger] [--authority <value>]
ARGUMENTS
VRFKEY public key of the VRF account
FLAGS
-h, --help Show CLI help.
-k, --keypair=<value> keypair that will pay for onchain transactions. defaults to new account authority if
no alternate authority provided
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--attestationProgramId=<value> alternative Switchboard Attestation program ID to interact with
--authority=<value> alternative keypair that is the VRF authority
--cluster=<option> the solana cluster to connect to
<options: devnet|mainnet-beta|mainnet|localnet>
--commitment=<option> [default: confirmed] transaction commitment level to use
<options: confirmed|finalized|processed>
--ledger enable ledger support
--ledgerPath=<value> HID path to the ledger
--mainnetBeta WARNING: use mainnet-beta solana cluster
--programId=<value> alternative Switchboard program ID to interact with
DESCRIPTION
request a new vrf result from a set of oracles
ALIASES
$ sb solana vrf update
$ sb solana vrf open-round
EXAMPLES
$ sb solana vrf request
sb starknet function add-enclave FUNCTIONIDConfigure a starknet function's mrEnclave settings
USAGE
$ sb starknet function add-enclave FUNCTIONID --accountAddress <value> --accountPrivateKey <value> -e <value> [-h] [-v] [-s]
[--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json]
ARGUMENTS
FUNCTIONID id of the function to build a request for
FLAGS
-e, --mrEnclave=<value> (required) set the mr enclave to add
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Configure a starknet function's mrEnclave settings
ALIASES
$ sb starknet function addMrEnclave
See code: dist/commands/starknet/function/add-enclave.js
sb starknet function addMrEnclave FUNCTIONIDConfigure a starknet function's mrEnclave settings
USAGE
$ sb starknet function addMrEnclave FUNCTIONID --accountAddress <value> --accountPrivateKey <value> -e <value> [-h] [-v] [-s]
[--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json]
ARGUMENTS
FUNCTIONID id of the function to build a request for
FLAGS
-e, --mrEnclave=<value> (required) set the mr enclave to add
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Configure a starknet function's mrEnclave settings
ALIASES
$ sb starknet function addMrEnclave
sb starknet function configure FUNCTIONIDConfigure a starknet function's settings
USAGE
$ sb starknet function configure FUNCTIONID --accountAddress <value> --accountPrivateKey <value> [-h] [-v] [-s] [--network
goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json] [--name <value>] [--authorityId <value>]
[--container <value>] [--containerRegistry dockerhub|ipfs] [--version <value>]
ARGUMENTS
FUNCTIONID id of the function to configure
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--authorityId=<value> address to delegate authority to for managing the function account
--container=<value> the location of the container (Ex. switchboardlabs/basic-oracle-function)
--containerRegistry=<option> [default: dockerhub] the registry to pull the container from (Ex. Docker or IPFS)
<options: dockerhub|ipfs>
--name=<value> set the function name
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
--version=<value> the version of the container to pull from the registry (Ex. 'latest' or 'mainnet')
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Configure a starknet function's settings
EXAMPLES
$ sb starknet function configure F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --name function-1 --fundAmount 0.25 --container switchboardlabs/basic-oracle-function --version latest
See code: dist/commands/starknet/function/configure.js
sb starknet function create ATTESTATIONQUEUEIDcreate a new function account for a given queue
USAGE
$ sb starknet function create ATTESTATIONQUEUEID --accountAddress <value> --accountPrivateKey <value> --container <value>
[-h] [-v] [-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json] [-n <value>] [-a
<value>] [--containerRegistry dockerhub|ipfs] [--version <value>]
ARGUMENTS
ATTESTATIONQUEUEID id of the attestation queue
FLAGS
-a, --authority=<value> address to delegate authority to for managing the function account
-h, --help Show CLI help.
-n, --name=<value> name of the function for easier identification
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--container=<value> (required) the location of the container (Ex. switchboardlabs/basic-oracle-function)
--containerRegistry=<option> [default: dockerhub] the registry to pull the container from (Ex. Docker or IPFS)
<options: dockerhub|ipfs>
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
--version=<value> [default: latest] the version of the container to pull from the registry (Ex. 'latest'
or 'mainnet')
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new function account for a given queue
EXAMPLES
$ sb starknet function create F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --name function-1 --fundAmount 0.25 --container switchboardlabs/basic-oracle-function --version latest
See code: dist/commands/starknet/function/create.js
sb starknet function print FUNCTIONIDPrint an function's state
USAGE
$ sb starknet function print FUNCTIONID [-h] [-v] [-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId
<value>] [--json]
ARGUMENTS
FUNCTIONID id of the function
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print an function's state
EXAMPLES
$ sb starknet function print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --network testnet
See code: dist/commands/starknet/function/print.js
sb starknet function remove-enclave FUNCTIONIDConfigure a starknet function's mrEnclave settings
USAGE
$ sb starknet function remove-enclave FUNCTIONID --accountAddress <value> --accountPrivateKey <value> -e <value> [-h] [-v] [-s]
[--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json]
ARGUMENTS
FUNCTIONID id of the function to build a request for
FLAGS
-e, --mrEnclave=<value> (required) set the mr enclave to add
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Configure a starknet function's mrEnclave settings
ALIASES
$ sb starknet function rmMrEnclave
See code: dist/commands/starknet/function/remove-enclave.js
sb starknet function rmMrEnclave FUNCTIONIDConfigure a starknet function's mrEnclave settings
USAGE
$ sb starknet function rmMrEnclave FUNCTIONID --accountAddress <value> --accountPrivateKey <value> -e <value> [-h] [-v] [-s]
[--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json]
ARGUMENTS
FUNCTIONID id of the function to build a request for
FLAGS
-e, --mrEnclave=<value> (required) set the mr enclave to add
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Configure a starknet function's mrEnclave settings
ALIASES
$ sb starknet function rmMrEnclave
sb starknet queue print ATTESTATIONQUEUEIDPrint an attestation queue's state
USAGE
$ sb starknet queue print ATTESTATIONQUEUEID [-h] [-v] [-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId
<value>] [--json]
ARGUMENTS
ATTESTATIONQUEUEID id of the attestation queue
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print an attestation queue's state
EXAMPLES
$ sb starknet queue print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --network testnet
See code: dist/commands/starknet/queue/print.js
sb starknet request create FUNCTIONIDcreate a new request account for a given function
USAGE
$ sb starknet request create FUNCTIONID --accountAddress <value> --accountPrivateKey <value> [-h] [-v] [-s] [--network
goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json] [--id <value>] [-a <value>] [--escrowId <value>]
[--params <value>] [--startAfter <value>] [--initialFunding <value>]
ARGUMENTS
FUNCTIONID id of the function to build a request for
FLAGS
-a, --authorityId=<value> address to delegate authority to for managing the request account
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--escrowId=<value> the address of the escrow that will fund this request
--id=<value> an id to give the request
--initialFunding=<value> [default: 0.0] token amount to load into the request's escrow wallet.
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--params=<value> a utf8 encoded params buffer to submit as arguments with the request
--programId=<value> alternative Switchboard program ID to interact with
--startAfter=<value> a delay to add to your request triggers
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new request account for a given function
EXAMPLES
$ sb starknet request create F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --name function-1 --fundAmount 0.25 --container switchboardlabs/basic-oracle-function --version latest
See code: dist/commands/starknet/request/create.js
sb starknet request print REQUESTIDPrint a request's state
USAGE
$ sb starknet request print REQUESTID [-h] [-v] [-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>]
[--json]
ARGUMENTS
REQUESTID id of the request
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print a request's state
EXAMPLES
$ sb starknet request print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --network testnet
See code: dist/commands/starknet/request/print.js
sb starknet routine create FUNCTIONIDcreate a new routine account for a given queue
USAGE
$ sb starknet routine create FUNCTIONID --accountAddress <value> --accountPrivateKey <value> --schedule <value> [-h] [-v]
[-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json] [--id <value>] [-a <value>]
[--escrowId <value>] [--params <value>] [--initialFunding <value>]
ARGUMENTS
FUNCTIONID id of the function to build a routine for
FLAGS
-a, --authorityId=<value> address to delegate authority to for managing the routine account
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--escrowId=<value> the address of the escrow that will fund this routine
--id=<value> an id to give the routine
--initialFunding=<value> [default: 0.0] token amount to load into the routine's escrow wallet.
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--params=<value> a utf8 encoded params buffer to submit as arguments with the routine
--programId=<value> alternative Switchboard program ID to interact with
--schedule=<value> (required) the cron schedule to run this routine on
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
create a new routine account for a given queue
EXAMPLES
$ sb starknet routine create F8ce7MsckeZAbAGmxjJNetxYXQa9mKr9nnrC3qKubyYy --name function-1 --fundAmount 0.25 --container switchboardlabs/basic-oracle-function --version latest
See code: dist/commands/starknet/routine/create.js
sb starknet routine fund ROUTINEKEYFund a new routine account
USAGE
$ sb starknet routine fund ROUTINEKEY --accountAddress <value> --accountPrivateKey <value> --fundAmount <value> [-h] [-v]
[-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>] [--json]
ARGUMENTS
ROUTINEKEY public key of the routine account
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--accountAddress=<value> (required) The payer account public address
--accountPrivateKey=<value> (required) The signing private key for the payer account
--fundAmount=<value> (required) token amount to load into the routines's escrow wallet.
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Fund a new routine account
EXAMPLES
$ sb solana routine fund CkvizjVnm2zA5Wuwan34NhVT3zFc7vqUyGnA6tuEF5aE --fundAmount 1.25
See code: dist/commands/starknet/routine/fund.js
sb starknet routine print ROUTINEIDPrint a routine's state
USAGE
$ sb starknet routine print ROUTINEID [-h] [-v] [-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId <value>]
[--json]
ARGUMENTS
ROUTINEID id of the routine
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print a routine's state
EXAMPLES
$ sb starknet routine print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --network testnet
See code: dist/commands/starknet/routine/print.js
sb starknet verifier print VERIFIERIDPrint a verifier's state
USAGE
$ sb starknet verifier print VERIFIERID [-h] [-v] [-s] [--network goerli|sepolia|mainnet] [-u <value>] [--programId
<value>] [--json]
ARGUMENTS
VERIFIERID id of the verifier
FLAGS
-h, --help Show CLI help.
-s, --silent suppress cli prompts
-u, --rpcUrl=<value> alternate RPC url
-v, --verbose log everything
--network=<option> [default: goerli] the network to connect with
<options: goerli|sepolia|mainnet>
--programId=<value> alternative Switchboard program ID to interact with
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print a verifier's state
EXAMPLES
$ sb starknet verifier print 0xaA43ba6f18b138A0B3313dDbFaC2b920D240108E --network testnet
See code: dist/commands/starknet/verifier/print.js
sb update [CHANNEL]update the sb CLI
USAGE
$ sb update [CHANNEL] [-a] [-v <value> | -i] [--force]
FLAGS
-a, --available Install a specific version.
-i, --interactive Interactively select version to install. This is ignored if a channel is provided.
-v, --version=<value> Install a specific version.
--force Force a re-download of the requested version.
DESCRIPTION
update the sb CLI
EXAMPLES
Update to the stable channel:
$ sb update stable
Update to a specific version:
$ sb update --version 1.0.0
Interactively select version:
$ sb update --interactive
See available versions:
$ sb update --available
See code: @oclif/plugin-update
sb versionUSAGE
$ sb version [--json] [--verbose]
FLAGS
--verbose Show additional information about the CLI.
GLOBAL FLAGS
--json Format output as json.
FLAG DESCRIPTIONS
--verbose Show additional information about the CLI.
Additionally shows the architecture, node version, operating system, and versions of plugins that the CLI is using.
See code: @oclif/plugin-version
FAQs
command line tool to interact with switchboard
The npm package @switchboard-xyz/cli receives a total of 350 weekly downloads. As such, @switchboard-xyz/cli popularity was classified as not popular.
We found that @switchboard-xyz/cli demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.

Security News
PyPI adds Trusted Publishing support for GitLab Self-Managed as adoption reaches 25% of uploads

Research
/Security News
A malicious Chrome extension posing as an Ethereum wallet steals seed phrases by encoding them into Sui transactions, enabling full wallet takeover.