Skip to content
Snippets Groups Projects
runtime-calls.md 25.5 KiB
Newer Older
# Runtime calls

Calls are categorized according to the dispatch origin they require:

1. **User calls**: the dispatch origin for this kind of call must be signed by
the transactor. This is the only call category that can be submitted with an extrinsic.
1. **Root calls**: This kind of call requires a special origin that can only be invoked
through on-chain governance mechanisms.
1. **Inherent calls**: This kind of call is invoked by the author of the block itself
(usually automatically by the node).
1. **Disabled calls**: These calls can not be called directly, they are reserved for internal use by other runtime calls.
There are **81** user calls from **21** pallets.

### Account - 1

#### unlink_identity - 0

<details><summary><code>unlink_identity()</code></summary>

Taking 0.0113 % of a block.
See [`Pallet::unlink_identity`].
<details><summary><code>schedule(when, maybe_periodic, priority, call)</code></summary>
Taking 0.013 % of a block.
when: BlockNumberFor<T>
maybe_periodic: Option<schedule::Period<BlockNumberFor<T>>>
call: Box<<T as Config>::RuntimeCall>
<details><summary><code>cancel(when, index)</code></summary>
Taking 0.0195 % of a block.
<details><summary><code>schedule_named(id, when, maybe_periodic, priority, call)</code></summary>
Taking 0.0203 % of a block.
when: BlockNumberFor<T>
maybe_periodic: Option<schedule::Period<BlockNumberFor<T>>>
call: Box<<T as Config>::RuntimeCall>
See [`Pallet::schedule_named`].
<details><summary><code>cancel_named(id)</code></summary>
Taking 0.0209 % of a block.
See [`Pallet::cancel_named`].
<details><summary><code>schedule_after(after, maybe_periodic, priority, call)</code></summary>
after: BlockNumberFor<T>
maybe_periodic: Option<schedule::Period<BlockNumberFor<T>>>
call: Box<<T as Config>::RuntimeCall>
See [`Pallet::schedule_after`].
<details><summary><code>schedule_named_after(id, after, maybe_periodic, priority, call)</code></summary>
after: BlockNumberFor<T>
maybe_periodic: Option<schedule::Period<BlockNumberFor<T>>>
call: Box<<T as Config>::RuntimeCall>
See [`Pallet::schedule_named_after`].
<details><summary><code>report_equivocation(equivocation_proof, key_owner_proof)</code></summary>
equivocation_proof: Box<EquivocationProof<HeaderFor<T>>>
key_owner_proof: T::KeyOwnerProof
```
See [`Pallet::report_equivocation`].
<details><summary><code>transfer_allow_death(dest, value)</code></summary>
Taking 0.0216 % of a block.
dest: AccountIdLookupOf<T>
See [`Pallet::transfer_allow_death`].
#### transfer_keep_alive - 3

<details><summary><code>transfer_keep_alive(dest, value)</code></summary>
Taking 0.0232 % of a block.
dest: AccountIdLookupOf<T>
See [`Pallet::transfer_keep_alive`].
#### transfer_all - 4

<details><summary><code>transfer_all(dest, keep_alive)</code></summary>
Taking 0.0184 % of a block.
dest: AccountIdLookupOf<T>
See [`Pallet::transfer_all`].

#### force_set_balance - 8

<details><summary><code>force_set_balance(who, new_free)</code></summary>

```rust
who: AccountIdLookupOf<T>
new_free: T::Balance
```
See [`Pallet::force_set_balance`].
### OneshotAccount - 7

#### create_oneshot_account - 0

<details><summary><code>create_oneshot_account(dest, value)</code></summary>
Taking 0.0126 % of a block.
dest: <T::Lookup as StaticLookup>::Source
value: <T::Currency as Currency<T::AccountId>>::Balance
See [`Pallet::create_oneshot_account`].
#### consume_oneshot_account - 1
<details><summary><code>consume_oneshot_account(block_height, dest)</code></summary>
Taking 0.0214 % of a block.
block_height: BlockNumberFor<T>
dest: Account<<T::Lookup as StaticLookup>::Source>
```
See [`Pallet::consume_oneshot_account`].
#### consume_oneshot_account_with_remaining - 2

<details><summary><code>consume_oneshot_account_with_remaining(block_height, dest, remaining_to, balance)</code></summary>

Taking 0.0295 % of a block.
block_height: BlockNumberFor<T>
dest: Account<<T::Lookup as StaticLookup>::Source>
remaining_to: Account<<T::Lookup as StaticLookup>::Source>
balance: <T::Currency as Currency<T::AccountId>>::Balance
```
See [`Pallet::consume_oneshot_account_with_remaining`].
### SmithMembers - 10

#### invite_smith - 0

<details><summary><code>invite_smith(receiver)</code></summary>

Taking 0.0265 % of a block.

See [`Pallet::invite_smith`].

#### accept_invitation - 1

<details><summary><code>accept_invitation()</code></summary>

Taking 0.0133 % of a block.

See [`Pallet::accept_invitation`].

#### certify_smith - 2

<details><summary><code>certify_smith(receiver)</code></summary>

Taking 0.0234 % of a block.

See [`Pallet::certify_smith`].
<details><summary><code>go_offline()</code></summary>
Taking 0.0188 % of a block.
See [`Pallet::go_offline`].
#### go_online - 1

<details><summary><code>go_online()</code></summary>

Taking 0.0225 % of a block.
<details><summary><code>set_session_keys(keys)</code></summary>
Taking 0.0296 % of a block.
See [`Pallet::set_session_keys`].
#### remove_member_from_blacklist - 4

<details><summary><code>remove_member_from_blacklist(member_id)</code></summary>

Taking 0.0125 % of a block.
See [`Pallet::remove_member_from_blacklist`].

#### report_equivocation - 0

<details><summary><code>report_equivocation(equivocation_proof, key_owner_proof)</code></summary>
equivocation_proof: Box<EquivocationProof<T::Hash, BlockNumberFor<T>>>
key_owner_proof: T::KeyOwnerProof
```
See [`Pallet::report_equivocation`].
### UpgradeOrigin - 21

#### dispatch_as_root_unchecked_weight - 1

<details><summary><code>dispatch_as_root_unchecked_weight(call, weight)</code></summary>
call: Box<<T as Config>::Call>
weight: Weight
See [`Pallet::dispatch_as_root_unchecked_weight`].
<details><summary><code>note_preimage(bytes)</code></summary>
Taking 0.5106 % of a block.
See [`Pallet::note_preimage`].
<details><summary><code>unnote_preimage(hash)</code></summary>
Taking 0.0211 % of a block.
See [`Pallet::unnote_preimage`].
<details><summary><code>request_preimage(hash)</code></summary>
Taking 0.0136 % of a block.
See [`Pallet::request_preimage`].
<details><summary><code>unrequest_preimage(hash)</code></summary>
Taking 0.0195 % of a block.
See [`Pallet::unrequest_preimage`].

#### ensure_updated - 4
<details><summary><code>ensure_updated(hashes)</code></summary>

Taking 21.0381 % of a block.

```rust
hashes: Vec<T::Hash>
```
</details>
See [`Pallet::ensure_updated`].
### TechnicalCommittee - 23
<details><summary><code>execute(proposal, length_bound)</code></summary>
Taking 0.006 % of a block.
proposal: Box<<T as Config<I>>::Proposal>
length_bound: u32
<details><summary><code>propose(threshold, proposal, length_bound)</code></summary>
threshold: MemberCount
proposal: Box<<T as Config<I>>::Proposal>
length_bound: u32
<details><summary><code>vote(proposal, index, approve)</code></summary>
Taking 0.0144 % of a block.
proposal: T::Hash
index: ProposalIndex
approve: bool
<details><summary><code>close(proposal_hash, index, proposal_weight_bound, length_bound)</code></summary>
```rust
proposal_hash: T::Hash
index: ProposalIndex
proposal_weight_bound: Weight
length_bound: u32
```
### UniversalDividend - 30
<details><summary><code>claim_uds()</code></summary>
Taking 0.0224 % of a block.
<details><summary><code>transfer_ud(dest, value)</code></summary>
Taking 0.027 % of a block.
```rust
dest: <T::Lookup as StaticLookup>::Source
value: BalanceOf<T>
```
See [`Pallet::transfer_ud`].
#### transfer_ud_keep_alive - 2
<details><summary><code>transfer_ud_keep_alive(dest, value)</code></summary>
Taking 0.0193 % of a block.
dest: <T::Lookup as StaticLookup>::Source
value: BalanceOf<T>
See [`Pallet::transfer_ud_keep_alive`].
<details><summary><code>create_identity(owner_key)</code></summary>
Taking 0.0969 % of a block.
See [`Pallet::create_identity`].
<details><summary><code>confirm_identity(idty_name)</code></summary>
Taking 0.0365 % of a block.
See [`Pallet::confirm_identity`].
<details><summary><code>change_owner_key(new_key, new_key_sig)</code></summary>
Taking 0.0507 % of a block.
See [`Pallet::change_owner_key`].

#### revoke_identity - 4

<details><summary><code>revoke_identity(idty_index, revocation_key, revocation_sig)</code></summary>
Taking 0.0487 % of a block.
idty_index: T::IdtyIndex
revocation_key: T::AccountId
See [`Pallet::revoke_identity`].
#### fix_sufficients - 7

<details><summary><code>fix_sufficients(owner_key, inc)</code></summary>

Taking 0.0113 % of a block.
```rust
owner_key: T::AccountId
inc: bool
```
See [`Pallet::fix_sufficients`].
#### link_account - 8

<details><summary><code>link_account(account_id, payload_sig)</code></summary>

Taking 0.0182 % of a block.
```rust
account_id: T::AccountId
payload_sig: T::Signature
```
See [`Pallet::link_account`].
### Certification - 43
<details><summary><code>add_cert(receiver)</code></summary>
Taking 0.0398 % of a block.

#### renew_cert - 3

<details><summary><code>renew_cert(receiver)</code></summary>
Taking 0.0324 % of a block.

```rust
receiver: T::IdtyIndex
```

See [`Pallet::renew_cert`].
#### del_cert - 1

<details><summary><code>del_cert(issuer, receiver)</code></summary>

Taking 0.0276 % of a block.

```rust
issuer: T::IdtyIndex
receiver: T::IdtyIndex
```

#### remove_all_certs_received_by - 2

<details><summary><code>remove_all_certs_received_by(idty_index)</code></summary>

Taking 7.8043 % of a block.
See [`Pallet::remove_all_certs_received_by`].

#### request_distance_evaluation - 0

<details><summary><code>request_distance_evaluation()</code></summary>

Taking 0.0354 % of a block.
See [`Pallet::request_distance_evaluation`].

#### request_distance_evaluation_for - 4

<details><summary><code>request_distance_evaluation_for(target)</code></summary>

Taking 0.0367 % of a block.
See [`Pallet::request_distance_evaluation_for`].

#### update_evaluation - 1

<details><summary><code>update_evaluation(computation_result)</code></summary>

Taking 0.0351 % of a block.
```rust
computation_result: ComputationResult
```
See [`Pallet::update_evaluation`].

#### force_update_evaluation - 2

<details><summary><code>force_update_evaluation(evaluator, computation_result)</code></summary>

Taking 0.018 % of a block.
```rust
evaluator: <T as frame_system::Config>::AccountId
computation_result: ComputationResult
```
See [`Pallet::force_update_evaluation`].
#### force_valid_distance_status - 3
<details><summary><code>force_valid_distance_status(identity)</code></summary>
Taking 0.0301 % of a block.
```rust
identity: <T as pallet_identity::Config>::IdtyIndex
```
See [`Pallet::force_valid_distance_status`].

#### create_swap - 0

<details><summary><code>create_swap(target, hashed_proof, action, duration)</code></summary>

```rust
target: T::AccountId
hashed_proof: HashedProof
action: T::SwapAction
duration: BlockNumberFor<T>
See [`Pallet::create_swap`].
#### claim_swap - 1

<details><summary><code>claim_swap(proof, action)</code></summary>
proof: Vec<u8>
action: T::SwapAction
See [`Pallet::claim_swap`].
#### cancel_swap - 2

<details><summary><code>cancel_swap(target, hashed_proof)</code></summary>
target: T::AccountId
hashed_proof: HashedProof
See [`Pallet::cancel_swap`].

#### as_multi_threshold_1 - 0

<details><summary><code>as_multi_threshold_1(other_signatories, call)</code></summary>
Taking 0.0045 % of a block.
other_signatories: Vec<T::AccountId>
call: Box<<T as Config>::RuntimeCall>
See [`Pallet::as_multi_threshold_1`].
<details><summary><code>as_multi(threshold, other_signatories, maybe_timepoint, call, max_weight)</code></summary>
threshold: u16
other_signatories: Vec<T::AccountId>
maybe_timepoint: Option<Timepoint<BlockNumberFor<T>>>
call: Box<<T as Config>::RuntimeCall>
#### approve_as_multi - 2

<details><summary><code>approve_as_multi(threshold, other_signatories, maybe_timepoint, call_hash, max_weight)</code></summary>
threshold: u16
other_signatories: Vec<T::AccountId>
maybe_timepoint: Option<Timepoint<BlockNumberFor<T>>>
See [`Pallet::approve_as_multi`].
#### cancel_as_multi - 3

<details><summary><code>cancel_as_multi(threshold, other_signatories, timepoint, call_hash)</code></summary>
Taking 0.0135 % of a block.
threshold: u16
other_signatories: Vec<T::AccountId>
timepoint: Timepoint<BlockNumberFor<T>>
See [`Pallet::cancel_as_multi`].
### ProvideRandomness - 52

#### request - 0

<details><summary><code>request(randomness_type, salt)</code></summary>
Taking 0.0393 % of a block.
randomness_type: RandomnessType
salt: H256
<details><summary><code>proxy(real, force_proxy_type, call)</code></summary>
Taking 0.0063 % of a block.
real: AccountIdLookupOf<T>
force_proxy_type: Option<T::ProxyType>
call: Box<<T as Config>::RuntimeCall>
#### add_proxy - 1

<details><summary><code>add_proxy(delegate, proxy_type, delay)</code></summary>
Taking 0.0129 % of a block.
delegate: AccountIdLookupOf<T>
#### remove_proxy - 2

<details><summary><code>remove_proxy(delegate, proxy_type, delay)</code></summary>
Taking 0.0133 % of a block.
delegate: AccountIdLookupOf<T>
See [`Pallet::remove_proxy`].
#### remove_proxies - 3

<details><summary><code>remove_proxies()</code></summary>
Taking 0.0129 % of a block.
See [`Pallet::remove_proxies`].