Skip to content

Обзор операций

Операции VIZ Ledger — это атомарные действия изменения состояния, включаемые в транзакции. Каждая операция сериализуется как 2-элементный массив [type_id, object] внутри подписанной транзакции.


Обычные операции

Это инициируемые пользователями операции, которые могут быть транслированы в сеть.

IDОперацияУровень авторизацииСправочник
0vote_operation (устарела)regularКонтент
1content_operation (устарела)regularКонтент
2transfer_operationactive (VIZ) / master (SHARES)Переводы
3transfer_to_vesting_operationactiveПереводы
4withdraw_vesting_operationactiveПереводы
5account_update_operationmaster / activeАккаунты
6validator_update_operationactiveВалидаторы
7account_validator_vote_operationactiveВалидаторы
8account_validator_proxy_operationactiveВалидаторы
9delete_content_operation (устарела)regularКонтент
10custom_operationactive / regularКонтент
11set_withdraw_vesting_route_operationactiveПереводы
12request_account_recovery_operationactiveВосстановление
13recover_account_operationmaster (×2)Восстановление
14change_recovery_account_operationmasterВосстановление
15escrow_transfer_operationactiveЭскроу
16escrow_dispute_operationactiveЭскроу
17escrow_release_operationactiveЭскроу
18escrow_approve_operationactiveЭскроу
19delegate_vesting_shares_operationactiveПереводы
20account_create_operationactiveАккаунты
21account_metadata_operationregularАккаунты
22proposal_create_operationactiveПредложения
23proposal_update_operationvariesПредложения
24proposal_delete_operationactiveПредложения
25chain_properties_update_operationactiveВалидаторы
35committee_worker_create_request_operationregularКомитет
36committee_worker_cancel_request_operationregularКомитет
37committee_vote_request_operationregularКомитет
43create_invite_operationactiveИнвайты
44claim_invite_balance_operationactiveИнвайты
45invite_registration_operationactiveИнвайты
46versioned_chain_properties_update_operationactiveВалидаторы
47award_operationregularНаграды
50set_paid_subscription_operationactiveПодписки
51paid_subscribe_operationactiveПодписки
54set_account_price_operationmasterРынок аккаунтов
55set_subaccount_price_operationmasterРынок аккаунтов
56buy_account_operationactiveРынок аккаунтов
58use_invite_balance_operationactiveИнвайты
60fixed_award_operationregularНаграды
61target_account_sale_operationmasterРынок аккаунтов
64set_reward_sharing_operationactiveВалидаторы
66pm_oracle_register_operationactiveПрогнозные рынки
67pm_oracle_update_operationactiveПрогнозные рынки
68pm_create_market_operationactiveПрогнозные рынки
69pm_oracle_accept_market_operationactiveПрогнозные рынки
70pm_place_bet_operationactiveПрогнозные рынки
71pm_commit_bet_operationactiveПрогнозные рынки
72pm_reveal_bet_operationactiveПрогнозные рынки
73pm_cancel_bet_operationactiveПрогнозные рынки
74pm_add_liquidity_operationactiveПрогнозные рынки
75pm_withdraw_liquidity_operationactiveПрогнозные рынки
76pm_resolve_market_operationactiveПрогнозные рынки
77pm_no_contest_operationactiveПрогнозные рынки
78pm_dispute_create_operationactiveПрогнозные рынки
79pm_dispute_vote_operationregularПрогнозные рынки
80pm_dispute_resolve_operationactiveПрогнозные рынки
81pm_transfer_position_operationactiveПрогнозные рынки
82pm_lazy_deposit_operationactiveПрогнозные рынки
83pm_lazy_withdraw_operationactiveПрогнозные рынки
91pm_leverage_open_operationactiveПрогнозные рынки
92pm_leverage_close_operationactiveПрогнозные рынки
93pm_leverage_convert_operationactiveПрогнозные рынки
98pm_dispute_oracle_respond_operationactiveПрогнозные рынки
99pm_unban_operationactiveПрогнозные рынки

ID — это фиксированный индекс в едином operation-варианте цепи (только добавление). Пропуски в этой таблице — виртуальные операции (ниже), чередующиеся по ID — например, 62–63, 65, 84–90, 94–97, 100.


Виртуальные операции

Виртуальные операции генерируются самим блокчейном во время обработки блоков. Они никогда не транслируются пользователями — они появляются в истории аккаунта и данных блоков исключительно в информационных целях.

IDОперацияТриггерСправочник
26author_reward_operationВыплата за контентВиртуальные операции
27curation_reward_operationВыплата за контентВиртуальные операции
28content_reward_operationВыплата за контентВиртуальные операции
29fill_vesting_withdraw_operationСрабатывание интервала выводаВиртуальные операции
30shutdown_validator_operationДеактивация валидатораВиртуальные операции
31hardfork_operationАктивация хардфоркаВиртуальные операции
32content_payout_update_operationОбновление выплаты за контентВиртуальные операции
33content_benefactor_reward_operationВыплата за контентВиртуальные операции
34return_vesting_delegation_operationЗавершение периода возврата делегированияВиртуальные операции
38committee_cancel_request_operationИстечение заявки комитетаВиртуальные операции
39committee_approve_request_operationОдобрение заявки комитетаВиртуальные операции
40committee_payout_request_operationОбработка выплаты комитетаВиртуальные операции
41committee_pay_request_operationОплата работнику комитетаВиртуальные операции
42validator_reward_operationПроизведён блокВиртуальные операции
48receive_award_operationПолучена наградаВиртуальные операции
49benefactor_award_operationНаграда с бенефициаромВиртуальные операции
52paid_subscription_action_operationОплата подпискиВиртуальные операции
53cancel_paid_subscription_operationОтмена/истечение подпискиВиртуальные операции
57account_sale_operationПродан аккаунтВиртуальные операции
59expire_escrow_ratification_operationИстёк дедлайн эскроуВиртуальные операции
62bid_operationСделана ставка на аукционеВиртуальные операции
63outbid_operationПеребитая ставка на аукционеВиртуальные операции
65stakeholder_reward_operationВыплата reward-sharing участникуВалидаторы
84pm_batch_settle_operationРассчитана граница batch-эпохиПрогнозные рынки
85pm_commit_forfeit_operationEscrow commit-reveal форфейтнут (не раскрыт)Прогнозные рынки
86pm_auto_payout_operationРынок рассчитан (порыночный маркер выплаты)Прогнозные рынки
87pm_dispute_finalize_operationПодсчитано голосование комитетаПрогнозные рынки
88pm_dispute_auto_close_operationАнти-фриз авто-закрытие спораПрогнозные рынки
89pm_oracle_missed_penalty_operationОракул пропустил дедлайн разрешенияПрогнозные рынки
90pm_lazy_recall_operationШаг поэтапного отзыва lazy-пулаПрогнозные рынки
94pm_leverage_liquidate_operationПлечевая позиция ликвидированаПрогнозные рынки
95pm_leverage_resolve_operationПлечевая позиция рассчитана на резолюцииПрогнозные рынки
96pm_market_accepted_operationРынок запущен (оракул принял / self / авто)Прогнозные рынки
97pm_payout_operationПаримутюэль-выплата на беттераПрогнозные рынки
100pm_ban_expired_operationИстёк временный бан оракула/создателяПрогнозные рынки

Построение транзакции

json
{
  "ref_block_num": 12345,
  "ref_block_prefix": 678901234,
  "expiration": "2024-01-15T12:01:00",
  "operations": [
    [2, { "from": "alice", "to": "bob", "amount": "1.000 VIZ", "memo": "" }]
  ],
  "extensions": [],
  "signatures": ["1f2a3b..."]
}
  • ref_block_num = head_block_number & 0xFFFF
  • ref_block_prefix = байты 4–7 block_id в виде little-endian uint32
  • expiration = текущее UTC-время + TTL (рекомендуется не более 60 секунд)
  • Подпись: sha256(chain_id || serialized_tx) → компактная ECDSA-подпись secp256k1

См. также: Типы данных, Виртуальные операции, JSON-RPC API.